以下代码用于清除浮动引起的高度塌陷问题。clearfix:before{内容:".";显示:块;高度:0;明确:两者;visibility:hidden;}问题一:上面的代码能否实现浮动问题?答:不能。因为clear属性只能控制元素本身和之前浮动元素的关系。在这个例子中,:before伪元素明确地放在了所有子元素之前,所以clear属性不会对后面的浮动元素产生任何影响。clear属性的官方定义可以在CSS文档中查看。那么应该如何修改呢?将:before替换为:after。最终代码如下:.clearfix:after{content:".";显示:块;高度:0;明确:两者;visibility:hidden;}问题二:content属性的内容是否可以改为空content:'';?答:是的。因为高度:0;和visibility:hidden设置。如果内容:'';已设置,可以height:0;和可见性:隐藏被删除?当然可以,因为块元素没有内容就没有高度。修改后的代码如下:.clearfix:after{content:"";显示:块;clear:both;}问题三:display属性的内容可以改成inline或者inline-block吗?答:不是。我们需要了解float属性的初衷——让文字显示在图片周围。翻译成另外一句话:内联级别的元素会显示在浮动元素周围。那么为什么要显示:块;可以解决高塌问题。因为clear属性的意思是不允许元素本身与浮动元素的边框相邻。如果块级元素与块级元素的边界不相邻,则只能显示在下一行。也是为了换行父元素拉伸到高度,上面的代码正式解决了高度塌陷的原理。问题四:下面的div元素会不会出现高度塌陷的问题?<样式>.clearfix::after{内容:“”;显示:块;清除:左;}img{浮动:正确;}
