css设置图片透明度图片上面的文字不变
时间: 2023-10-10 09:06:07 浏览: 98
可以使用CSS中的伪元素 ::before 或 ::after 来实现这个效果。具体步骤如下:
1. 将图片作为背景,设置 opacity 属性来实现透明度。
2. 通过伪元素 ::before 或 ::after 来添加一个与图片大小相同的透明层。
3. 将文字作为伪元素的内容,并设置其样式。
4. 使用 position 属性来将伪元素定位到图片上,并调整 z-index 属性来使文字显示在图片上面。
以下是示例代码:
HTML:
```html
<div class="container">
<div class="image-container">
<img src="your-image-url" alt="your-image-description">
</div>
<div class="text-container">
<p>Your text here</p>
</div>
</div>
```
CSS:
```css
.container {
position: relative;
}
.image-container {
width: 100%;
height: auto;
background: url(your-image-url) center/cover no-repeat;
opacity: 0.5;
}
.text-container {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
z-index: 2;
}
.text-container p {
color: #fff;
font-size: 24px;
font-weight: bold;
}
.image-container::before {
content: "";
display: block;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: transparent;
z-index: 1;
}
```
这样就可以实现图片透明度不影响文字的效果了。
阅读全文