CSS - 使用伪元素作为图像蒙版



我在页面上显示图像,我希望添加一个蒙版来实现特定的边框和角落效果。

为此,我希望通过以下方式使用伪元素:

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;
    }
}

请注意,伪类也是一个块元素。

相关内容

  • 没有找到相关文章

最新更新