CSS 给图片或背景图片加颜色遮罩

一个div同时设置background-color和background-image的话,color是处于img层下方的,无法实现遮罩效果,所以需要再创建一个div作为其子div,然后设置子div的背景颜色,介绍两种方法:

第一种,代码如下:

css:
.wrap{
    position: relative;
    background: url(i/pic4.jpg) no-repeat;
    -webkit-background-size: 100%;
    background-size: 100%;
}

.warp-mask{
    height:100%;
    width:100%;
    background: rgba(0,0,0,.4);
}
html:
<div class="wrap">
    <div class="wrap-mask"></div>
</div>

 

第二种,通过after伪元素设置,代码如下:

css:
.wrap{
    position: relative;
    background: url(i/pic4.jpg) no-repeat;
    -webkit-background-size: 100%;
    background-size: 100%;
}
.wrap-mask:after{
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    background-color: yellow;
    opacity: 0.2;
    z-index: 1;
    width: 100%;
    height: 100%;
}
html:
<div class="wrap">
    <div class="wrap-mask"></div>
</div>

 

 

https://blog.csdn.net/mr_fzz/article/details/53219367

posted @ 2019-01-18 10:49  格鲁特baby  阅读(1767)  评论(0编辑  收藏  举报