我并不认为规则集中CSS的顺序很重要,只要没有隐式重复规则(例如border
和border-top
)。
事实上,许多CSS样式指南推荐一个任意的顺序,如"按组"或"按字母顺序排列。"
但是,规则集中font
和line-height
的顺序可能会产生很大的不同:
div {border: 1px solid gray; float: left;}
#D1 {font: 20px arial; line-height: 3;}
#D2 {line-height: 3; font: 20px arial;}

<div id="D1">This is a test</div>
<div id="D2">This is a test</div>
&#13;
无单位行高应该是字体大小的乘数。
但为什么font
规则必须先于line-height
规则才会发生这种情况?
答案 0 :(得分:5)
尽管名称如此,line-height
实际上是font
shorthand的一部分。简写声明将line-height
设置为其初始值normal
,该值将覆盖您之前的line-height
声明。
为此,您可以将line-height
合并到速记中,如下所示添加#D3
元素:
div {border: 1px solid gray; float: left;}
#D1 {font: 20px arial; line-height: 3;}
#D2 {line-height: 3; font: 20px arial;}
#D3 {font: 20px/3 arial;}
&#13;
<div id="D1">This is a test</div>
<div id="D2">This is a test</div>
<div id="D3">This is a test</div>
&#13;