前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Reset CSS(CSS初始化)总结

Reset CSS(CSS初始化)总结

作者头像
用户1696846
发布2018-07-16 16:24:19
2.4K0
发布2018-07-16 16:24:19
举报
文章被收录于专栏:Android自学Android自学

市面上浏览器众多,各种浏览器对标签默认属性值的定义不尽相同。

那如何保持CSS在每个浏览器上的显示效果相同呢?这就涉及到了CSS初始化的问题。

熟话说,先破后立。CSS初始化的思想就是先把所有的默认值置为相同的,再把有需要的改成需要的值,这样所有浏览器的显示效果都会相同。但是CSS能控制的东西太多,如果这样写:

代码语言:javascript
复制

 *{ margin: 0; padding: 0; }

这样。。。简单是简单,但是一方面占用系统资源太大,另一方面,你把不需要置为0的标签也变成0了,这样后期使用的时候你还得一个一个的补回来。所以现在几乎没人会用这样的设置了。

我在网上找了一个前Yahoo前端工程师的CSS Reset和一个个人的CSS Reset,两个各有优缺点,先放在这里,以备后用。

Yahoo CSS Reset:

代码语言:javascript
复制

/*css reset code */
 
/****  文字大小初始化,使1em=10px *****/
body {
font-size:62.5%;
} /* for IE/Win */
html>body {
font-size:10px;
} /* for everything else */
 
/*字体边框等初始化*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {
 padding: 0;
 margin: 0;
 }
table {
 border-collapse: collapse;
 border-spacing: 0;
 }
fieldset,img {
 border: 0;
 }
 img {
 display:block;
 }
address,caption,cite,code,dfn,th,var {
 font-weight: normal;
 font-style: normal;
 }
ol,ul {
 list-style: none;
 }
caption,th {
 text-align: left;
 }
h1,h2,h3,h4,h5,h6 {
 font-weight: normal;
 font-size: 100%;
 }
q:before,q:after {
 content:'';
 }
abbr,acronym { border: 0;
 }
 
a {
text-decoration:none;
}


/*css reset code */
/****  文字大小初始化,使1em=10px *****/
body {
font-size:62.5%;
} /* for IE/Win */
html>body {
font-size:10px;
} /* for everything else */
/*字体边框等初始化*/
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {
 padding: 0;
 margin: 0;
 }
table {
 border-collapse: collapse;
 border-spacing: 0;
 }
fieldset,img {
 border: 0;
 }
 img {
 display:block;
 }
address,caption,cite,code,dfn,th,var {
 font-weight: normal;
 font-style: normal;
 }
ol,ul {
 list-style: none;
 }
caption,th {
 text-align: left;
 }
h1,h2,h3,h4,h5,h6 {
 font-weight: normal;
 font-size: 100%;
 }
q:before,q:after {
 content:'';
 }
abbr,acronym { border: 0;
 }
a {
text-decoration:none;
}

可以到我的GitHub的CSS项目下面下载。

关于CSS Reset的讨论我在知乎上看到一个帖子,讨论Normalize.css 与传统的 CSS Reset 有哪些区别?

上面说到:

Normalize.css 是改良派。他们提倡,各个元素都有其存在的道理,简单粗暴地一视同仁是不好的。body 那一圈确实挤压了页面的生存空间,那就改掉。士农工商,谁有谁的作用,给他们制定个规范,确保他们在任何浏览器里都干好自己的活儿。

这确实有道理,任何事情都不能一棒子打死,存在即合理。

我稍微看了一下Normalize.css,几乎把每个标签都重写了一遍,虽然内容很多,但是确实在使用的时候可以安心的使用标签本来的特性了。

Normalize.css我也Fork了一份到我的Github上面,就不发在这里了,欢迎点击查看和下载

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档