CSS實現背景透明,文字不透明(相容各瀏覽器)

Web開發者發表於2011-12-22

在 FF/Chrome 等較新的瀏覽器中可以使用css屬性background-color的rgba輕鬆實現背景透明,而文字保持不透明。而IE6/7/8瀏覽器不支援rgba,只有使用IE的專屬濾鏡filter:Alpha來實現,但是這樣寫法會把文字也變為透明,因此只有在透明容器的子節點(文字節點除外)內設定position:relative才能不繼承其父元素的透明濾鏡,程式碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Web開發者網路 - www.admin10000.com</title>
<style type="text/css">
.warp{ background:#eee url(back.jpg) no-repeat left top; width:440px; height:400px;    border:1px solid #ccc;}
.content { width:180px; height:260px; margin:0px auto; padding:30px 30px; background:rgba(255, 255, 255, 0.6)!important;
filter:Alpha(opacity=60); background:#fff; /* 使用IE專屬濾鏡實現IE背景透明*/ }
.content p{ position:relative;} /*實現IE文字不透明*/
</style>
</head>
<body>
<div class="warp">
<div class="content"><p>Admin10000.com 是WEB開發者學習交流必備網站。Admin10000.com 是WEB開發者學習交流必備網站。Admin10000.com 是WEB開發者學習交流必備網站。Admin10000.com 是WEB開發者學習交流必備網站。Admin10000.com 是WEB開發者學習交流必備網站。Admin10000.com 是WEB開發者學習交流必備網站。</p></div>
</div>
</body>
</html>
 

以上程式碼在IE6.0+/FF3.0+/Opera10+/Chrome/Safari 均測試通過

相關文章