2010-08-12 66 views
1

我在IE8中遇到過另一個問題 - 滾動頁面時,虛線邊框亂碼和中斷。在IE8中虛線的邊框渲染錯誤

下面是2個W3-有效頁面,演示了該行爲:如HTML4過渡和XHTML1過渡。

在第一個例子中,我發現通過添加一個<輸入>元素,發現了一個完全奇怪的問題修復。只要它在那裏,邊界就保持一個整體(參見編輯)。

HTML4過渡:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 
<HTML> 
<HEAD> 
<TITLE>VALID HTML4 TR</TITLE> 
<STYLE type="text/css"> 
#box { 
float: left; 
width: 200px; 
height: 2000px; 
border-right: dashed 1px black; 
} 
</STYLE> 

</HEAD> 
<BODY> 

<DIV id="box"></DIV> 

<INPUT><!-- REMOVE TO BREAK THE DASHED LINE ON SCROLL --> 

</BODY> 
</HTML> 

XHTML1過渡:

這裏<輸入/ >魔不投。

<!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> 
<title>VALID XHTML1 TR</title> 
<style type="text/css"> 
#box { 
float: left; 
width: 200px; 
height: 2000px; 
border-right: dashed 1px black; 
} 
</style> 

</head> 
<body> 

<div id="box"></div> 

</body> 
</html> 

因此,

我需要的是第二個例子上班一樣一日不改變DTD。 歡迎任何想法。

感謝


編輯:

的<輸入>魔法HTML4例如不使用相同的IE8打造,即使工作的每一個人。

虛線樣式的同樣問題。

如果border-width> 1px,則邊框不會中斷。

+0

:)不要使用虛線邊框。如果「box」是靜態的,那麼你可以使用Photoshop並將其應用爲背景? – Hristo 2010-08-12 12:55:25

+0

我有點希望在桌子上使用虛線邊框。切換到重複背景會帶來很多痛苦 – krukid 2010-08-12 13:15:26

+0

注意事項以備將來參考:只要你有一個DTD,並且它不是HTML4之前的版本,就會以相同的標準模式,HTML,XHTML,而不管。唯一的區別是解析方法,但即使如此,DTD本身並沒有設置,mimetype確實如此。所以......沒有必要發佈HTML4副本和XHTML副本。 – 2010-08-13 08:50:12

回答

1

我不認爲你應該使用黑客來彌補糟糕的瀏覽器行爲。 最好接受你的內容和樣式在不同的瀏覽器中是不同的,並且不值得在每個瀏覽器中看起來完全相同。

是否有實線工作?你可以爲IE做一個CSS文件,只使用稍微不同的樣式。

+0

當然你是對的。有了這個黑客,我只是指出IE8能夠正確顯示虛線邊框,並認爲它有一個正確的方法。顯然不是,但:) – krukid 2011-10-26 11:44:38