色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

HTML中的IE條件注釋

  IE條件注釋是一種特殊的HTML注釋,這種注釋只有IE5.0及以上版本才能理解。比如普通的HTML注釋是:

<!--This is a comment-->

  而只有IE可讀的IE條件注釋是:

<!--[if IE]> <![endif]-->

  “非IE條件注釋”:

<!--[if !IE]>--> non-IE HTML Code <!--<![endif]-->

  “非特定版本IE條件注釋”(很少用到):

<!--[if ! lt IE 7]><![IGNORE[--><![IGNORE[]]>Code for browsers that match the if condition<!--<![endif]-->

  簡(jiǎn)而言之,除了“Windows上的IE”之外的所有瀏覽器都會(huì)認(rèn)為條件注釋只是一段普通的HTML注釋。你不能在CSS代碼中使用條件注釋。IE條件注釋是很有用的對(duì)IE隱藏或者展現(xiàn)特定代碼的方法,比起在CSS中用詭異的_/制造bug,利用IE條件注釋來(lái)寫CSS “hacks”是更合理的方法。通俗點(diǎn),條件注釋就是一些if判斷,但這些判斷不是在腳本里執(zhí)行的,而是直接在html代碼里執(zhí)行的。

  1. 條件注釋的基本結(jié)構(gòu)和HTML的注釋(<!– –>)是一樣的。因此IE以外的瀏覽器將會(huì)把它們看作是普通的注釋而完全忽略它們。
  2. IE將會(huì)根據(jù)if條件來(lái)判斷是否如解析普通的頁(yè)面內(nèi)容一樣解析條件注釋里的內(nèi)容。
  3. 條件注釋使用的是HTML的注釋結(jié)構(gòu),因此他們只能使用在HTML文件里,而不能在CSS文件中使用。

  從語(yǔ)法上看這是相當(dāng)合法的普通HTML注釋。任何瀏覽器都會(huì)認(rèn)為<!–和–>之間的部分是注釋從而忽略它。但是IE也會(huì)看到其中[if IE]>,從而開始解釋接下來(lái)的代碼直到遇到<![endif]。所以,下面這些代碼不會(huì)顯示在任何其他瀏覽器中面。

  通過“比較操作符”可以更靈活地對(duì)IE版本進(jìn)行控制,用法是在IE前面加上“比較操作符”。合法的操作符如下:

  • lte:就是Less than or equal to的簡(jiǎn)寫,也就是小于或等于的意思。
  • lt :就是Less than的簡(jiǎn)寫,也就是小于的意思。
  • gte:就是Greater than or equal to的簡(jiǎn)寫,也就是大于或等于的意思。
  • gt :就是Greater than的簡(jiǎn)寫,也就是大于的意思。
  • ! :就是不等于的意思,跟Javascript里的不等于判斷符相同

  示例:

  • <!–[if gt IE 5.5]> / 如果IE版本大于5.5 /
  • <!–[if lte IE 6]> / 如果IE版本小于等于6 /
  • <!–[if !IE]> / 如果瀏覽器不是IE /

  雖然看上去當(dāng)你第一次使用條件注釋的時(shí)候會(huì)更費(fèi)時(shí),但當(dāng)你以后調(diào)試你的CSS的時(shí)候,就會(huì)發(fā)現(xiàn)非常方便。用條件注釋你只需要寫一遍HTML注釋,而用bug你需要為每一條規(guī)則都寫上又長(zhǎng)又丑的代碼,而且還經(jīng)常是為了改變其他的hacks而寫的hacks。除此之外條件注釋對(duì)于不支持它的任何瀏覽器而言都是合法的HTML注釋。以下為條件注釋與CSS hacks的一些區(qū)別:

  1. Hacks是基于瀏覽器的bug,而這些bug最終可能會(huì)被修復(fù)。
  2. 條件注釋是基于IE特定代碼,這種識(shí)別機(jī)制任何時(shí)候都不會(huì)被移除。
  3. 每一個(gè)瀏覽器都能看見你的hacks,或許下一個(gè)版本或者一個(gè)新的瀏覽器會(huì)在你的hacks代碼上出錯(cuò)。
  4. 只有IE才能看到條件注釋,通過額外的“IE文件”來(lái)影響頁(yè)面,其他瀏覽器根本就不會(huì)下載它。
  5. Hacks不能確保對(duì)哪些瀏覽器生效而對(duì)哪些不,用的hacks越多,代碼越混亂。
  6. 條件注釋利用版本匹配使得作者可以容易地對(duì)特定版本寫代碼。

it知識(shí)庫(kù)HTML中的IE條件注釋,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 达孜县| 宁河县| 平昌县| 建平县| 饶河县| 张家川| 神农架林区| 芮城县| 本溪| 明光市| 南乐县| 思南县| 杭锦后旗| 临澧县| 安泽县| 洛宁县| 东阳市| 曲靖市| 敖汉旗| 通榆县| 元氏县| 左云县| 屏南县| 吴桥县| 乌苏市| 厦门市| 竹山县| 黄平县| 井研县| 启东市| 建平县| 聊城市| 东莞市| 东宁县| 教育| 池州市| 托克逊县| 驻马店市| 青铜峡市| 香格里拉县| 饶阳县|