CSS reset

经常看很多项目都会有一个reset.css的文件,但却不知道有什么用,今天就好好聊聊这个吧。

首先要知道,不同核心的浏览器对CSS的解析效果呈现各异,导致所期望的页面效果跟浏览器的“理解”效果有偏差。css reset就是用来重置(复位)元素在不同核心浏览器下的默认值,尽量保证元素在不同浏览器下有相同的期望效果。

CSS reset(css重置)基本上是不需要的,至少可以说80%的的CSS reset都是没有必要的,反而增加了页面CSS 的重写,例如

*{margin:0;}

(破坏了很多UI的兼容性,比如说单复选框等)。

所以我们可以根据经验来总结一套自己的reset,如下:

/* 
html5doctor.com Reset Stylesheet
v1.4.1 
2010-03-01
Author: Richard Clark - http://richclarkdesign.com
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

body {
    line-height:1;
}

:focus {
    outline: 1;
}

article,aside,canvas,details,figcaption,figure,
footer,header,hgroup,menu,nav,section,summary { 
    display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    border:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted #000;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

hr {
    display:block;
    height:1px;
    border:0;   
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
}

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 12,290评论 1 91
  • 默认样式表 此样式表基于对当前UA实践的广泛研究,描述了所有HTML4元素的典型格式。鼓励开发人员在其实现中将其用...
    古朋阅读 1,662评论 0 9
  • 什么是css reset.? reset,重置。顾名思义,css reset就是重置样式。 为什么需要css re...
    歇歇阅读 3,819评论 1 14
  • 清风带晚凉, 素手理残妆。 对酒窗前月, 邀来琥珀光。
    尘埃落定1阅读 103评论 0 4
  • 我这里天就要黑了,那你呢? 我这里天气晴朗,那你呢? 我又开始写作了,那你呢? 我又开始跑步了,那你呢? 我好像已...
    拾凡时光阅读 167评论 0 1
  • 若不是儿时便深爱鲁迅先生的《从百草园到三味书屋》,谁会在这个冬雨绵绵的清晨坐上绿皮火车前往鲁迅故里呢?可...
    程佳平阅读 306评论 5 5
  • 你问我既然人 已经醉了 为何还要贪杯 你不懂 我只是想喝掉沉在 杯底的月亮 不然它就孤独着 跟天上的那颗一样 ——...
    段童阅读 73评论 0 2