当前位置: 首页 > Web前端 > HTML

前端面试题-clearfix(clearfloating)

时间:2023-04-02 14:53:40 HTML

1.浮动的概念浮动框可以向左或向右移动,直到其外边缘接触到包含框或另一个浮动框的边框。由于浮动元素不在文档的正常流中,因此文档正常流中的块框表现得好像浮动元素不存在一样。二、浮动的影响1.浮动会导致父元素的高度塌陷。父元素中有子元素,没有设置父元素的高度。子元素漂浮在父元素中。结果肯定是父元素的高度为0,这也导致了父元素的高度塌陷。浮出文档流,这个问题会对整个页面布局产生很大的影响,如何解决高度塌陷问题,我们需要清除浮出。三、清除浮动1、clear属性的空标签在浮动元素后添加一个空标签

,并在CSS中设置.clear{clear:both;}来清除浮动。原理:添加一个空标签,使用CSS改进的clear:both清除浮动,让父元素自动获取高度优点:简单,代码少,兼容所有浏览器缺点:在页面中添加标签会导致结构混乱建议:不推荐,此方法已过时2.:after伪元素在浮动元素的容器中添加一个clearfix类,然后在该类中添加一个:after伪元素来实现元素并添加一个不可见块元素(Blockelement)清除浮动元素。原理:加一个不可见的空格“/20”或点“.”容器内部元素通过CSS伪元素后,设置clear属性清除浮动。优点:更好的浏览器支持缺点:clearfix类需要添加zoom:1(触发haslayout)以支持IE6和IE7浏览器建议:推荐使用,设置公共类,减少CSS代码阅读更多