展会信息港展会大全

clearfix清除浮动闭合容器之:after与:before
来源:互联网   发布日期:2016-03-25 16:08:42   浏览:2985次  

导读:本文章来给各位同学介绍关于clearfix清除浮动闭合容器之:after与:before,希望此教程对各位同学会有所帮助哦。在平常我们coding时候经常会发生子元素浮动而引起父级元素不能完...

本文章来给各位同学介绍关于clearfix清除浮动闭合容器之:after与:before,希望此教程对各位同学会有所帮助哦。

在平常我们coding时候经常会发生子元素浮动而引起父级元素不能完全撑开的状况,

可能很多朋友给父级元素用overflow:hidden简单粗暴的解决,但这种方式有弊端,一是在IE6下不能完美解决,二是假如在该模块有定位的层就有定位层显示不完整的可能。

也有可能有些朋友是在父级元素里最后添加一个<div style=”clear:both”></div>来解决这个问题,但这样我们的HTML代码里就多了些冗余的代码且从语义化角度来看这也是不合理的。

伪类:before与:after

:before 伪元素在元素之前添加内容

:after 伪元素在元素之后添加内容

需解决问题:在父级元素里最后添加一个

解决问题代码:

代码如下

复制代码

.clearfix:after {content: ".";display: block;height: 0;clear: both;visibility: hidden;}

* html .clearfix{zoom:1;} /* IE6 */

*+html .clearfix{zoom:1;} /* IE7 */

最后,给不能完全闭合的父级元素加上.clearfix类

下面创建一个.clearfix类来完美解决这个问题

代码如下:

代码如下

复制代码

.clearfix:after {content: ".";display: block;height: 0;clear: both;visibility: hidden;}

* html .clearfix{zoom:1;} /* IE6 */

*+html .clearfix{zoom:1;} /* IE7 */

还可以:

代码如下

复制代码

clearfix:before, .clearfix:after {

content:"";

display:table;

}

.clearfix:after{

clear:both;

overflow:hidden;

}

.clearfix{

*zoom:1;

}

赞助本站

人工智能实验室

相关热词: 开发 编程 android

AiLab云推荐
推荐内容
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港