首页 > Web开发 > 详细

css中clearfix清除浮动的用法及其原理示例介绍

时间:2015-11-25 21:25:29      阅读:290      评论:0      收藏:0      [点我收藏+]
clearfix的定义:

复制代码
代码如下:

.clearfix:after {}{
content: "."; /**//*内容为“.”就是一个英文的句号而已。也可以不写。*/
display: block; /**//*加入的这个元素转换为块级元素。*/
clear: both; /**//*清除左右两边浮动。*/
visibility: hidden; /**//*可见度设为隐藏。注意它和display:none;是有区别的。visibility:hidden;仍然占据空间,只是看不到而已;*/
line-height: 0; /**//*行高为0;*/
height: 0; /**//*高度为0;*/
font-size:0; /**//*字体大小为0;*/
}
.clearfix {}{ *zoom:1;} /**//*这是针对于IE6的,因为IE6不支持:after伪类,这个神奇的zoom:1让IE6的元素可以清除浮动来包裹内部元素。*/

.clearfix的原理:
1、在IE6, 7下zoom: 1会触发hasLayout,从而使元素闭合内部的浮动。
2、在标准浏览器下,.clearfix:after这个伪类会在应用到.clearfix的元素后面插入一个clear: both的块级元素,从而达到清除浮动的作用。
3、在需要清除浮动的时候,只要写一个.clearfix就行了,然后在需要清浮动的元素中 添加clearfix类名就好了。
.clearfix的实例

复制代码
代码如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>清楚浮动</title>
<style>
*{padding:0px; margin:0px;}
ul{border:3px solid #F00;}
ul li{width:50px; height:50px; float:left; background-color:#00F; list-style:none; margin-right:10px;}
/*
---------------------------------------------
采用伪类:after进行后续空制的高度位零的伪类层清除
---------------------------------------------
*/
.clearfix_after{zoom:1;}
.clearfix_after:after{
content:"";
display:block;
height:0;
line-height:0;
clear:both;
visibility:hidden;
}
</style>
</head>
<body>
<ul class="clearfix_after">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</body>
</ html>

参考资料: css用clearfix清除浮动 http://www.jb51.net/css/32677.html

css中clearfix清除浮动的用法及其原理示例介绍

原文:http://www.jb51.net/css/115007.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!