网站优化之 CSS 文件优化措施
选择器选用的优化措施
根据样式表匹配规则,选择器的匹配是从左往右进行匹配的,所以,选择器规则越长则匹配实践越长。因此,选择器选用的优化措施最主要的原则就是,尽量使选择器具有唯一性,减少使用子孙或祖先选择器。
尽量不要使用通用选择器,比如最常用的* {...}
。
尽量不要为 id 指配特定的标签。
id 选择器在同一页面只能使用一次,所以此条规则容易理解。
button#backButton {…} /* Bad */
.menu-left#newMenuIcon {…} /* Bad */
#backButton {…} /* Good */
#newMenuIcon {…} /* Good */
尽量不要为 class 指配特定的标签。
尽管 class 选择器可以在同一页面多次使用,但是相对于 HTML 标签来说也算是具有唯一性的,所以此条规则也不难理解。
treecell.indented {…} /* Bad */
.treecell-indented {…} /* Good */
.hierarchy-deep {…} /* Best */
标签分类器尽量不要包含子孙标签分类器。
treehead treerow treecell {…} /* Bad */
treehead > treerow > treecell {…} /* BETTER, BUT STILL BAD */
.treecell-header {…} /* Good */
对所有的子孙选择器都判断能否不用子孙选择器。
ul li {color: blue;} /* Not so Good */
ol li {color: red;} /* Not so Good */
.unordered-list-item {color: blue;} /* Better */
.ordered-list-item {color: red;} /* Better */
尽量利用继承属性。
对于非连接的元素尽量不要使用 :hover
伪选择器。
尽量减少使用表达式(expressions),可以是用 javascript 代替。
样式表位置的选择
- 对于外部的样式表文件(如 style.css)尽量放在
<head>
标签内,且使用<link>
标签来加载,少用@import
。 - 对于行内的样式规则(如
style="..."
),也要尽量将其放置到<head>
标签内。
参考链接
上一篇: HTML/CSS 图片下方有空隙
下一篇:Python 学习笔记