[英]IE9 in compatibility mode not displaying CSS styles correctly
我有一個嵌套div(見下文),它有不同的CSS類,為容器提供背景顏色和文本格式
<div class="section">
<div class="sectionTitle">
<dx:ASPxLabel ID="lblSectionTitle" runat="server" Text='<%# Eval("SectionTitle") %>'></dx:ASPxLabel>
</div>
<div class="sectionTitle">
<dx:ASPxLabel ID="lblSectionDesc" runat="server" Text='<%# Eval("SectionDescription") %>'></dx:ASPxLabel>
</div>
div部分有一個結束標記,其中有更多內容正確呈現。
上面的CSS是:
.section
{
padding: 5px;
background-color: #ffffff;
}
.sectionTitle
{
font-size: 11px;
font-family: Arial;
font-weight: bold;
color: #546fb2;
}
當我在.section中注釋掉背景顏色時,正在應用sectionTitle的格式,但是當我將背景顏色放在那里時,它會覆蓋sectionTitle的顏色。 我已經嘗試將.section的顏色設置為匹配.sectionTitle但這仍然不起作用。
在每個瀏覽器(IE9不兼容,Firefox,Chrome)它工作正常,我已經看了幾個小時現在這有點令人沮喪,因為我無法發現問題。
內容位於ASP.NET頁面上,該頁面使用具有doctype的MasterPage:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
有人可以幫忙解釋一下嗎?
提前致謝
安迪
Internet Explorer具有兼容性“功能”,它始終以兼容模式呈現本地網絡上的站點。 你必須以兩種方式之一明確地關閉它。
<meta http-equiv="x-ua-compatible" content="ie=edge" />
這個邊緣標記告訴ie始終呈現它支持的最標准模式。
如果你使用像asp.net或php這樣的服務器端技術,那就是使用另一種方法(我更喜歡),這就是添加一個http頭(在asp.net中,這是在global.asax中,也是chrome = 1使能) chromeframe如果安裝):
protected void Application_BeginRequest()
{
Response.Headers.Add("X-UA-Compatible", "IE=edge, Chrome=1");
}
編輯:
還有第三種方法,那就是在Internet選項的兼容性視圖選項卡中禁用它。 但是,這只會影響您的計算機。
此外,如果可能的話,最好使用頭方法,而不是使用元標記方法。 當瀏覽器讀取元標記時,它已經處於主模式。 元標記僅影響文檔呈現模式,而不影響瀏覽器兼容模式。 在某些情況下,存在微妙的差異,可能會產生影響。
嘗試將此添加到標題
<meta http-equiv="x-ua-compatible" content="ie=emulateie9" />
在IE9上按F12,如果有文檔模式Qirks,則必須通過元標記修復它。 也許這是你的問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.