2010-11-08 161 views
0

我有1px x 1px灰度像素。它被用作BG圖像:IE 8特定背景圖像錯誤

background-attachment:scroll; 
background-color:transparent; 
background-image:url("../image/vertical-border.png"); 
background-position:393px 0; 
background-repeat:repeat-y; 

所以我期望灰色的垂直線是任何div在div中最高的高度。常用的技巧。

所以我在每個瀏覽器中正確地看到這個除了IE 8以外。在IE 8中它顯示爲漸變。頂部變暗,下面變淡。那有多瘋狂?我從來沒有見過這樣的事情,並會喜歡一些見解。

謝謝!

+2

你能提供一個活鏈接或的jsfiddle? – 2010-11-08 22:24:39

+0

我遇到過類似的問題,但最終只是因爲我的顯示器對頂部較暗。 – drudge 2010-11-08 22:25:34

+0

是的,我很好奇,也看到它。 – AGoodDisplayName 2010-11-08 22:25:48

回答

2

不幸的是,這是一個PNG渲染錯誤(意外的驚喜),在大多數情況下人們增加了平鋪PNG圖像的大小,10x10和問題被刪除。希望這對你有好處 - 可能使用1x10或更好的1x50 ...

從內存中得到的部分解釋是IE需要將其過濾應用到1x1圖像時的處理量,當你乘以它出現在屏幕上的次數 - 它對IE來說太硬了。

請參閱:IE8's rendering of transparent pngs is FUBARed on my site,和相關的帖子/評論。

編輯: 嘿,既然它只是一條垂直線,是否可以使用GIF格式呢?或者可能是8位,非alpha透明的PNG?

+0

更改爲1px 10px PNG使這項工作流行。多麼奇怪的問題......謝謝! – 2010-11-11 00:39:00

0

如果它只是1px的灰色邊框,爲什麼不使用1px灰色邊框?

例子:

border-right: 1px solid #cccccc; 
+1

他可能會用一個更簡單的例子來說明他的實際代碼。 – 2012-10-26 13:25:07