css中::before是什么意思?

比如:

<h3 class="capsule">
   ::before
    "
        Thiosemicarbazone organocatalysis: tetrahydropyranylation and 2-deoxygalactosylation reactions and kinetics-based mechanistic investigation
    "
</h3>


爬虫好像会忽略掉::before

爬虫爬取h3,然后正则"(<h3[^>]+>)|(<\/h3>)",会出现:

Thiosemicarbazone organocatalysis: tetrahydropyranylation and 2-deoxygalactosylation reactions and kinetics-based mechanistic investigation    >

莫名其妙多出一个>

不知什么原因?

阅读 7.8k
3 个回答

::before和::after是伪元素。伪元素就是文档中若有实无的元素。伪元素实际上是替我们增加了无形的标签。
可用于在特定元素前面或后面添加特殊内容。以下标记:

<p class="age">25</p>

应用如下样式:

p.age::befor{
    content: "Age: ";
}
p.age::after{
    content: " years.";
}

可以得到:Age: 25 years
也可以在应用他们的元素外面附着一个动态的新元素,从而得到一个有趣的布局效果。

爬虫爬到的是 HTML 页面源代码吧,不可能有 ::before,那是写在 CSS 里的。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题