Tôi đang cố gắng tạo lớp phủ màu đồng nhất khớp chính xác với kích thước của hình ảnh và hiển thị văn bản trên lớp phủ đó. Tôi chỉ muốn làm điều này với HTML và CSS, nếu có thể.Lớp phủ văn bản và màu nền trên hình ảnh
Hình ảnh có thể được kích thước bất kỳ, và sẽ được kích thước để phù hợp và tập trung trong container cha của nó. Một cái gì đó như thế này (mà không làm việc):
HTML:
<div class="img-overlay">
<img src="file.jpg">
<div class="overlay">Text will flow...</div>
</div>
CSS:
.img-overlay img {
margin: 0 auto;
max-height: 100%;
}
.overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%
background-color: rgba(255,255,255,0.5);
}
Tôi nghĩ rằng thẻ <figure>
HTML5 có thể giúp được ở đây, nhưng có không đã có nhiều thành công trên mặt trận đó. Sau đây giữ chiều rộng phụ đề được cố định với chiều rộng hình ảnh, nhưng khi tôi cố gắng xóa nó khỏi luồng tài liệu và định vị nó trên hình ảnh, nó sẽ kết thúc ở bên trái của hình ảnh do hình ảnh định tâm qua margin: 0 auto;
.
<figure>
<img src="file.jpg">
<figcaption>Text will flow...</figcaption>
</figure>
bạn vừa phải - quên đặt vị trí của phần tử gốc. duh. – ericsoco