CSS中clear属性的both、left和right浅析

前端开发中,我们知道clear属性有none、both、left和right四个值。

它们的具体含义如下:

  • none:允许两边都可以有浮动对象;
  • both:不允许有浮动对象;
  • left:不允许左边有浮动对象;
  • right:不允许右边有浮动对象。

这里主要讨论both、left和right三个值。

要用到的CSS代码如下:

    <style type="text/css">
        .container{
            margin: 30px auto;
            width:600px;
            height: 300px;
        }
        .p{
            border:solid 3px #a33;
        }
        .c{
            width: 100px;
            height: 100px;
            background-color: #060;
            margin: 10px;
        }
        .fl{
            float:left;
        }
        .fr{
            float:right;
        }
        .cl{
            clear:left;
        }
        .cr{
            clear:right;
        }
        .both{
            clear:both;
        }
    </style>

一、普通浮动,无清除浮动,外容器塌陷:

DOM结构:

    <div class="container">
        <div class="p">
            <div class="c fl"></div>
            <div class="c fl"></div>
            <div class="c fl"></div>
        </div>
    </div>

效果图:

二、左浮动,clear:both清除浮动:

DOM结构:

    <div class="container">
        <div class="p">
            <div class="c fl">float left 1</div>
            <div class="c fl">float left 2</div>
            <div class="c both">clear both</div>
        </div>
    </div>

效果图:

三、右浮动,clear:both清除浮动:

DOM结构:

    <div class="container">
        <div class="p">
            <div class="c fr">float right 1</div>
            <div class="c fr">float right 2</div>
            <div class="c both">clear both</div>
        </div>
    </div>

效果图:

四、左右浮动,clear:both清除浮动:

DOM结构:

    <div class="container">
        <div class="p">
            <div class="c fl">float left</div>
            <div class="c fr">float right</div>
            <div class="c both">clear both</div>
        </div>
    </div>

效果图:

五、左浮动,清除左浮动,左浮动,未清除浮动的塌陷:

DOM结构:

    <div class="container">
        <div class="p">
            <div class="c fl">float left1</div>
            <div class="c cl">clear float left</div>
            <div class="c fl">float left2</div>
        </div>
    </div>

效果图:

六、右浮动,清除右浮动,左浮动,未清除浮动的塌陷:

DOM结构:

    <div class="container">
        <div class="p">
            <div class="c fr">float right</div>
            <div class="c cr">clear float right</div>
            <div class="c fl">float left</div>
        </div>
    </div>

效果图:

时间: 2024-10-16 19:42:18

CSS中clear属性的both、left和right浅析的相关文章

css中clear属性的认识

今天在看博客园的页面布局时发现有不少空白的div只有css属性:clear:both. 然后去W3C文档里和百度补脑了一下,总结如下: 这是之前我写的一段测试代码: <div style="height: auto;"> <div id="map"></div> <div style="float: left;width: 50%"> <div id="searchResult&qu

详解CSS中clear属性both、left、right值的含义

前几天一朋友在群里问clear:left的意思,我以为是简单的清除浮动问题,就让他百度"清除浮动",导致中间有点小误会.后来我按照他写的DEMO,发现我自己也没完全理解clear:left和clear:right的意思.特别看了下手册,和写了几个DEMO,经过群里其他人指导,总结如下,希望对其他人能有点帮助. clear的值有四个 none:允许两边都可以有浮动对象: both:不允许有浮动对象: left:不允许左边有浮动对象: right:不允许右边有浮动对象. 老实说,我没真正理

div+css中clear用法

原文:div+css中clear用法 一开始用clear属性,只是跟float相对使用,今天看视频的时候还是不大明白,查了下资料原来是这样的哦,看咯. clear属性值有四个clear:both|left|right|none; 作用:该属性的值指出了不允许有浮动对象的边. 这个属性是用来控制float属性在文档流的物理位置的. 当属性设置float(浮动)时,他所在的物理位置已经脱离文档流了,但是大多时候我们希望文档流能识别float(浮动),或者是希望float(浮动)后面的元素不被floa

CSS中transform 属性

CSS中transform 属性允许你修改CSS可视化模型的坐标空间.通过transform,可以让元素进行移动(translate).旋转(rotate).缩放(scale).倾斜(skew). 如果该属性有一个非none值, 将会产生一个层叠上下文. 在这种情况下 对象将作为它包含的 position: fixed 元素的包含块(a containing block). 初始值 none 适用元素 transformable elements 是否是继承属性 否 Percentages re

深入理解css中position属性及z-index属性

深入理解css中position属性及z-index属性 在网页设计中,position属性的使用是非常重要的.有时如果不能认识清楚这个属性,将会给我们带来很多意想不到的困难. position属性共有四种不同的定位方法,分别是static.fixed.relative.absolute.最后将会介绍和position属性密切相关的z-index属性. 第一部分:position: static static定位是HTML元素的默认值,即没有定位,元素出现在正常的流中,因此,这种定位就不会收到t

css中position属性(absolute/relative/static/fixed)

css中position属性(absolute/relative/static/fixed): position:static   无特殊定位,是html元素默认的定位方式,对象遵循正常文档流.top,right,bottom,left等属性不会被应用. position:relative 对象遵循正常文档流,相对的是它原本在文档流中的位置而进行的偏移,但将依据top,right,bottom,left等属性在正常文档流中偏移位置.而其层叠通过z-index属性定义. position:abso

css中float属性和position

css中float属性: float 属性定义元素在哪个方向浮动.以往这个属性总应用于图像,使文本围绕在图像周围,不过在 CSS 中,任何元素都可以浮动.浮动元素会生成一个块级框,而不论它本身是何种元素. 如果浮动非替换元素,则要指定一个明确的宽度:否则,它们会尽可能地窄. 注释:假如在一行之上只有极少的空间可供浮动元素,那么这个元素会跳至下一行,这个过程会持续到某一行拥有足够的空间为止. 默认值: none 继承性: no 版本: CSS1 JavaScript 语法: object.styl

CSS中Position属性

也许你看到这个标题觉得很简单,确实这是一篇关于CSS中Position属性基础知识的文章,但是关于Position的一些细节也许你不了解. 1.简介 position有五个属性: static | relative | absolute | fixed | inherit static 和 inherit : 没什么值得介绍的. relative : 相对于元素自身的定位. absolute :相对于包含块的定位. fixed : 相对于窗口的定位. 2.包含块 包含块就是 top | righ

DIV css中cursor属性详解-鼠标移到图片变换鼠标形状 (转)

css中cursor属性详解-鼠标移到图片变换鼠标形状 语法: cursor : auto | all-scroll | col-resize| crosshair | default | hand | move | help | no-drop | not-allowed | pointer | progress | row-resize | text | vertical-text | wait | *-resize | url ( url )  取值: auto  :   默认值.浏览器根