CSS - 伪元素 - ::before



CSS 中的 ::before 伪元素用于在具有 content 属性的选定元素之前添加内容。它允许您插入文本、图像或装饰元素,而无需修改 HTML 结构。默认情况下,它是内联的。

语法


selector::before {
   /* ... */
}
不建议使用 ::before 伪元素添加内容,因为屏幕阅读器可能无法访问它。

CSS ::before 示例

下面是一个使用 ::before 伪元素的简单示例:


<html>
<head>
<style>
   p {
      color: royalblue;
      font-size: 1.5em;
      border: 2px solid black;
      text-transform: lowercase;
   }
   p::before {
      content: url(images/logo.png) ;
      position: relative;
   }
</style>
</head>
<body>
   <div>
      <p>pseudo-element ::before</p>
   </div>
</body>
</html> 

这是另一个示例,其中显示了 ::before 伪元素的用法:


<html>
<head>
<style>
   #flavor {
      display: block;
      font-size: 18px;
      color: black;
	 	 	 width: 500px;
	 	}

	 	li {
	 	 	 padding: 10px 16px;
	 	 	 font-size: 16px;
	 	 	 color: black;
	 	 	 background-color: #fff;
	 	 	 margin-top: 25px;
	 	 	 width: 300px;
	 	 	 transition: all 0.3s ease;
	 	}

	 	li::before {
	 	 	 content: url(images/smiley.png);
	 	}
</style>
</head>
<body>
	 	<form>
	 	 	 <ul id="flavor">
	 	 	 	 	Ice cream Flavors:
	 	 	 	 	<li> Cookie dough</li>
	 	 	 	 	<li> Pistachio</li>
	 	 	 	 	<li> Cookies & Cream</li>
	 	 	 	 	<li> Cotton Candy</li>
	 	 	 	 	<li> Lemon & Raspberry Sorbet</li>
	 	 	 </ul>
	 	</form>
</body>
</html>