以下代码可以这么解释:
.clearfix:after { <----在类名为“clearfix”的元素内最后面加入内容;
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的元素可以清除浮动来包裹内部元素。具体意思的话,不用深究,听说微软的工程师自己都无法解释清楚。height:1%效果也是一样。
整段代码就相当于在浮动元素后面跟了个宽高为0的空div,然后设定它clear:both来达到清除浮动的效果。
之所以用它,是因为,你不必在html文件中写入大量无意义的空标签,又能清除浮动。
话说回来,你这段代码真是个累赘啊,这样写不利于维护。
只要写一个.clearfix就行了,然后在需要清浮动的元素中 添加clearfix类名就好了。
如:
<div class="head clearfix"></div>
解说完毕,希望对你有帮助。
css中的vertical-align 属性设置元素的垂直对齐方式,可能的值:baseline默认。元素放置在父元素的基线上。
sub垂直对齐文本的下标。
super垂直对齐文本的上标
top把元素的顶端与行中最高元素的顶端对齐
text-top把元素的顶端与父元素字体的顶端对齐
middle把此元素放置在父元素的中部。
bottom把元素的顶端与行中最低的元素的顶端对齐。
text-bottom把元素的底端与父元素字体的底端对齐。
%使用 "line-height" 属性的百分比值来排列此元素。允许使用负值。
inherit规定应该从父元素继承 vertical-align 属性的值。
如下代码即可实现垂直对其:
.img{vertical-align:bottom}
.input{vertical-align:bottom}
<p>
<img class="img" border="0" src="/i/eg_cute.gif" />
<input class="input" />
</p>
<style>
/*
由于没有看到选项,只好这么回答。id选择器以 "#" 来定义。
参考资料(w3school.com.cn)
具体如下:
*/
#idname{declaration}
</style>
<element id="idname"/>