漸進增強和優(yōu)雅降級之間的區(qū)別

漸進增強和優(yōu)雅降級之間的區(qū)別

大家好涩蜘,我是IT修真院成都分院第7期的學(xué)員韓建名,一枚正直純潔善良的WEB前端程序員熏纯。

今天給大家?guī)淼氖牵簼u進增強和優(yōu)雅降級之間的區(qū)別

目錄

1.背景介紹

2.知識剖析

3.常見問題

4.解決方案

5.編碼實戰(zhàn)

6.拓展思考

7.課后討論

8.參考文獻

1.背景介紹

漸進增強和優(yōu)雅降級是在CSS3出現(xiàn)之后才火起來的同诫。由于低級瀏覽器,(特)比(別)如(是)IE6等樟澜,不支持CSS3的瀏覽器误窖,但是CSS3的樣式又特別優(yōu)秀不忍放棄 ,所以在高級瀏覽器中應(yīng)用CSS3樣式秩贰,在低級瀏覽器只保證基本功能霹俺。

“漸進增強”是被Steven Champeon創(chuàng)造于2003年3月11日在奧斯汀的SXSW互動大會,并于2003年3月和6月間通過一系列Webmonkey教程文章的公布毒费。 (我找了半天資料丙唧,翻了下英文文章也只找到這段歷史,無奈臉)觅玻,谷歌公司是很支持這種開發(fā)方式的啊艇棕,我認為漸進增強不僅是一個前端開發(fā)思想,更加是一個程序開發(fā)思想串塑。

2.知識剖析

一,什么是漸進增強

在網(wǎng)頁開發(fā)中北苟,漸進增強認為應(yīng)該專注于內(nèi)容本身桩匪。一開始針對低版本的瀏覽器構(gòu)建頁面,滿足最基本的功能友鼻,再針對高級瀏 覽器進行效果傻昙,交互闺骚,追加各種功能以達到更好用戶體驗,換句話說,就是以最低要求妆档,實現(xiàn)最基礎(chǔ)功能為基本僻爽,向上兼容。以css為例贾惦,以下這種寫法就是漸進增強胸梆。

.box {

-webkit-border-radius: 10px;

-moz-border-radius: 10px;

border-radius: 10px;

}

二,什么是優(yōu)雅降級

在網(wǎng)頁開發(fā)中须板,優(yōu)雅降級指的是一開始針對一個高版本的瀏覽器構(gòu)建頁面碰镜,先完善所有的功能。然后針對各個不同的瀏覽器進行測試习瑰,修復(fù)绪颖,保證低級瀏覽器也有基本功能 就好,低級瀏覽器被認為“簡陋卻無妨 (poor, but passable)” 可以做一些小的調(diào)整來適應(yīng)某個特定的瀏覽器甜奄。但由于它們并非我們所關(guān)注的焦點柠横,因此除了修復(fù)較 大的錯誤之外,其它的差異將被直接忽略课兄。也就是以高要求牍氛,高版本為基準,向下兼容第喳。同樣以css為例糜俗,優(yōu)雅降級的寫法如下。

.box {

border-radius: 10px;

-moz-border-radius: 10px;

-webkit-border-radius: 10px;

}

三曲饱,漸進增強和優(yōu)雅降級的區(qū)別

講到這里悠抹,有同學(xué)肯定覺得這兩者好像區(qū)別不大,不就一個正著寫扩淀,一個倒著寫么楔敌?實現(xiàn)的效果不差不多?

我看完基本概念之后也很懵逼啊驻谆,不就是一個向上兼容卵凑,一個向下兼容么,實現(xiàn)的效果不都一樣嗎胜臊?有啥子區(qū)別嘛勺卢!

后來深入了解了之后才發(fā)現(xiàn)這兩者區(qū)別還是大大的有的。

容我一一道來呀象对!

從成本出發(fā)

1.如果你采用漸進增強的開發(fā)流程黑忱,先做一個基本功能版,然后針對各個瀏覽器進行漸進增加,增加各種功能甫煞。相對于優(yōu)雅降級來說菇曲,開發(fā)周期長,初期投入資金大抚吠。 你想一下不可能拿個基本功能版給客戶看呀常潮,多寒酸,搞不好一氣之下就不找你做了楷力,然后就炸了喊式。但是呢,也有好處弥雹,就是提供了較好的平臺穩(wěn)定性垃帅,維護起來資金小, 長期來說降低開發(fā)成本剪勿。

2.那采用優(yōu)雅降級呢贸诚,這樣可以在較短時間內(nèi)開發(fā)出一個只用于一個瀏覽器的完整功能版,然后就可以拿給PM找客戶談呀厕吉,可以拿去測試酱固,市場試水呀,對于功能尚未確定的 產(chǎn)品头朱,優(yōu)雅降級不失為一種節(jié)約成本的方法运悲。

從技術(shù)出發(fā)

前綴CSS3(-webkit- / -moz- / -o-*)和正常CSS3在瀏覽器中的支持情況是這樣的:

1.很久以前:瀏覽器前綴CSS3和正常CSS3都不支持;

2.不久之前:瀏覽器只支持前綴CSS3项钮,不支持正常CSS3班眯;

3.現(xiàn)在:瀏覽器既支持前綴CSS3,又支持正常CSS3烁巫;

4.未來:瀏覽器不支持前綴CSS3署隘,僅支持正常CSS3.

.transition { /*漸進增強寫法*/

-webkit-border-radius:30px 10px;

-moz-border-radius:30px 10px;

border-radius:30px 10px;

}

.transition { /*優(yōu)雅降級寫法*/

border-radius:30px 10px;

-moz-border-radius:30px 10px;

-webkit-border-radius:30px 10px;

}

從技術(shù)出發(fā)

按理說這兩種寫法效果應(yīng)該是一樣的,但是我們現(xiàn)在瀏覽器停留在操蛋的第三階段亚隙,也就是現(xiàn)在磁餐,既支持前綴寫法,又支持正常寫法阿弃,這樣就要出問題了诊霹。

當屬性超過一個參數(shù)值的時候,不同屬性產(chǎn)生的作用是不一樣的!

點擊鏈接查看效果

可以看到渣淳,采用優(yōu)雅降級的寫法脾还,如果一個瀏覽器同時支持前綴寫法和正常寫法,后面的舊版瀏覽器樣式就覆蓋了新版樣式入愧,出現(xiàn)一些奇怪的問題 鄙漏,但是用漸進增強的寫法就不存在這個問題赛蔫。這種屬性不止border-radius一個,所以為了避免這個不必要的錯誤泥张,建議大家都采用漸進增強的寫法。

3.常見問題

漸進增強和優(yōu)雅降級如何抉擇

4.解決方案

如果開發(fā)時間充裕鞠值,開發(fā)資金到位媚创,就不存在抉擇這個問題了,肯定是漸進增強好呀彤恶!

但是現(xiàn)實往往很骨感钞钙。

這個時候,就要看你開發(fā)產(chǎn)品的受眾声离,受眾使用的客戶端芒炼。如果受眾年齡覆蓋面廣,客戶端從移動到平板到電腦术徊,比如淘寶這種頁面本刽,那沒得選,老老實實選漸進增強赠涮。

如果受眾客戶端單一子寓,例如一個移動端頁面,再漸進增強PC端就沒那么重要了笋除。

各有優(yōu)勢斜友,但現(xiàn)實是絕大多數(shù)公司采用的都是漸進增強方式,畢竟業(yè)務(wù)優(yōu)先垃它,體驗不會凌駕在業(yè)務(wù)上鲜屏。

開發(fā)個人網(wǎng)站?隨便你怎么用啦国拇,你開心就好咯洛史。

5.編碼實戰(zhàn)

這節(jié)沒啥可實戰(zhàn)的鸵钝,或者說實戰(zhàn)起來太大祖屏,大家碼代碼的時候都試試就好郁稍。

6.課后討論

大家學(xué)習(xí)過程中有沒有遇到其他類似如上的border-radius的屬性门躯?

7.參考文獻

《需警惕css3屬性的書寫順序》 --張鑫旭

《認識優(yōu)雅降級和漸進增強》 --Angus

《漸進增強 VS 優(yōu)雅降級》 -- 康斌

鳴謝

感謝大家觀看


css漸進增強和優(yōu)雅降級_騰訊視頻
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末脖祈,一起剝皮案震驚了整個濱河市哭当,隨后出現(xiàn)的幾起案子岸更,更是在濱河造成了極大的恐慌秕豫,老刑警劉巖陕习,帶你破解...
    沈念sama閱讀 206,126評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件霎褐,死亡現(xiàn)場離奇詭異,居然都是意外死亡该镣,警方通過查閱死者的電腦和手機冻璃,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評論 2 382
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人省艳,你說我怎么就攤上這事娘纷。” “怎么了跋炕?”我有些...
    開封第一講書人閱讀 152,445評論 0 341
  • 文/不壞的土叔 我叫張陵赖晶,是天一觀的道長。 經(jīng)常有香客問我辐烂,道長遏插,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,185評論 1 278
  • 正文 為了忘掉前任纠修,我火速辦了婚禮胳嘲,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘扣草。我一直安慰自己了牛,他們只是感情好,可當我...
    茶點故事閱讀 64,178評論 5 371
  • 文/花漫 我一把揭開白布德召。 她就那樣靜靜地躺著白魂,像睡著了一般。 火紅的嫁衣襯著肌膚如雪上岗。 梳的紋絲不亂的頭發(fā)上福荸,一...
    開封第一講書人閱讀 48,970評論 1 284
  • 那天,我揣著相機與錄音肴掷,去河邊找鬼敬锐。 笑死,一個胖子當著我的面吹牛呆瞻,可吹牛的內(nèi)容都是我干的台夺。 我是一名探鬼主播,決...
    沈念sama閱讀 38,276評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼痴脾,長吁一口氣:“原來是場噩夢啊……” “哼颤介!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起赞赖,我...
    開封第一講書人閱讀 36,927評論 0 259
  • 序言:老撾萬榮一對情侶失蹤滚朵,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后前域,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體辕近,經(jīng)...
    沈念sama閱讀 43,400評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,883評論 2 323
  • 正文 我和宋清朗相戀三年匿垄,在試婚紗的時候發(fā)現(xiàn)自己被綠了移宅。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片归粉。...
    茶點故事閱讀 37,997評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖漏峰,靈堂內(nèi)的尸體忽然破棺而出糠悼,到底是詐尸還是另有隱情,我是刑警寧澤浅乔,帶...
    沈念sama閱讀 33,646評論 4 322
  • 正文 年R本政府宣布绢掰,位于F島的核電站,受9級特大地震影響童擎,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜攻晒,卻給世界環(huán)境...
    茶點故事閱讀 39,213評論 3 307
  • 文/蒙蒙 一顾复、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧鲁捏,春花似錦芯砸、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至动羽,卻和暖如春包帚,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背运吓。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評論 1 260
  • 我被黑心中介騙來泰國打工渴邦, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人拘哨。 一個月前我還...
    沈念sama閱讀 45,423評論 2 352
  • 正文 我出身青樓谋梭,卻偏偏與公主長得像,于是被迫代替她去往敵國和親倦青。 傳聞我的和親對象是個殘疾皇子瓮床,可洞房花燭夜當晚...
    茶點故事閱讀 42,722評論 2 345

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

  • 一、背景介紹 在前端開發(fā)過程中产镐,如果有注意的話隘庄,發(fā)現(xiàn)有些寫css3屬性時,兼容性的寫法順序不太一樣磷账。比如trans...
    8778188a234f閱讀 678評論 0 3
  • 大家好峭沦,我是IT修真院成都分院第5期的學(xué)員,一枚正直純潔善良的web程序員 一.背景介紹: 漸進增強和優(yōu)雅降級是在...
    張王王閱讀 720評論 0 0
  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案逃糟? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽?zāi)J的外補...
    _Yfling閱讀 13,728評論 1 92
  • 今天給大家分享一下,深度思考中的知識點——漸進增強和優(yōu)雅降級有什么不同菇肃? 一地粪、背景介紹在前端開發(fā)的過程中,經(jīng)常需要...
    南木小屋閱讀 1,886評論 0 2
  • 長這么大琐谤,你都送出過什么禮物呢蟆技,又收到過什么禮物呢? 記得前些日子斗忌,看過一則新聞质礼,提到以下小故事,關(guān)于禮物的故事织阳,...
    Angus20閱讀 1,275評論 33 28