2012-03-04 141 views
0

我試圖讓「div.transbox表」沒有「div.transbox」的不透明度。覆蓋主要的CSS

如果我嘗試從主Transbox CSS中刪除表格,那麼我無法讓表格坐在「div.transbox」之上。

任何幫助非常讚賞

div.transbox 
    { 
    width:1000px; 
    height:1500px; 
    margin-left: auto; 
    margin-right: auto; 
    background-color:#ffffff; 
    border:1px solid black; 
    opacity:0.8; 
    z-index:-1; 
    filter:alpha(opacity=80); /* For IE8 and earlier */ 
    } 

div.transbox p 
    { 
    margin:30px 40px; 
    font-weight:bold; 
    color:#000000; 
    z-index:-1; 
    } 

div.transbox table 
    { 
    margin:30px 40px; 
    font-weight:bold; 
    color:black; 
    background-color:#cccccc; 
    z-index:99; 
    } 
+0

創建[的jsfiddle](http://jsfiddle.net/),所以我們可以嘗試一些解決方案 – 2012-03-04 18:28:17

回答

1

你不能讓子元素「更明顯」當父元素有一個調整opacity

opacity的值範圍從0到1,以及屬性堆棧。在下面的例子中,<p>元件的 「真正的」 不透明度不是0.5,而是0.8 * 0.5 = 0.4:

.transbox { opacity: 0.8; } 
.transbox p { opacity: 0.5; } 
+0

好的,謝謝你清理那個。如果我將它從transbox css中分離出來,我怎樣才能讓它坐在原來的位置? – Samuelofc 2012-03-04 18:21:06

+0

@Samuelofc將'position:relative;'添加到'.transbox',並用'position:absolute; top:0; left:0; width:...;高度:...,其中'...是元素的寬度和高度。雖然有更好的解決方案。現代瀏覽器通過[rgba或hsla]支持半透明顏色(https://developer.mozilla.org/en/CSS/color_value#RGBa_%28red-green-blue-alpha%29_rgba%28R.2CG.2CB.2Ca%例如,圖29)。 – 2012-03-04 18:27:34