CSS reset

作者: Aoyi_G | 来源:发表于2017-06-15 16:18 被阅读0次

    经常看很多项目都会有一个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;
    }
    

    相关文章

      网友评论

          本文标题:CSS reset

          本文链接:https://www.haomeiwen.com/subject/kshuqxtx.html