![](/img/trans.png)
[英]Differences with CSS positioning between IE9 and Opera, and Firefox and Opera
[英]CSS Menu with Box Model differences between IE8 and Chrome/Firefox/Opera
我以為IE7和更高版本遵循的是與Chrome / Firefox / Opera相同的盒子模型,但是當我在IE8中運行以下代碼,然后在Chrome / Firefox / Opera中運行以下代碼時,我得到了不同的結果。
在IE8中, 框的末端顯示了一些我想擺脫的嘴唇。 是否可以使用嚴格的CSS來解決我的問題,還是需要使用Javascript來檢測瀏覽器,然后更改CSS?
這是我正在使用的代碼的鏈接。 為了查看我的問題,您需要使用IE,然后使用Chrome,Firefox或Opera。
IE7有兩種模式:兼容模式和標准模式。 MS在IE方面所做的一系列出色舉措中的又一個。 (是的,我很諷刺):
通常讓人們感到困擾的是,默認情況下,如果頁面是在本地加載或從網絡上的服務器加載,則IE8會恢復到兼容(即損壞)模式。 我猜想邏輯是它必須是您的Intranet上的一個頁面,並且由於所有Intranet Web軟件中90%都是用IE6怪誕的方式編碼的,因此在任何標准瀏覽器中幾乎都無法解決,因此最好假設代碼已損壞並恢復為兼容模式。
至於檢測IE8,您可以通過IE的條件注釋在不使用JavaScript的情況下進行操作。 我通常要做的是將主體標簽包裝在條件語句中,並為每個變量賦予唯一的ID:
<!--[if !IE]> -->
<body>
<!--<![endif]-->
<!--[if gt IE 8]>
<body id="IE9">
<![endif]-->
<!--[if IE 8]>
<body id="IE8">
<![endif]-->
<!--[if IE 7]>
<body id="IE7">
<![endif]-->
<!--[if lt IE 7]>
<body id="IE6">
<![endif]-->
然后在CSS中,您可以根據需要輕松提供單獨的CSS:
.myStyle {for good browsers}
#ie7 .myStyle {fix for IE7}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.