日期:2014-05-02  浏览次数:22217 次

文章简介:本css重置参考了normalize.css、bootstrap等,然后根据自己多年的经验进行了一些简单的整理并修改,以更适合自己目前的使用及一些大型项目的使用。

本css重置参考了normalize.cssbootstrap等,然后根据自己多年的经验进行了一些简单的整理并修改,以更适合自己目前的使用及一些大型项目的使用。

总的来说本css重置包括了三大部分,第一部分是常用的东西(包括常用元素及表单元素),第二部分是html5&css3,第三部分属于非常用标签,如果你对本css重置感兴趣的话,也可以根据你自己的项目需要对第二部分和第三部分进行删除。下面我再说下本重置的一些特色。

第一,标题部分采用的是line-height来实现标题于文字的间距,根据中英文有别,一般我们在实际项目中h2的大小为14px,高度为30px的居多。而如bootstrapnormalize.css面对的都是英文字体,所以他们默认设置的字体比中文的要大,且间距也比较大。

第二,根据我们常用的需求给ul添加了两个class样式,一个为has-style,顾名思义是拥有列表样式,因为我们在一开始重置了没有样式,但是偶尔有些时候我们又确实需要那个前面的小圆点,所以就有了这个class来还原;另一个为inline-style,即li浮动,不过一般和clearfix结合使用以清除浮动。

第三,对于normalize.css不支持的ie6,我们添加了class以支持。因为ie6不支持属性选择器,所以form表单元素的一些重置,我们在normalize.css基础上添加了class以支持。

第四,你可以根据自己的需要把你用不到的html5&css3或非常用标签的那部分直接删掉,以精简。

当然有些喜欢鱼,而有些人更喜欢渔,如果你是后者,那么可以看看normalize.css,那里有更多的代码注释给你明确的说明。

2012-10-18更新:因为tahoma这个字体12px看起来确实太小,然后鉴于在苹果的系统里面helvetica表现比较好,所以默认使用了helvetica和arial字体,而对于表单元素则使用tahoma字体,是因为这个字体能诡异的使表单元素看起来对得比较整齐。

2012-11-06更新:如果你的网站是一些博客类的或是需要贴代码类型的一般都会应用到pre这个元素,所以添加对pre的处理。

2012-12-20更新:根据soar反馈,里面pre重复了,然后type为search的样式也有点重复,最后placeholder那个要单独写,不能合并在一起,谢谢soar

@charset "utf-8";
/* -------------------------------------------------
* reset css
 * -------------------------------------------------
*/
html{
    height:100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
-webkit-font-smoothing:antialiased;
}
body{
margin:0;
padding:0;
background-color:#fff;
min-height:100%;
height:auto !important;
height:100%;
text-align:center;
color:#404040;
    font:12px/1.5 Helvetica,arial;
}
h1,h2,h3,h4,h5,h6,p,figure,form{
    margin:0;
}
table{
border-collapse:collapse;
border-spacing:0;
}
img{
border:0;
    vertical-align:middle;
    -ms-interpolation-mode: bicubic;
}
a{
text-decoration:none;
color:#29B4F0;
}
a:focus {
    outline: thin dotted;
}
a:hover{
    color:#017CB9;
text-decoration:underline;
}
/* hn */
h1{
font-size:16px;
line-height:36px;
}
h2{
font-size:14px;
line-height:30px;
}
h3{
line-height:24px;
}
h3,h4,h5,h6{
font-size:12px;
}
/* ul ol dl */
ul,li,ol{
    margin: 0;
padding:0;
list-style: none outside none;
}
ul.has-style li,ol li{
margin-left:25px;
}
ul.has-style li{
    list-style:disc;
}
ol li{
list-style:decimal;
}
ul.inline-style li{
float:left;
display:inline;
}
dl{
    margin-bottom: 18px;
}
dt{
    font-weight: bold;
}
dd{
    margin:0 0 0 9px;
padding:0;
}
svg:not(:root) {
    overflow: hidden;
}
/* clearfix */
.clearfix:before, .clearfix:after {
    content:"";
    display:table;