亚洲AV无码乱码在线观看不卡|最新大伊香蕉精品视频在线|亚洲不卡av一区二区|国产美女无遮挡免费

登錄論壇 | 注冊會(huì)員 設(shè)為首頁 | 收藏本站
當(dāng)前位置 : 首頁>軟件學(xué)院>程序開發(fā)>CSS>正文
 
關(guān)于CSS HACK 解決兼容的寫法

http://www.yibo1263.com 2010-5-31 7:45:15  來源:東北IT網(wǎng)  編輯:葉子
 

人一旦習(xí)慣了某些東西就很難去改,以及各種各樣的原因,新的瀏覽器越來越多,而老的總淘汰不了。增長總是快于消亡導(dǎo)致了瀏覽器兼容是成了談不完的話題。說到瀏覽器兼容,CSS HACK自然而然地被我們想起。今天,我們通常都有一個(gè)團(tuán)隊(duì)或者將有一個(gè)團(tuán)隊(duì)的人在一個(gè)公司里面做相同的事,需要我們有統(tǒng)一的規(guī)范來進(jìn)行Coding,以方便維護(hù)。而解決兼容的方法就是(必須是,因?yàn)檫@才最容易有問題的)其中一個(gè)最重要的、要解決的規(guī)范之一。


在解決兼容方法上,想定出一個(gè)統(tǒng)一的規(guī)范,個(gè)人認(rèn)為應(yīng)該以下面3點(diǎn)為基本原則:



  1. 權(quán)衡成本:在瀏覽器被淘汰后,如何快速清理掉無用代碼
  2. 可維護(hù):在資源成本和完美間平衡的向后兼容
  3. 可讀:省力、易記

這里把成本放在了第一位,并不是說我們不愿意追求完美,而只是,太刻意追求完美有時(shí)候可能會(huì)阻礙我們前進(jìn);在成本后,應(yīng)該是可維護(hù)和可讀,這點(diǎn)對(duì)于團(tuán)隊(duì)的合作來說至關(guān)重要,而最終結(jié)果也是為了減少成本。


先把這三個(gè)原則存起來,來看看我們平時(shí)解決兼容的寫法(后面會(huì)附詳細(xì)的Hack方法列表):


一、CSS 選擇器 Hack


 /* Opera */
@media all and (-webkit-min-device-pixel-ratio:10000), not all and (-webkit-min-device-pixel-ratio:0)
{head~body .sofish{display:block;}}


這種寫法的優(yōu)缺點(diǎn)是:



  • 優(yōu)點(diǎn):全面,各種HACK都有;清理無用代碼里易認(rèn)
  • 缺點(diǎn):選擇器名稱不易記;代碼量多(要重復(fù)寫選擇器)

二、CSS 屬性 Hack


  .sofish{
         padding:10px;
         padding:9px\9; /* all ie */
         padding:8px\0; /* ie8-9 */
         *padding:5px; /* ie6-7 */
        +padding:7px; /* ie7 */
         _padding:6px; /* ie6 */
}


