濮阳杆衣贸易有限公司

主頁 > 知識庫 > IE7 beta2的CSS兼容性

IE7 beta2的CSS兼容性

熱門標簽:無錫電銷外呼系統(tǒng)代理 地圖標注多家店 中山外呼系統(tǒng)中間件 車載電話機器人 什么行業(yè)需要電話機器人 南昌crm外呼系統(tǒng)如何 外呼系統(tǒng)號碼顯示 天津企業(yè)外呼系統(tǒng)代理商 廣州ai外呼系統(tǒng)業(yè)務
當IE7 beta1推出的時候,我在第一時間對它作了個測試。當時發(fā)現(xiàn)它對CSS的支持幾乎沒有任何變化,著實失望了一陣。MS在最近推出了IE7 beta2,這次有了不少新的改進和變化。但這些改進和變化會導致一些原來正常網(wǎng)頁出現(xiàn)布局錯誤或者原來可以使用的Hack技巧不再可用。MSDN在年初的時候把這些可能產(chǎn)生的問題羅列給開發(fā)者(這是原文),這里我把其中比較主要的問題簡單地描述一下,希望能對大家有所幫助。

  注意,在IE7正版發(fā)布之前,以下提到所有內容都是有可能變化的。

 盒模型變了?。?!

  這恐怕是會讓那些使用Web標準建設大型網(wǎng)站的開發(fā)者感到背脊發(fā)涼的變化,不過不用太擔心,主要的變化是在盒模型對溢出(overflow)內容的處理方法。

  假設有一個100px寬100px高的盒子,在這個盒子里放一個200px寬200px高的圖片。目前IE的正理方法是自動把盒子“撐大”到200px見方。而IE7 beta2的處理方法和FF是一致的:盒子不變,溢出的部分在盒子外面被渲染。也就是說盒子的overflow值真正地使用了W3C的默認值“visible”。

  如果你現(xiàn)有的布局是依賴于IE的“自動撐開”,那么要小心,很可能會出現(xiàn)問題(特別是動態(tài)內容的網(wǎng)頁)。

XML序言(prolog)可能會影響盒模型

  Oh,My GOD!又是盒模型!

  大家知道IE有兩種渲染模式:Quirks Mode和Strict Mode。Quirks Mode基本上是非標準的,包括盒模型在內,它的渲染方式與W3C的標準有些出入。而Strick Mode基本上是標準的(反正都不是絕對標準也不是絕對不標準……)。IE6及以前版本會根據(jù)寫在XHTML文檔第一行(也只能是第一行)的DocType聲明來選擇渲染模式。如果發(fā)現(xiàn)了一個它能識別的DocType,比如XHTML Transitional或者XHTML Strict等等,它就使用Strict Mode來渲染。其他所有情況下都使用Quirks Mode。

  有些開發(fā)者為了顯式地聲明他們的XHTML文檔是一個XML,會在文檔的第一行(問題就在這里,它也必須在第一行)加上XML的序言(prolog)。比如:

?xml version="1.0" encoding="gb2312"?>

  雖然初衷是為了讓文檔更“標準”,但由于IE不認這行字,結果還是按Quirks Mode來渲染。

  IE7 beta2解決這個問題,它會跳過prolog來看檢查DocType。所以可能會出現(xiàn)IE6及以下版本用Quirks Mode渲染而IE7 beta2用Strict Mode渲染的情況。

  其實這個問題容易解決,在現(xiàn)有的環(huán)境下,把prolog直接刪掉就行了,實在是沒什么大的用處。當然想裝作在使用XHTML,事實上還是想用Quirks Mode的人可能得好好想個新辦法了^_^

由于改進bug而失效的Hack技巧

* html

這是一個利用IE Bug的Hack,如下的寫法只有IE會解析其中的內容:

* html{...}
* html body{...}

現(xiàn)在IE beta2將和大部隊一起把它們忽略掉。

下劃線Hack

這也是一個利用IE Bug的Hack,如下的寫法只有IE會解析其中的內容:

.myclass{
   min-height:300px;
   _height:300px;
}

現(xiàn)在IE beta2將不再解析下劃線開頭的屬性,但是會把它當作一個“用戶自定義”屬性。自定義屬性并不能應用到表現(xiàn)上,但是它會存在于文檔模型中,可以使用腳本來訪問。(這個特性我還沒有測試過)

/**/注釋Hack

這是我最喜歡的Hack技巧之一了。如下的寫法在Strict Mode下面會對IE6透明(IE5.x是會解析的),但是現(xiàn)在IE7 beta2將會解析它:

.myclass{
   height/**/:300px;
}

由于增強功能而失效的Hack技巧

原來IE不支持以下寫法,現(xiàn)在可以了:

child選擇符Hack
html > body{
   height:300px;
}
相鄰選擇符Hack
head + body{
height:300px;
}
相鄰選擇符和first-child偽類選擇符
head:first-child + body{
height:300px;
}

這些都算不上什么壞消息,反正我從來不用這些Hack^_^

俺的頁面亂咧,咋辦?

  在MSDN的那篇文章上給出了一些解決方案,從我的角度來看都是些治標不治本、隔靴搔癢的方案。要不用JS來做CSS的工作,要不只針對IE來載入特定的CSS。所以建議大家:等!一等IE7的正式版,在正式版出來之前,什么都有可能變。二等偉大的CSS社區(qū)的牛牛們找出更多的Hack技巧。IE7不可能做得和FF一模一樣,也不可能和IE6一模一樣,反正總會有點不一樣的,就利用那點不一樣的東西來做Hack。

  雖然用各種Hack是件很無奈的事情,但現(xiàn)實就是這樣,我們在努力影響這個行業(yè)的同時只有好好適應它,所以私底下很希望能看到用中國人名字命名的Hack出現(xiàn)。

  Fight!

您可能感興趣的文章:
  • 使css兼容IE8的小技巧
  • 多瀏覽器css兼容分析小結
  • CSS兼容要點分析
  • Css瀏覽器兼容的解決方法

標簽:仙桃 攀枝花 泰州 佛山 海西 呂梁 欽州 滄州

巨人網(wǎng)絡通訊聲明:本文標題《IE7 beta2的CSS兼容性》,本文關鍵詞  IE7,beta2,的,CSS,兼容性,IE7,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《IE7 beta2的CSS兼容性》相關的同類信息!
  • 本頁收集關于IE7 beta2的CSS兼容性的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    英吉沙县| 武乡县| 台东市| 罗源县| 尼木县| 宿迁市| 林芝县| 崇左市| 阿城市| 安塞县| 瑞金市| 枣庄市| 鹰潭市| 谷城县| 西贡区| 上蔡县| 梁平县| 镇沅| 望江县| 鞍山市| 兴城市| 鱼台县| 金坛市| 溧水县| 新建县| 樟树市| 平遥县| 松阳县| 永春县| 鹤壁市| 朝阳区| 廉江市| 钟山县| 南投县| 北碚区| 本溪市| 西乡县| 曲沃县| 舞阳县| 托克逊县| 噶尔县|