我們可以像這樣使用<body class="all" <!--[if IE 7]>class="ie"<![endif]--> >
?我們可以像這樣使用<body class =「all」<! - [if IE 7]> class =「ie」<![endif]-->>
我想保留所有的CSS在一個文件中。
我們可以像這樣使用<body class="all" <!--[if IE 7]>class="ie"<![endif]--> >
?我們可以像這樣使用<body class =「all」<! - [if IE 7]> class =「ie」<![endif]-->>
我想保留所有的CSS在一個文件中。
你可以使用:
<body class="all">
<!--[if ie]>
<div class="ieOnly">
<![endif]-->
<div id="content">
<p>...</p>
</div>
<!--[if ie]>
</div>
<![endif]-->
</body>
這樣的CSS選擇器來解決IE的缺陷/差異比正常
#content {/* for non-IE browsers */}
body.all .ieOnly #content {/* for IE */}
更具體...並應覆蓋 '正常' #content
規則,永遠不會被非IE瀏覽器應用,因爲在選擇器中有一個元素.ieOnly
,否則它們對他們來說是「不可見的」。
嚴格來說,還是沒有;你不能做你在你的問題中提出的建議,儘管有其他方法。
聰明的想法在身體中使用IE標籤,而不僅僅是樣式聲明。 – 2010-06-16 07:49:53
使用use 2'body'它在語義上是正確的 – 2010-06-16 10:36:03
它允許完全有效的CSS,在單個樣式表中,html也是有效的,這取決於您對IE條件註釋的看法。但是,它應該驗證罰款。 – 2010-06-16 11:04:43
不,你不能專門評論一個屬性,即使IE的條件註釋。但是可以有其他表達方式。
而不是使用條件通信和不同的CSS和CSS黑客我想添加一個類到身體,然後我可以使用該類的所有IE特定CSS需求。 – 2010-06-16 01:56:58
簡答:否(至少不是內聯),但爲什麼你需要? :)
只需在IE條件樣式表中定義一個body { }
風格,就像這樣:
<!--[if IE 7]>
<link rel="stylesheet" type="text/css" href="ie7.css">
<![endif]-->
裏邊有:
body { /* or body.all { */
background: pink; /* Pink is pretty!, or green, whatever */
}
你的意思是2個不同的'身體' – 2010-06-16 01:57:58
我想保留所有樣式在一個CSS。 – 2010-06-16 01:59:07
@ metal-gear-solid - 你把它放在你的主CSS後面,無論什麼樣式的'body'聲明都會覆蓋以前定義的屬性(禁止'!important'),就像任何其他的CSS一樣。對於這部分「我想保留所有樣式在一個CSS」......好吧,你不能有*有效的* CSS和IE特定的樣式然後,你將不得不使用hacky CSS,我建議。 – 2010-06-16 01:59:16
如果你想基於A類添加到身體瀏覽器沒有黑客,你將需要使用服務器端代碼和UA嗅探。
對於只有IE的div,Ricebowl的解決方案是捕獲你想要的東西的最好方法,如果你確定有一個CSS文件。 – 2010-06-16 07:51:31