第一種方法:* {margin: 0px;padding: 0px;}
花了一個多小時再找版面問題,如圖所示,紅色的地方一直消不掉最後發現是各家瀏覽器的問題....
Reset CSS – 重置歸零引用來源
各自為政的瀏覽器
網頁設計的標準(HTML & CSS)是由 W3C 協會所制定的,然而,各大瀏覽器為了展現自身的強大,都自行加入一些有的沒有的設定,造成咱們網頁設計師在排版的時候,就得依每個瀏覽器的不同,而多花好多時間來調整改寫 CSS 語法。
使用 CSS 最令人頭痛的部份就是各家瀏覽器的差異性太多了,用 CSS 寫好的網頁排版明明在 IE 6 看起來很正常,但是到了 Firefox 卻全變了樣,排版的位置都跑位了…. 更何況還有 IE7、IE 8、Safari、Opera、Google Chrome…這麼多種不同的瀏覽器,每一個看起來都是會跑位,很多網頁設計師因此而爆肝的不少!
關於 W3C 標準
造成這樣大差距,主因在於「W3C 所制定的 HTML 標籤在 CSS 中的預設值 」各大瀏覽器的支援程度都不太相同,基本上 Firefox 和 Google Chrome 是最聽話的一家,只要是 W3C 規定的 Firefox 和 Google Chrome 都會乖乖照辦,然而,最不聽話的就是 IE 瀏覽器,常常跟 W3C 唱反調,更慘的是還有 IE6、IE7、IE8、IE9 對於 CSS 的呈現都有些不太一樣啊….唉!
最佳的方法「Reset CSS」
世界知名的 CSS 大師「Eric A. Meyer」整理出一個很棒的解決方法「Reset CSS」,針對 CSS 語法最容易出問題的部份~例如 margin 外間距,各大瀏覽器最常發生不一致的狀況,現在將 margin 全部統一歸 0 ,其他部份,文字大小和行高也全部統成一樣的大小 …. 等,只要掛上這一段「Reset CSS」語法,就可以讓所有的各大瀏覽器乖乖聽話,呈現一樣的結果,CSS 的大同世界就在這裡啊!
/* v1.0 | 20080212 */
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, font, 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 {
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-size: 100%;
vertical-align: baseline;
background: transparent;
}
body {
line-height: 1;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
/* remember to define focus styles! */
:focus {
outline: 0;
}
/* remember to highlight inserts somehow! */
ins {
text-decoration: none;
}
del {
text-decoration: line-through;
}
/* tables still need 'cellspacing="0"' in the markup */
table {
border-collapse: collapse;
border-spacing: 0;
}