程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 更多關於編程 >> 詳談IE條件注釋

詳談IE條件注釋

編輯:更多關於編程

     概述

    如果你厭煩了為低版本IE寫又臭又長的hack,IE條件注釋將是比較優美的解決方法。當然條件注釋的功能不僅僅是以上那些功能,除了規避寫出惡心的hack,它還可以針對不同的IE版本(IE5.5-9,IE10不支持條件注釋)做出不同的相應,比如針對不同IE加載不同的樣式,或者腳本等等,更多的功能等待我們的發掘和運用。

    條件注釋簡介

    IE中的條件注釋(Conditional comments)對IE的版本和IE非IE有優秀的區分能力,是WEB設計中常用的hack方法。
    條件注釋只能用於IE5以上,IE10以上不支持。
    如果你安裝了多個IE,條件注釋將會以最高版本的IE為標准。
    條件注釋的基本結構和HTML的注釋(<!– –>)是一樣的。因此IE以外的浏覽器將會把它們看作是普通的注釋而完全忽略它們。
    IE將會根據if條件來判斷是否如解析普通的頁面內容一樣解析條件注釋裡的內容。

    條件注釋語法

     

    項目 范例 說明 ! [if !IE] The NOT operator. This is placed immediately in front of the feature, operator, or subexpression to reverse the Boolean meaning of the expression.
    NOT運算符。這是擺立即在前面的功能,操作員,或子表達式扭轉布爾表達式的意義。 lt [if lt IE 5.5] The less-than operator. Returns true if the first argument is less than the second argument.
    小於運算符。如果第一個參數小於第二個參數,則返回true。 lte [if lte IE 6] The less-than or equal operator. Returns true if the first argument is less than or equal to the second argument.
    小於或等於運算。如果第一個參數是小於或等於第二個參數,則返回true。 gt [if gt IE 5] The greater-than operator. Returns true if the first argument is greater than the second argument.
    大於運算符。如果第一個參數大於第二個參數,則返回true。 gte [if gte IE 7] The greater-than or equal operator. Returns true if the first argument is greater than or equal to the second argument.
    大於或等於運算。如果第一個參數是大於或等於第二個參數,則返回true。 ( ) [if !(IE 7)] Subexpression operators. Used in conjunction with boolean operators to create more complex expressions.
    子表達式運營商。在與布爾運算符用於創建更復雜的表達式。 & [if (gt IE 5)&(lt IE 7)] The AND operator. Returns true if all subexpressions evaluate to true
    AND運算符。如果所有的子表達式計算結果為true,返回true | [if (IE 6)|(IE 7)] The OR operator. Returns true if any of the subexpressions evaluates to true.
    OR運算符。返回true,如果子表達式計算結果為true。

    條件注釋使用方法示例

    <!–[if IE 5]>僅IE5.5可見<![endif]–>
    <!–[if gt IE 5.5]>僅IE 5.5以上可見<![endif]–>
    <!–[if lt IE 5.5]>僅IE 5.5以下可見<![endif]–>
    <!–[if gte IE 5.5]>IE 5.5及以上可見<![endif]–>
    <!–[if lte IE 5.5]>IE 5.5及以下可見<![endif]–>
    <!–[if !IE 5.5]>非IE 5.5的IE可見<![endif]–>

    條件注釋使用案例

    詳談IE條件注釋   三聯

    特別提示:

    1、有人會試圖使用<!--[if !IE]>來定義非IE浏覽器下的狀況,但注意:條件注釋只有在IE浏覽器下才能執行,這個代碼在非IE浏覽下被當做注釋視而不見。

    2、我們通常用IE條件注釋根據浏覽器不同載入不同css,從而解決樣式兼容性問題的。其實它可以做的更多。它可以保護任何代碼塊——HTML代碼塊、JavaScript代碼塊、服務器端代碼……看看下面的代碼。

     

    代碼如下:
    <!--[if IE]>
    <script type="text/javascript">
    alert("你使用的是IE浏覽器!");
    </script>
    <![endif]-->
    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved