伪元素:将特殊的效果添加到某些选择器上。
明确两点:
1 都与选择器相关
2 特殊效果,这两者描述了其他css无法描述的东西
伪类:
:active、:focus、:hover、:link、:visited、:first-child(将特殊的样式添加到元素的第一个子元素)、:lang(允许创作者来定义指定的元素中使用的语言)
这里注意:a标签相关的伪类的顺序::link,:visited,:hover,:active(可以用 love hate 来记忆)
伪元素:
:first-letter(将特殊的样式添加到文本的首字母)、:first-line(将特殊的样式添加到文本的首行)、:before(使用content属性在某元素之前插入某些内容)、:after(在某元素之后插入某些内容)
注意:
对于:before和:after必须配合content属性使用,添加的内容不会改变文档结构,不可复制,仅仅是在CSS渲染层加入,display默认值为inline(尽量用来显示一些修饰性的内容,如图标,也可以用:after清除浮动)
以伪类中的:first-child和伪元素中的:first-letter为例:
:first-child:用于选取属于其父元素的首个子元素的指定选择器。
:first-letter:用于选取指定选择器的首字母。
效果:
如何模拟上述效果? 添加类
<p> <i class="first-child">First</i> <i>Second </i> </p>再看伪元素的效果及模拟:
<p> Hello world </p>效果:
如何模拟上述效果?添加元素
为了区分伪类和伪元素,CSS3明确规定伪类用一个单引号表示,伪元素用一个双引号表示。
由于兼容性问题,单引号表示伪元素仍然可以使用。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) | 黑马程序员IT技术论坛 X3.2 |