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

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

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。