Don't use IDs in selectors??
使用CSS Lint检测自己的css文件时,下面报出了:Don't use IDs in selectors
不明白这个建议是为什么?在css不建议使用ID选择器??
然后这篇文章中找到了关于css Lint的简介,里面有这段:
不在选择符中使用ID标识符 (Don’t use IDs in selectors)
主要考虑到样式重用性以及与页面的耦合性。
在知乎上也有人提到这个来回答css优化的问题但是对于这个建议的提出还是不明白,能详细解释下什么是页面耦合性,样式重用性? 页面耦合性和ID选择器之间的关系??
谢谢:)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
新手个人见解
因为没学过Lint 但是学Bootstrap的时候 有看到过 我猜它的作用是 统一编辑bootstarp的CSS源码 从整体上定制
我觉问题的根 在CLASS 和 ID 的区别上
1.class的可以复用很多场合,减少重复定义,框架上的CSS都用CLASS 设置的标签上
2.ID的优先级很高 如果希望自己覆盖原有的CSS样式 就要重新定义一个新的ID ,自己重写一遍CSS样式,所以太依赖原有样式,耦合度高吧
1,
id
在一个文档中只能有一个,也就是说一旦有一个标签的id
设置了,其他人如果觉得合适想复用这个id
的样式是不可以的。2,
class
的作用是可以让你将很多公用的样式抽象在一个类里面,比如你自定义一类属性,美化button
,input
这些标签的默认样式,你只要定义一些.btn
,.input
类然后给这些标签使用,这些标签就会按你希望的方式展现,而且同一类就不要多次设置,只要修改其独特的属性3,
id
用多啦意味着你的命名需要更多的维护,更加小心,因为id
重复可以带来很多的副作用,而且因为id
是唯一的,设置过多的id
会导致重复的概率增加。4,从效果的角度来讲,无论
id
和class
都可以实现相同的效果,只是方式不一样而已,所以并没有严格要求一定不能使用id
,而且对于那些上层的标签或者唯一的某些样式,使用id是必要的,所以任何时候把握一个度就行