[摘要]本篇文章给大家分享一篇关于css中伪元素::before和::after的三个用法,有需要的朋友可以参考一下。对于:: before和::after的伪元素,在上一篇文章中使用css中:after伪...
本篇文章给大家分享一篇关于css中伪元素::before和::after的三个用法,有需要的朋友可以参考一下。
对于:: before和::after的伪元素,在上一篇文章中使用css中:after伪元素来创建了一个很好的叠加效果。但是除了这个,他们还有很多其他的用途。这篇文章将给大家介绍一下::before和::after的其他三个用法。
首先我们来简单看一下伪元素是如何工作的。
关于使用:: after和:: before的注意事项
当且仅当它们具有content属性值时,浏览器才会将这些元素呈现为“生成的内容” 。该值可以设置为空字符串:content: "";。
当浏览器将此元素插入DOM时,它会将其插入到用于选择器的元素中。这是规范中的定义:
:: before表示在原始元素的实际内容之前表示一个可设置样式的子伪元素
:: after在原始元素的实际内容之后立即表示一个可设置样式的子伪元素。
默认情况下,此新元素将是内联元素。将元素插入DOM后,可以像修改其他元素一样对其进行修改。这给了我们很多控制权来获得各种。
重要说明:并非所有浏览器/屏幕阅读器组合都能读取您放置在content伪元素中的内容。这应该只用于文本元素。应始终将真实内容添加到页面的标记中。
在某些类型的链接旁边添加图标
如果您想为用户提供有关链接的更多可视信息,可以使用:: after添加图标而不添加标记。
将“外部链接”图标添加到非绝对链接的链接处。
a[href^="http"]::after {
background-image: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/161359/open-in-new.svg);
background-size: contain;
content:"";
display: inline-block;
vertical-align: middle;
width: 1em;
height: 1em;
}