我有以下 HTML:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>:before pseudo-class and images</title>
<style type="text/css" media="screen">
img {
display: block;
width: 640pt;
}
img:before {
content: "Test";
}
</style>
</head>
<body>
<img src="http://andreygromov.name/picture/flower/flower4.jpg" alt="Ваза с цветами" />
</body>
</html>
:before 不会出现在图像中,但它会出现在任何 div 中。
为什么?
更新:我在 W3C 中找到了这个解释:
笔记。该规范没有完全定义 :before 和 :after 与替换元素的交互(例如 HTML 中的 IMG)。这将在未来的规范中更详细地定义。
更新 2:
我忘了提 - 我需要用 CSS 可视化图像的“alt”属性。
img:before {
display: block;
content: attr(alt);
background-color: #333;
/* etc. */
}