Normalize.css vs Reset.css

Normalize.css 相比于傳統(tǒng)的 CSS reset 來說旺拉,它是一種現(xiàn)代的价说、為HTML5準備的優(yōu)質替代方案。它使瀏覽器更佳一致的呈現(xiàn)所有元素胚鸯,并且符合現(xiàn)代標準骨稿,它只針對那些需要規(guī)范化的樣式。它非常非常的輕量級姜钳,以至于源代碼也只有 6KB 左右√构冢現(xiàn)在已經(jīng)被用于Twitter Bootstrap、HTML5 Boilerplate哥桥、GOV.UK辙浑、Rdio、CSS Tricks 以及許許多多其他框架拟糕、工具和網(wǎng)站上判呕。

概述

Normalize.css 是一個 CSS resets 代替方案倦踢。經(jīng)過 @necolas@jon neal 花了幾百個小時來努力研究不同瀏覽器的默認樣式的差異,這個項目終于變成了現(xiàn)在這樣侠草。

Normalize.css 的目標:

  • 保護有用的瀏覽器默認樣式而不是去掉它們辱挥;
  • 正常化樣式來服務于更多的 HTML 元素边涕;
  • 修復瀏覽器的 Bug并確保瀏覽器的一致性般贼;
  • 優(yōu)化可用性通過細微的改進;
  • 解釋代碼通過注釋和詳細的文檔奥吩;

它支持大部分瀏覽器(包括移動端瀏覽器),包括規(guī)范了 HTML5 元素蕊梧、排版霞赫、列表、嵌入內容肥矢、表單和表格的 CSS端衰。

盡管該項目基于規(guī)范化原則,但是還是在適合的地方使用了更佳實用的默認值甘改。

Normalize vs Reset

我們是有必要去了解更多的關于 Normalize 和傳統(tǒng)的 CSS resets 之間的區(qū)別的:

Normalize.css 保護有用的默認值

Resets 幾乎將所有元素的默認樣式重新設置旅东,強行將默認樣式設置了同樣的視覺效果。相比于 Normalize.css十艾,它保留了瀏覽器的許多默認樣式抵代。這意味著你不必為所有常見的排版元素重新聲明樣式。

當 HTML 元素在不同的瀏覽器中有不同的默認樣式時忘嫉,Normalize.css 的目的在于讓這些樣式更佳的一致并符合現(xiàn)代瀏覽器的標準荤牍。

Normalize.css 修復了瀏覽器的 Bug

它解決了桌面和移動端瀏覽器的常見 bug,當然這些 bug 超出了 Resets 的范圍庆冕。這些 bug 包括 HTML5 元素的顯示設置康吵、預格式化文本的字體大小、IE9 中 SVG 的溢出以及瀏覽器和操作系統(tǒng)中眾多表單相關的 bug访递。

例如晦嵌,下面是 Normalize.css 修復了 HTML5 input 的 search 類型的跨瀏覽器一致性和樣式的 bug:

/**
 * 1. Addresses appearance set to searchfield in S5, Chrome
 * 2. Addresses box-sizing set to border-box in S5, Chrome (include -moz to future-proof)
 */

input[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box; /* 2 */
  box-sizing: content-box;
}

/**
 * Removes inner padding and search cancel button in S5, Chrome on OS X
 */

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

Resets 通常錯誤的將所有瀏覽器都一致的設置元素的呈現(xiàn)方式。特別是對于表單來說拷姿,Normalize.css 會提供更佳重要的幫助惭载。

Normalize.css 不會讓你的調試工具雜亂無章

使用 Reset 時,最大的災難是在瀏覽器 CSS 調試工具中使用大段的繼承鏈响巢。

在 Normalize.css 中不會存在這樣的問題棕兼,因為在我們的準則中對多選擇器的使用是非常謹慎的,我們只會有目的地對元素設置樣式抵乓。

Normalize.css 是模塊化的

這個項目已經(jīng)拆分成多個相對獨立的部分伴挚,讓你更佳容易的區(qū)分哪些元素設置了特定的樣式靶衍。此外,它可以讓你去除你不需要的部分(例如茎芋,表單模塊)颅眶。

Normalize.css 擁有豐富的文檔

