CSS2.1 伪选择器::after
和::before
允许向页面添加文本内容。例如 :
CSS
p:after { content:' Batman!' }
HTML
<p>Na Na Na Na Na Na</p>
在浏览器中输出
Na Na Na Na Na Na Batman!
我的问题,使用相同的 HTML 源代码,是为什么这段CSS
p { content:'My hero is' }
p:after { content:' Batman!' }
不输出这个
My hero is Batman!
而是输出这个?
Na Na Na Na Na Na Batman!
关于内容属性的 w3c 规范:http: //www.w3.org/TR/CSS21/generate.html#propdef-content
答案- 我正在查看 CSS2.1 规范。CSS3 规范表明即使没有伪选择器::after
也是可能的。::before
但并不是每个浏览器都实现了它。
- 铬 20.0.1132.57:否
- Opera 12.00 r1467:是的
- Safari 5.1.7 (7534.57.2):否
- IE 8.0.7601:否(甚至没有实现 CSS2 内容属性)