(1) 样式声明中的堆栈选择器,(2) HTML 标记中的堆栈类,或 (3) 唯一选择器中的堆栈重复声明是否更好/更快?
为了澄清我的问题,我将向您展示每个示例。每段代码都应该完成相同的最终目标,但我不确定最终加载速度是否会更快,或者这只是一个偏好问题。
1(类选择器重复):
<style>
.one, .two, .three {color:white}
.one, .two {background:blue;height:30px}
.one, .three {width:800px}
.two, .three {font-size:16pt}
.one {font-size:10pt}
.two {width:650px}
.three {background:#333}
</style>
<div class="one"></div>
<div class="two"></div>
<div class="three"></div>
2(内联类重复):
<style>
.white {color:white}
.bluebg {background:blue}
.heightThirty {height:30px}
.widthEight {width:800px}
.sizeSixteen {font-size:16pt}
.one {font-size:10pt}
.two {width:650px}
.three {background:#333}
</style>
<div class="one white bluebg heightThirty widthEight"></div>
<div class="two white bluebg heightThirty sizeSixteen"></div>
<div class="three white widthEight sizeSixteen"></div>
3(声明重复):
<style>
.one {color:white; background:blue; height:30px; width:800px; font-size:10pt}
.two {color:white; background:blue; height:30px; font-size:16pt; width:650px}
.three {color:white; width:800px; font-size:16pt; background:#333}
</style>
<div class="one"></div>
<div class="two"></div>
<div class="three"></div>
我曾经使用第三种方法创建站点,但我发现很难更改值,例如,如果我决定更改站点的配色方案。我将不得不进行查找/替换background:blue
并将其更改为其他内容(但如果我不够一致,查找/替换可能会证明无效)。现在我使用第一种和第二种方法的组合,并优先使用第一种。我决定哪些元素应该共享样式声明,并在样式表中将它们组合在一起。
第一种方法使用较少的字符(至少在这个例子中),所以我知道它会生成一个更小的文件大小的 HTML 文件,但我不确定加载时间;可能还有其他我不知道的事情。
有没有应该使用的方法?我已经指出了第三种方法可能带来的问题,但是还有其他我不知道的问题(任何三种)吗?