我对font-size
和line-height
基本的CSS规则很简单:如何实现正确的CSS行高度一致性
body {
font-family: Arial, Helvetica, sans-serif;
font-size: 16px;
line-height: 24px;
}
当我创建一个包含<em>
或<strong>
一个段落(甚至一些<code>
它使用与<body>
不同的font-size
),我注意到这些元素将行高增加了一个或两个像素。
这使我相信,大多数浏览器采取最大内联元素显示line-height
。是对的吗?
我的目标是使line-height
一致,无论哪些元素是内联的。
我发现使line-height
一致的唯一方法是定义:
em, strong, code, etc {
line-height: 100%;
}
这是去了解这个正确的方式?还是我太过完美主义者了?
编辑1:
这也似乎工作:
em, strong, code, etc {
line-height: 1;
}
编辑2:
玩这个了几天之后,它不会出现有一个可靠的解决方案来保持一致的line-height
。如果任何人有任何想法,我一定会喜欢听到他们。
编辑3:
对于我自己的未来参考,并从我自己的研究,这些标签应与line-height: 1
只要被视为他们直列以及其他标准的正文显示:
abbr, acronym, b, big, cite, code, del, dfn, em, i, ins, kbd, q,
samp, small, strong, sub, sup, tt, var
这些元素是有问题的:
a, bdo, img, span
优秀信息!那么'p * {line-height:0; }',或者更好,也许'p a,p代码,p大{line-height:0; }'?现在我们正在某个地方。 ';)' – Jeff 2009-10-13 17:40:37
后续到我最后的评论。上面的代码要小心。例如,如果您有'
foo
',则行高将计算为零,这可能不是您想要的。 – Jeff 2009-10-13 18:21:18