Normalize.css 的代碼是基于跨瀏覽器的設計和系統(tǒng)性的測試。它在 Github Wiki 上有詳細的文檔和說明田弥。這意味著你可以知道每一行代碼的意義:為什么有這些代碼涛酗、瀏覽器之間的不同并且可以簡單的運行在自己的測試中。

這個項目旨在幫助人們了解瀏覽器如何在默認情況下渲染元素偷厦,并且使得它們更佳容易參與和改進商叹。

如何使用

首先,安裝或者從 GitHub 中下載 Normalize.css只泼,接下來有兩種途徑來使用它:

  • 用 Normalize.css 當作你自己的基礎樣式剖笙,自定義樣式值來符合設計師的標準;
  • 引入 Normalize.css 源碼并從基礎上開始構建请唱,有必要時需要用到你自己的 CSS 覆蓋默認值弥咪。

結束語

Normalize.css 在適用范圍上與 CSS reset 上有很大的不同之處。我們值得嘗試一下十绑,看看它是否符合你的開發(fā)方式和偏好聚至。

〖堅強的一俢〗

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市本橙,隨后出現(xiàn)的幾起案子扳躬,更是在濱河造成了極大的恐慌,老刑警劉巖甚亭,帶你破解...
    沈念sama閱讀 207,248評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件坦报,死亡現(xiàn)場離奇詭異,居然都是意外死亡狂鞋,警方通過查閱死者的電腦和手機片择,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評論 2 381
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來骚揍,“玉大人字管,你說我怎么就攤上這事⌒挪唬” “怎么了嘲叔?”我有些...
    開封第一講書人閱讀 153,443評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長抽活。 經(jīng)常有香客問我硫戈,道長,這世上最難降的妖魔是什么下硕? 我笑而不...
    開封第一講書人閱讀 55,475評論 1 279
  • 正文 為了忘掉前任丁逝,我火速辦了婚禮汁胆,結果婚禮上,老公的妹妹穿的比我還像新娘霜幼。我一直安慰自己嫩码,他們只是感情好,可當我...
    茶點故事閱讀 64,458評論 5 374
  • 文/花漫 我一把揭開白布罪既。 她就那樣靜靜地躺著铸题,像睡著了一般。 火紅的嫁衣襯著肌膚如雪琢感。 梳的紋絲不亂的頭發(fā)上丢间,一...
    開封第一講書人閱讀 49,185評論 1 284
  • 那天,我揣著相機與錄音驹针,去河邊找鬼烘挫。 笑死,一個胖子當著我的面吹牛牌捷,可吹牛的內容都是我干的。 我是一名探鬼主播涡驮,決...
    沈念sama閱讀 38,451評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼暗甥,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了捉捅?” 一聲冷哼從身側響起撤防,我...
    開封第一講書人閱讀 37,112評論 0 261
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎棒口,沒想到半個月后寄月,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,609評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡无牵,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,083評論 2 325
  • 正文 我和宋清朗相戀三年漾肮,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片茎毁。...
    茶點故事閱讀 38,163評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡克懊,死狀恐怖,靈堂內的尸體忽然破棺而出七蜘,到底是詐尸還是另有隱情谭溉,我是刑警寧澤,帶...
    沈念sama閱讀 33,803評論 4 323
  • 正文 年R本政府宣布橡卤,位于F島的核電站扮念,受9級特大地震影響,放射性物質發(fā)生泄漏碧库。R本人自食惡果不足惜柜与,卻給世界環(huán)境...
    茶點故事閱讀 39,357評論 3 307
  • 文/蒙蒙 一巧勤、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧旅挤,春花似錦踢关、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至柒瓣,卻和暖如春儒搭,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背芙贫。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評論 1 261
  • 我被黑心中介騙來泰國打工搂鲫, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人磺平。 一個月前我還...
    沈念sama閱讀 45,636評論 2 355
  • 正文 我出身青樓魂仍,卻偏偏與公主長得像,于是被迫代替她去往敵國和親拣挪。 傳聞我的和親對象是個殘疾皇子擦酌,可洞房花燭夜當晚...
    茶點故事閱讀 42,925評論 2 344

推薦閱讀更多精彩內容