网站首页 美食营养 游戏数码 手工爱好 生活家居 健康养生 运动户外 职场理财 情感交际 母婴教育 生活知识 知识问答

清除浮动的一些总结

时间:2024-10-13 18:45:31

1、清除浮动主要有两类方法。1.对父元素中最后一个元素清除浮动。通常为了不影响布局,我们会在浮动元素末尾添加一个空的标签对。然后设置属性为clear:both。例如 <div style=”clear:both”></div>。这种方法兼容性好,但是会增加一些无意义的标签,尤其是页面中大量用到清除浮动时候。

2、还有一种替代方案,骒貉缭塄原理是一样的。.clearfix:after {content:"."; display:block; height:0; visibility:hidd髫潋啜缅en; clear:both;}.clearfix { *zoom:1; }解释一下,在父元素上添加.clearifix样式后,会在末尾添加一个伪元素,内容为”.“ 拥有清除浮动的属性。这样就和上一种方一样,但是没有增加额外的标签。下面一行是为了兼容ieliu浏览器。因为ie不支持:after。所以就要采取我们接下来要介绍的另一类方法。

3、触发父元素的BFC,支持BFC的浏览器(IE8+,firefox,chrome,safari),不支持BFC浏览器(ie6,ie7)通过触发hasLayout实现类似效果。至于他们具体是什么,请自行百度,因为我现在也不是很清楚。但是触发后,产生的效果是我们想要的。那么触发条件是什么呢?下面介绍一下部分属性。

4、触发BFC的属性float 除了none以外的值overflow 除了visible 以外的值(hidden,auto,scroll )display (table-cell,table-caption,inline-block)position(absolute,fixed)fieldset元素

5、触发hasLayoutposition: ab衡痕贤伎solutefloat: left|rightdisplay: inline-blockw足毂忍珩idth: 除 “auto” 外的任意值height: 除 “auto” 外的任意值 zoom: 除 “normal” 外的任意值也就是说父元素上有这些属性的时候,就不需要清除浮动了。但是这些属性通常会影响到布局,所以我们经常会用不影响布局的zoom:1,来触发ie的hasLayout。

6、综上我们推荐用.clearfix的方法。当然这里只是一个总结,还有一些其他的方法可以用,或者可以不使用float布局。

© 2026 五度知识库
信息来自网络 所有数据仅供参考
有疑问请联系站长 site.kefu@gmail.com