2011-09-05 374 views
1

演示:http://jsbin.com/esupex/2IE6陰影問題

我有陰影的框,其製作的新生產線的股利去,如果我刪除的影子,在div追溯到在同一直線上。以下是截圖。

IE6陰影斷開線錯誤 - full imageenter image description here

IE6沒有影子(這只是表明它是什麼樣子沒影后,但我們確實需要陰影) - full imageenter image description here

最終佈局應該看起來像這樣。這個截圖是從Firefox - full imageenter image description here

以下是行導致了問題,我不知道如何解決這個問題:

filter: progid:DXImageTransform.Microsoft.Shadow(Strength=5, Direction=140, Color='#eeeeee'); 
+0

你真的要支持IE6? _真的?_ – Kyle

+0

是的,我的完整應用程序支持ie6,只是這個小問題是迄今爲止留下的問題。 – Basit

+3

我想說,如果它在IE6中導致問題,那麼只需從該瀏覽器中刪除它。 – Kyle

回答

1

添加陰性切緣的框被渲染得太低,如果你必須在IE陰影。

http://jsbin.com/esupex/36

我加修改爲:

#playerNavBox { 
    height:36px; 
    margin-right: 260px; 
    *margin-top: -43px; 
} 
+0

這是完美的,更好的寬度和右邊距。非常感謝。 – Basit

0

你有固定或流動佈局工作?問題是最正確的div不能把自己放在左邊的旁邊。給左邊的一個左邊的浮動和一個固定的寬度(以px或%爲單位),並且都應該沒問題。

如果你的佈局流體:注意邊界,陰影,margin和padding在PX如果你給一個元素一個不%發揮出色,不應該永遠是在同一元素

此外,在IE6浮動並在同一邊填充或邊距,它將是您指定的邊距/填充的兩倍。這裏描述的一樣:

http://davidwalsh.name/prevent-double-margin-padding-ie6-css-float

對於IE6,你可以使用一個邊框,而不是陰影來獲得或多或少相同的外觀。

+0

其流體佈局。以及如果你點擊示例鏈接並在ie6上運行它,你會看到錯誤,如果你只是從CSS中刪除陰影線,那麼它會正常工作。 – Basit

+0

對於IE6,您可以使用邊框而不是陰影來獲得更多或更少的相同外觀。仔細看過它,但看起來IE6使得影子的方式更大,然後你將其定義爲。 –

+1

這就是我對IE6的解決方案,從來沒有爲它設計過,但使它看起來可以接受之後。無論如何,無論如何,所有全球網頁瀏覽量中仍有10%是用ie6完成的。不支持它會是可笑的。 –

0

減少邊距和定義寬度可以解決問題。

老CSS:

#playerNavBox { 
     height:36px; 
     margin-right: 260px; 
     background-color:#fff; 
    } 

新的CSS:

#playerNavBox { 
    height:36px; 
    margin-right: 260px; 
    background-color:#fff; 
    /* ie6 shadow fix */ 
    *width:81%; 
    *margin-right: 250px; 
} 
+1

當改變分辨率時,這會給你帶來棘手的問題,結合px大小和%大小從來沒有效果好 –

+0

你是對的。只是想着我還能做什麼,而不去除陰影。任何人!? – Basit