前端開發篇——瀏覽器默認樣式及css初始化


爲何要初始化css?

建站老手都知道,這是爲了考慮到瀏覽器的兼容問題,其實不一樣瀏覽器對有些標籤的默認值是不一樣的,若是沒對CSS初始化每每會出現瀏覽器之間的頁面差別。固然,初始化樣式會對SEO有必定的影響,但魚和熊掌不可兼得,但力求影響最小的狀況下初始化。css


相信不少人都曾經出現過多多少少的,有時候進行網頁佈局的時候,不知道爲何設置的網頁邊距老是達不到本身想要的效果。html

好比,我在這個屬性設置了60px,可是,它卻變成了92px.瀏覽器

image
image
image

查看了一下全部屬性,原來是瀏覽器默認加上去的。佈局

image

再看看,爲何我,沒加float以前是正常的。網站

加了float後變成不正常了,在這裏,我也沒有加margin屬性。spa

原來,是加了float使其脫離了文檔流code

而後,瀏覽器默認加上了margin-top: 16px和margin-bottom: 16px;而後60+16+16=92;orm

固然,還有不少相似的問題,這裏附上一些網站的默認css屬性 http://www.iecss.com/htm

那麼,應該怎麼樣解決這個問題呢?
  • 能夠在css加上
*{
    margin: 0;
    padding: 0;
}

有不少人也是這樣寫的。這確實很簡單,但有人就會感到疑問:*號這樣一個通用符在編寫代碼的時候是快,但若是網站很大,CSS樣式表文件很大,這樣寫的話,他會把全部的標籤都初始化一遍,這樣就大大的增強了網站運行的負載,會使網站加載的時候須要很長一段時間。blog

  • 還有就是把可能用上的屬性值加上,這裏引用了雅虎工程師提供的CSS初始化示例代碼
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,p,blockquote,th,td { margin:0; padding:0; }
body { background:#fff; color:#555; font-size:14px; font-family: Verdana, Arial, Helvetica, sans-serif; }
td,th,caption { font-size:14px; }
h1, h2, h3, h4, h5, h6 { font-weight:normal; font-size:100%; }
address, caption, cite, code, dfn, em, strong, th, var { font-style:normal; font-weight:normal;}
a { color:#555; text-decoration:none; }
a:hover { text-decoration:underline; }
img { border:none; }
ol,ul,li { list-style:none; }
input, textarea, select, button { font:14px Verdana,Helvetica,Arial,sans-serif; }
table { border-collapse:collapse; }
html {overflow-y: scroll;} 

.clearfix:after {content: "."; display: block; height:0; clear:both; visibility: hidden;}
.clearfix { *zoom:1; }

而後,每次寫css以前都加上這個就不用擔憂什麼問題了。

相關文章
相關標籤/搜索