成為前端工程師-Day13之網站排版(CSS Reset)

清除瀏覽器預設樣式-CSS Reset

Posted by     "Brady Yang" on Thursday, July 28, 2022

身為一個前端開發人員,確保所有瀏覽器都呈現我們的設計,算是一個基本的要求。 以下我寫了一個簡單的Hello Web並使用4個不同的瀏覽器開啟HTML。 可以發現好像有些瀏覽器呈現出來的效果不太一樣。右邊兩個瀏覽器的字體好像比較粗。

因為瀏覽器本身會提供網站基本的CSS的樣式,而每個瀏覽器都有他們自己的CSS風格,因此造成部分網頁效果會不相同。 這時,我們就可以使用CSS Reset,清空所有瀏覽器的CSS效果,再依照我們的設計來加入CSS。

meyerweb

meyerwebEric A. Meyer 的個人網站,其整理出一份世界上多數人常用的CSS檔案,可以將瀏覽器上所有的CSS都清空。 以下CSS語法為該網站提供,只需要將其套用到網站即可。

不知道怎麼套用的朋友可以參考Day8 內的 “如何在網頁內加入CSS”

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

總結

今天主要介紹了CSS Reset,其實有很多CSS Reset的方法,甚至也可以自己去寫CSS Reset。

除了CSS Reset另一個常用的是Normalize CSS。 Normalize CSS主要是會保留一些常見CSS樣式的設定,像<h1>之類的常用的標籤。而不會將全部CSS都清除掉,這部分就沒多做介紹了。 清除預設樣式後,我們就要學習設計排版的小技巧了。