我最近一直在清理别人制作的凌乱的CSS模板.除此之外,还有许多未使用的类,要合并的重复选择器等等.
有一点我不确定:空的声明块.有10-20个选择器没有附加任何样式信息.
小片1:
/* Thead */
thead th {padding: .5em .4em; text-align: left;}
thead td {}
/* Tbody */
tbody td {padding: .5em .4em;}
tbody th {}
tbody .alt td {}
tbody .alt th {}
/* Tfoot */
tfoot th {}
tfoot td {}
摘录2:
#extras ul {
list-style: none;
margin: 0;
}
#extras li {}
这些空的声明是否有用?我的猜测是,他们是占位符,以防设计师想要回来添加一些东西.
如果我完全删除这些陈述,该网站看起来“很好”,但理想情况下,在我承诺之前我会有一个直接的答案.
搜索尝试大多出现了对:empty伪类的讨论.
MDN’s CSS reference陈述以下内容,但并未完全回答这个问题:
A declaration block may be empty, that is containing null declaration.
这里有一个我失踪的目的吗?
最佳答案 具有空声明块的规则对浏览器没有任何意义.相反,它们会使页面加载速度稍慢.您可以删除它们而不更改结果.
我在处理CSS时经常创建空规则,但通常在页面生成时删除它们.有时甚至在发布代码时也会留下一些空的规则.
在CSS中有大约10-20个空规则并不会产生显着的差异.它可能会减慢页面的加载速度几毫秒,因此本身无法测量,但您应该自然地保持代码尽可能干净.在这里刮掉几毫秒就可以了.