我们是无法直接给区域透明度的,这样会改变本来的文字等内容的透明度,我们只能通过伪元素来实现。单纯的在CSS中无法直接给背景图片加 opacity 属性,我们可以使用下面的方法来实现仅仅背景透明的效果:
div {
width: 200px;
height: 200px;
display: block;
position: relative;
}
div::after {
content: "";
background: url(image.jpg);
opacity: 0.5;
top: 0;
left: 0;
bottom: 0;
right: 0;
position: absolute;
z-index: -1;
}