這種寫法的優(yōu)缺點(diǎn)是:



  • 優(yōu)點(diǎn):易記,代碼少
  • 缺點(diǎn):不全面
  • 三、IE 注釋

    IE only

    這種寫法的優(yōu)缺點(diǎn)是:

    • 優(yōu)點(diǎn):安全;向后兼容好;易維護(hù)
    • 缺點(diǎn):用不好會(huì)增加HTTP請(qǐng)求;用得好代碼又多

    四、瀏覽器探測:JS/后端程序判斷

    // 以jQuery為例,檢測是否是IE6,是則加上class="ie6"
    if ($.browser.msie && $.browser.version = 6 ){
    $('div').addClass('ie6');
    }

    這種寫法的優(yōu)缺點(diǎn)是:

    • 優(yōu)點(diǎn):全面;易維護(hù);可讀性高
    • 缺點(diǎn):占資源;代碼量大(要重寫選擇器)

    上面4種是我們最常用的方法,F(xiàn)在,讓我們抽出心里存著的那3個(gè)原則,看看如何選擇。要時(shí)間思考一下么?這里簡單地說一下我的選擇:

    1、盡量使用單獨(dú)HACK

    這樣維護(hù)起來成本比較低,改動(dòng)不會(huì)影響其他的瀏覽器,而一旦有瀏覽器淘汰,只要搜索關(guān)鍵字,就可以批量去掉這些代碼。比如,ie6的單獨(dú)hack:

    _padding:6px;;

    2、向后兼容的目標(biāo):1年

    你想現(xiàn)在的網(wǎng)站兼容IE10么,誰不想,但這可預(yù)見性太低了,也可以說,成本太高了。暫時(shí)沒必要。不過,IE9可能要發(fā)布了,所以,選擇像

    padding:8px\0;

    這樣的IE8+的hack,在刪掉其他代碼不影響向后兼容上,會(huì)更好;并且,如果IE10出來,一旦支持這個(gè)hack,而又沒有這個(gè)bug,可能刪掉只影響2個(gè)瀏覽器,也會(huì)更方便;

    3、盡可能省資源

    你要是不考慮頁面加載速度,不考慮服務(wù)器承受能力的話,那在向后兼容和淘汰的處理上可以做得很完美(從代碼上),但這從某種程度上,不如不做。

  • 五、個(gè)人推薦寫法

    其實(shí)可以糾結(jié)的還真多,這里結(jié)合A-Grade瀏覽器的種類和HACK的種類,寫兩種個(gè)人認(rèn)為比較合理的HACK和向后兼容相兼顧的寫法,僅供大家參考的。

    本新聞共3頁,當(dāng)前在第1頁  1  2  3  

 
收藏】【打印】【進(jìn)入論壇
  相關(guān)文章:

·CSS3 Media Queries 詳解
·CSS實(shí)例教程:非浮動(dòng)區(qū)域設(shè)置寬度
·css的效率和瀏覽器渲染的速度
·小議使用“完整”的CSS的缺點(diǎn)
·關(guān)于CSS不透明的詳細(xì)介紹 
·CSS中設(shè)置段落間距的方法
·用css網(wǎng)站布局之十步實(shí)錄
·DIV+CSS布局代碼精簡對(duì)SEO的影響 
·CSS教程:網(wǎng)頁中英文字體的設(shè)置 
·css3文本陰影屬性text-shadow說明 
·css3陰影屬性box-shadow注意事項(xiàng) 

 
 
 
 
最新文章

中關(guān)村艷照門女主角詳記錄高清組圖 
大連護(hù)士門大尺度艷照高清組圖
iPhone女孩微博爆紅 最寶貴東西換iPhon
反恐精英之父內(nèi)維爾:改變電腦游戲銷售
團(tuán)購網(wǎng)站黎明之前:中國市場慘烈廝殺不
團(tuán)購鼻祖Groupon中國揭秘:快與慢的商業(yè)
Spil Games發(fā)布新的品牌形象
1800配置一臺(tái)主機(jī) 不要顯示器
聯(lián)想V360筆記本模特寫真
愛國者第四代移動(dòng)硬盤將面市、低電壓保

 
推薦文章
1
2
3
4
5
6
7
8
9
10
iPhone女孩微博爆紅 最寶貴東西換
大連護(hù)士門大尺度艷照高清組圖
中關(guān)村艷照門女主角詳記錄高清組
蘋果員工中毒門
宮如敏不雅照瘋傳 看張馨予韓一菲
深耕市場 永續(xù)經(jīng)營——專訪百腦匯
優(yōu)派專業(yè)電子書 讓您回家旅途多姿
揭曉百萬大獎(jiǎng)三星bada魅力綻放中
大明龍權(quán)“江湖英雄會(huì)”全國PK大
永恒之塔校園達(dá)人挑戰(zhàn)賽完美落幕
八卦圖解 More>>
iPhone女孩微博爆紅 最寶貴東西換 大連護(hù)士門大尺度艷照高清組圖
中關(guān)村艷照門女主角詳記錄高清組 宮如敏不雅照瘋傳 看張馨予韓一菲