2010-05-04 88 views
3

我有以下div被呈現給客戶端,但在IE上,checked-yes類被忽略。如果我在「開發人員工具」中查看目標元素,則該類從樣式面板中完全丟失。 shift-item-present類是連接服務器端,checked-yes類客戶端端,這取決於父行的present屬性,如下所示。第二個CSS類不工作在IE8

<td><div class="shift-item-present checked-yes" jQuery1272958392665="94"/></td> 

父行:

<tr class="shift-item" id="ctl00_mainContentPlaceHolder_ctl00_shiftList_ctl01_shiftRow" present="True" shift-id="641" jQuery1272958392665="64"> 

頁完全在FF。這裏是CSS,都在同一個文件中:

.shift-item-present 
{ 
    top: 2px; 
    left: 2px; 
    height: 12px; 
    width: 20px; 
    background-repeat: no-repeat; 
    background-position: center right; 
} 

.checked-yes 
{ 
    background-image: url('../Images/Icons/checked-yes-xs.png'); 
} 
+2

我假設CSS沒有應用,你可以發佈嗎? – Kobi 2010-05-04 07:49:25

+0

我已經添加了CSS。 – ProfK 2010-05-04 08:03:56

回答

3

Internet Explorer不支持XHTML!甚至沒有IE8。所以它不支持自閉元素。使用<div></div>而不是<div/>

+0

如果文檔類型設置正確,IE8可以使用它。 – VMAtm 2010-05-04 09:00:03

+0

不,它不能。它可能在偶然的情況下工作,因爲'div'本身就是'td',但這並不改變** IE8不支持自閉元素**的事實。 – RoToRa 2010-05-04 09:13:28

+0

「IE8可以使用它。」錯誤!當你認爲它「有效」時,這是因爲你錯誤地將XHTML作爲text/html(而不是application/xhtml + xml)發送,導致IE(和其他人)無論如何都將其解析爲HTML。發送它與適當的MIME,以允許正確的XHTML解析(和IE扼殺它,給出一個下載對話框)。 – 2010-05-04 11:45:33

0

當IE8以怪癖模式渲染頁面時,可能會發生這種情況。嘗試設置正確的DOCTYPE。

+0

什麼是正確的DOCTYPE?這是VS生成的默認值,我認爲我可以認爲這是正確的。 – ProfK 2010-05-04 08:04:33

+0

可能你會發布整個文件或html輸出嗎?這可能有幫助 – VMAtm 2010-05-04 09:05:51