为什么不建议使用*{padding:0;margin:0;}进行reset?

funnyface
  • 130

如题!
看到很多人写法都是在css开头,把需要reset的元素单独列出来

body,div,span,a{
padding:0;
margin:0;
}

为什么不直接使用通配符呢?这样还节省代码量了~

*{
  margin:0;
 padding:0;
}
回复
阅读 7.1k
4 个回答
✓ 已被采纳

采用{pading:0;margin:0;}这样的写法好处是写起来很简单,但是是通配符,需要把所有的标签都遍历一遍,当网站较大时,样式比较多,这样写就大大的加强了网站运行的负载,会使网站加载的时候需要很长一段时间,因此一般大型的网站都有分层次的一套初始化样式(就如楼主自己举例的那样)

记得好像是因为各个浏览器的解析方式不同,有时候不能完全达到初始化的效果。

带星号的css会应用到每个标签,出于性能的考虑所以不建议使用吧。

Manix
  • 5
新手上路,请多包涵

完全是出于性能考虑,并不是所有标签都会有padding和margin,因此对常见的具有默认padding和margin的元素初始化即可,并不需使用通配符*来初始化。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