[关闭]
@xunuo 2021-06-21T09:17:47.000000Z 字数 620 阅读 1624

浮动元素引起的问题和解决办法(清除浮动)

前端




1.css样式clear:both
可以使用CSS中的clear:both;在最后一个浮动元素后面添加属性为clear:both;的元素,如:

  1. <div style="clear:both;"></div>

优点:简单,代码少,浏览器兼容性好。
缺点:需要添加大量无语义的html元素,代码不够优雅,后期不容易维护。


2.给父元素添加clear:both;属性的:after伪元素,其实现如下:

  1. .clearfix:after
  2. {
  3. content: "";
  4. display: block;
  5. height: 0;
  6. clear: both;
  7. visibility: hidden;
  8. }
  9. .clearfix
  10. {
  11. display: inline-block;
  12. } /* for IE/Mac */

3.给父元素设置overflow属性:
在添加overflow属性后,浮动元素又回到了容器层,把容器高度撑起,达到了清理浮动的效果。

  1. .clearfix{
  2. overflow: auto;
  3. /*overflow: hidden;也可以*/
  4. }

4.给父元素添加浮动
但是这样父元素也会有浮动造成影响,所以最好别用。。。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注