瀏覽器兼容

1.什么是 CSS hack

由于不同廠商的瀏覽器茬斧,比如Internet Explorer,Safari,Mozilla Firefox,Chrome等,或者是同一廠商的瀏覽器的不同版本,如IE6和IE7,對CSS的解析認識不完全一樣,因此會導(dǎo)致生成的頁面效果不一樣拂玻,得不到我們所需要的頁面效果。
??這個時候我們就需要針對不同的瀏覽器去寫不同的CSS,讓它能在不同的瀏覽器中也能得到我們想要的頁面效果檐蚜。

2.談一談瀏覽器兼容的思路

要不要做:
  • 產(chǎn)品的角度(產(chǎn)品的受眾魄懂、受眾的瀏覽器比例、效果優(yōu)先還是基本功能優(yōu)先)
  • 成本的角度 (有無必要做某件事)
做到什么程度
  • 讓哪些瀏覽器支持哪些效果
如何做

3.列舉5種以上瀏覽器兼容的寫法

  • 屬性前綴
.box{
   color: red;
  _color: blue; /*ie6*/
  *color: pink; /*ie67*/
   color: yellow\9;  /*ie/edge 6-8*/
}
  • 條件注釋
<!–-[if IE 7]>
<link rel="stylesheet" href="ie7.css" type="text/css" />
<![endif]–->
  • 清除浮動
.clearfix:after{
  content: '';
  display: block;
  clear: both;
}
.clearfix{
  *zoom: 1; /* 僅對ie67有效 */
}
  • inline-block
.target{
  display: inline-block;
  *display: inline;
  *zoom: 1;
}
  • html5shiv诲泌、respond等
小于ie9時生效
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
<![endif]-->

4.以下工具/名詞是做什么的

  • 條件注釋
    條件注釋 (conditional comment) 是于HTML源碼中被IE有條件解釋的語句盲赊。條件注釋可被用來向IE提供及隱藏代碼。使用了條件注釋的頁面在 Windows Internet Explorer 9 中可正常工作敷扫,但在 Internet Explorer 10 中無法正常工作

  • IE Hack
    使用特殊的符號或者方式寫出只有IE瀏覽器可以解析的代碼哀蘑,有CSS屬性前綴法、選擇器前綴法以及IE條件注釋法葵第。

    • 屬性前綴法(即類內(nèi)部Hack):例如 IE6能識別下劃線和星號绘迁,IE7能識別星號,但不能識別下劃線卒密,IE6~IE10都認識"\9"缀台,但firefox前述三個都不能認識
    • 選擇器前綴法: 比如IE6能識別html .class{},IE7能識別+html .class{}或者*:first-child+html .class{}哮奇。
    • HTML頭部引用(if IE)Hack:
      針對所有IE:膛腐,針對IE6及以下版本:,這類Hack不僅對CSS生效鼎俘,對寫在判斷語句里面的所有代碼都會生效哲身。
    • 書寫順序: 一般是將識別能力強的瀏覽器的CSS寫在前面。瀏覽器優(yōu)先級別:FF < IE7 < IE6贸伐,CSS hack書寫順序一般為FF IE7 IE6勘天。
  • js 能力檢測
    也稱特性檢測。能力檢測的目標(biāo)不是識別特定的瀏覽器捉邢,而是識別瀏覽器的能力脯丝。使用這種方式無需顧及瀏覽器如何如何,只需確定瀏覽器是否支持特定的能力歌逢,就可以給出相關(guān)的方案

  • html5shiv.js
    html5shiv.js是一套實現(xiàn)讓ie低版本等瀏覽器支持[HTML5]的腳本

  • respond.js
    respond.js 是一個快速巾钉、輕量的 polyfill翘狱,用于為 IE6-8 以及其它不支持 CSS3 Media Queries 的瀏覽器提供媒體查詢的 min-width 和 max-width 特性秘案,實現(xiàn)響應(yīng)式網(wǎng)頁設(shè)計(Responsive Web Design)。

  • css reset
    css reset將所有的瀏覽器的自帶樣式重置掉,這樣更易于保持各瀏覽器渲染的一致性

  • normalize.css
    Normalize.css 只是一個很小的CSS文件阱高,但它在默認的HTML元素樣式上提供了跨瀏覽器的高度一致性赚导。相比于傳統(tǒng)的CSS Reset,Normalize.css是一種現(xiàn)代的赤惊、為HTML5準(zhǔn)備的優(yōu)質(zhì)替代方案

  • Modernizr
    Modernizr是一個檢測用戶瀏覽器HTML5和CSS3能力的JavaScript庫吼旧。用于處理瀏覽器兼容問題,針對可用性去檢測未舟。既能給老版本瀏覽器打補丁圈暗,又能保證新瀏覽器漸進增強的用戶體驗

  • postCSS
    postCSS是使用JS插件來轉(zhuǎn)換CSS的工具,支持變量裕膀、混入员串、未來 CSS語法、內(nèi)聯(lián)圖像等昼扛。PostCSS使CSS變成JavaScript的數(shù)據(jù)寸齐,使它變成可操作。PostCSS是基于JavaScript插件抄谐,然后執(zhí)行代碼操作渺鹦。

