- 伪元素:(css3中将所有伪元素前变成了两个冒号,即::first-letter、::first-line、::before、::after、::selection。目的是为了区分伪元素与伪类。对于IE6~IE8,仅支持单冒号写法)
1.::first-letter :用来选择文本块的第一个首字母。
2.::first-line :用来匹配元素的第一行文本。
3.::befor 和 ::after :创建一个作为当前元素子元素的伪元素。常通过content
属性来为一个元素添加修饰性的内容。 此元素默认为行内元素。:before和:after伪元素指定了位于一个元素的文档树内容之前和之后的内容的位置。
a. :before和:after伪元素会从文档树中它们附着的元素上继承所有可继承的属性。不可继承的属性,属性值为初始值。
b. :before和:after伪元素会与其它盒相互影响,就像它们是插在其相关元素里的真实元素一样。
c. 本规范并没有完整定义:before和:after伪元素对可替换元素(例如HTML中的IMG)的相互影响。这会在将来的规范中详细定义。(这里的规范指CSS2.1)。
d. 下方的代码,使用伪元素清除浮动。(这里有个问题是,为什么要设置visibility、font-size、height、zoom这几个属性。我在chrome浏览器下去掉这几个属性后,仍然清除了浮动)
.clearfix:after { visibility:hidden; display:block; font-size:0; content:" "; clear:both; height:0; } .clearfix { zoom:1; }
4. ::selection :用来匹配突出显示的文本(被选中的文本)。该伪元素仅接受两个属性:background与color。仅IE9支持,FF需加上-moz前缀,webkit内核浏览器支持。