Tôi sẽ sử dụng PNG trong suốt có chiều rộng chính xác như hộp chứa hộp màu trắng của nó.
http://jsfiddle.net/lollero/mAQe4/
Tôi cũng đã chọn để sử dụng một lặp lại hình ảnh PNG trong suốt cho nền của hộp màu trắng để tránh bất kỳ sự khác biệt với tính minh bạch giữa các văn bản hình ảnh và bình chứa.
Ngoài ra, bạn có thể sử dụng opacity: o.8
trong #content
và #footer
HTML:
<div id="content-wrap">
<div id="content">
Lorem ipsum dolor sit amet.
</div>
<img id="the-image" src="http://img220.imageshack.us/img220/4051/62739191.png" alt="" />
<div id="footer">
Lorem ipsum dolor sit amet.
</div>
</div>
CSS:
html {
background: url('http://placekitten.com/850/850') repeat top left;
}
#content-wrap {
width: 200px;
margin: 0px auto;
}
#content,
#footer {
background: url('http://img267.imageshack.us/img267/2733/21138012.png')repeat top left;
}
#the-image { width: 100%; display: block; }
Một lợi thế rất lớn của phương pháp này hơn những người khác là nó đảm bảo trình duyệt rộng khả năng tương thích. Các phiên bản Firefox, Safari, Chrome và IE mới nhất của ngày hôm nay tất cả sẽ xử lý theo cách tương tự khi sử dụng PNG trong suốt. Ngoài ra, nếu khả năng tương thích trình duyệt IE là một ưu tiên, có nhiều cách để làm việc này cho như xa trở lại như IE6:
Đừng nghĩ rằng có thể chỉ với HTML và CSS. Bạn có thể đạt được nó với SVG, hoặc Canvas, nhưng điều đó tất nhiên sẽ yêu cầu một thư viện Javascript. – Nadh
Xác định "pure html 5". – BoltClock
Bạn có một ý tưởng về giải pháp html5 "không thuần khiết" không? Ngay cả với SVG và Canvas, tôi không thấy bất cứ điều gì thực tế một cách tổng quát. –