我在页面上显示图像,我希望添加一个蒙版来实现特定的边框和角落效果。
为此,我希望通过以下方式使用伪元素:
img
{
height: 58px;
left: 0;
position: absolute;
top: 0;
width: 58px;
z-index: 1;
&:after
{
background-image: url(images/frame.gif);
content: " ";
height: 58px;
left: 0;
position: absolute;
top: 0;
width: 58px;
z-index: 2;
}
}
但是面具图像从未出现过。我还尝试添加负的左边距和上边距,以将伪元素"拉"回<img>
但仍然没有任何内容。
我的 CSS 中是否存在明显的错误,或者问题在于伪元素的固有限制?
默认情况下,img 标签是一个内联元素,它不是添加伪类后的容器。我建议使用以下代码:
div.container {
img {
display: block;
height: 58px;
left: 0;
position: absolute;
top: 0;
width: 58px;
z-index: 1;
}
&:after {
display: block;
background-image: url(images/frame.gif);
content: " ";
height: 58px;
left: 0;
position: absolute;
top: 0;
width: 58px;
z-index: 2;
}
}
请注意,伪类也是一个块元素。