5.一般在哪個網(wǎng)站查詢屬性兼容性?

caniuse

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蛹含,一起剝皮案震驚了整個濱河市毅厚,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌挣惰,老刑警劉巖卧斟,帶你破解...
    沈念sama閱讀 217,657評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異憎茂,居然都是意外死亡珍语,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評論 3 394
  • 文/潘曉璐 我一進店門竖幔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來板乙,“玉大人,你說我怎么就攤上這事拳氢∧汲眩” “怎么了?”我有些...
    開封第一講書人閱讀 164,057評論 0 354
  • 文/不壞的土叔 我叫張陵馋评,是天一觀的道長放接。 經(jīng)常有香客問我,道長留特,這世上最難降的妖魔是什么纠脾? 我笑而不...
    開封第一講書人閱讀 58,509評論 1 293
  • 正文 為了忘掉前任玛瘸,我火速辦了婚禮,結(jié)果婚禮上苟蹈,老公的妹妹穿的比我還像新娘糊渊。我一直安慰自己,他們只是感情好慧脱,可當(dāng)我...
    茶點故事閱讀 67,562評論 6 392
  • 文/花漫 我一把揭開白布渺绒。 她就那樣靜靜地躺著,像睡著了一般菱鸥。 火紅的嫁衣襯著肌膚如雪宗兼。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,443評論 1 302
  • 那天氮采,我揣著相機與錄音针炉,去河邊找鬼。 笑死扳抽,一個胖子當(dāng)著我的面吹牛篡帕,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播贸呢,決...
    沈念sama閱讀 40,251評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼镰烧,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了楞陷?” 一聲冷哼從身側(cè)響起怔鳖,我...
    開封第一講書人閱讀 39,129評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎固蛾,沒想到半個月后结执,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,561評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡艾凯,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,779評論 3 335
  • 正文 我和宋清朗相戀三年献幔,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片趾诗。...
    茶點故事閱讀 39,902評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡蜡感,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出恃泪,到底是詐尸還是另有隱情郑兴,我是刑警寧澤,帶...
    沈念sama閱讀 35,621評論 5 345
  • 正文 年R本政府宣布贝乎,位于F島的核電站情连,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏览效。R本人自食惡果不足惜却舀,卻給世界環(huán)境...
    茶點故事閱讀 41,220評論 3 328
  • 文/蒙蒙 一球榆、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧禁筏,春花似錦、人聲如沸衡招。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽始腾。三九已至州刽,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間浪箭,已是汗流浹背穗椅。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留奶栖,地道東北人匹表。 一個月前我還...
    沈念sama閱讀 48,025評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像宣鄙,于是被迫代替她去往敵國和親袍镀。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,843評論 2 354

推薦閱讀更多精彩內(nèi)容

  • CSS Hack 不同的瀏覽器對某些CSS代碼解析會存在一定的差異冻晤,因此就會導(dǎo)致不同瀏覽器下給用戶展示的頁面效果不...
    zx9426閱讀 386評論 0 0
  • 什么是 CSS hack CSS hack是通過在CSS樣式中加入一些特殊的符號苇羡,讓不同的瀏覽器識別不同的符號(什...
    怎么昵稱閱讀 387評論 0 1
  • 一、如何調(diào)試 IE 瀏覽器鼻弧? 在IE7以上的版本中可以通過按快捷鍵F12調(diào)出開發(fā)人員調(diào)試框设江,如下圖IE7以上調(diào)試工...
    dengpan閱讀 548評論 0 2
  • 做前端多年,雖然不是經(jīng)常需要hack攘轩,但是我們經(jīng)常會遇到各瀏覽器表現(xiàn)不一致的情況叉存。基于此度帮,某些情況我們會極不情愿的...
    大女表哥閱讀 1,092評論 0 9
  • 一鹉胖、如何調(diào)試 IE 瀏覽器? IE調(diào)試的一般方法(css): 使用高版本IE控制臺(對于IE7以上)IE11的開發(fā)...
    婷樓沐熙閱讀 553評論 0 6