2009-08-09 55 views
0

我剛剛開始建立一個網站,只是充實了CSS。IE臭蟲 - 背景顏色和位置

兩個問題:

  1. 我使用RGBA得到一個透明的背景,並使用一個透明的PNG在舊的瀏覽器來模擬此。我使用的級聯是這樣的:

    rule { 
        background: url(/media/img/white_0.9_pixel.png); 
        background: rgba(255, 255, 255, 0.9); 
    } 
    

在IE瀏覽器這樣的背景下不覆蓋整個它們應用到...任何想法,爲什麼部分?

  1. 下拉菜單在IE中放置不正確。我將它定位絕對,但增加了一個保證金,將它推到Webkit的正確位置 - 猜測這是對齊下拉列表的錯誤方法,並且它不適用於所有瀏覽器。有什麼建議嗎?

非常感謝 - 在這裏寫下問題可以幫助我思考!

鏈接到網站:http://bit.ly/11GGCx

回答

1

哪個版本的IE表現出的問題?

  1. 與許多IE錯誤一樣,嘗試給layout添加不正確渲染背景的元素。

  2. 如果不指定絕對定位元素的「左」屬性,則IE很少會生成所需的值。根據CSS 2.1規範,「left」應該設置爲static position,但瀏覽器可以猜測這個位置,所以最好是明確的。標準方法是給菜單項相對定位,爲每個子菜單創建一個containing block,併爲子菜單設置「頂」和「左」。

    .nav li { 
        position: relative; 
        /* note: don't set a box offset (e.g. "left") here */ 
    } 
    .nav ul { 
        position: absolute; 
        top: 1em; 
        left: 0; 
    } 
    
0

你指定了background-repeat?

0

你用CSS不透明概念試過嗎?

嘗試下面的代碼。

rule { 
background: #fff; 
opacity: .5; 
-moz-opacity: 0.5; 
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; /* for IE8 *//* Comes First to apply optacity in all ie versions*/ 
filter: alpha(opacity=50); /* for IE5-7 *//* Comes second to apply opacity in all ie versions*/ 
} 

注意:不要改變上面幾行的順序。另外我建議不要使用rgba背景。

試試這個。希望這可以幫助