3

我无法更改在正文中定义的跨度元素行高(我尝试使用!important,以及不同的行高表示法,包括字体/行高)。这是代码:

body {
    font: 16px/1.5 Arial, Helvetica, sans-serif;
}

.pageBody.oferta > .cnt .columns ul span {
    font-size: 9px;
    line-height: 1;
}

问题显然是我的 spans line-height 是 1.5

该 Web 开发工具的更多内容并没有显示来自 body 的继承覆盖它(然后它在 Web 开发工具中交叉)。网站上也有很多代码,但我认为它无论如何都不会影响行高(所以粘贴它会是很多垃圾邮件)。

编辑:我发现有趣的事情:当我应用大于 2 的行高时,它开始应用于跨度。

4

3 回答 3

11

设置line-height在块容器上,而不是span. 对于span,或者对于一般不可替换的内联元素,内容区域的高度取决于字体和浏览器,并且通常会为降序和升序做出规定;请参阅CSS 2.1 规范中的10.6.1 内联、非替换元素

即使对于一个div元素或其他块元素,用户设置可能会阻止您将高度调整到 9px,例如将最小字体大小设置为更大的值(Firefox 上的用户选项;作者不能覆盖)。

我不知道您是如何推断行高的,但我的 Firebug 说,对于根据您的示例构建的文档,计算的行高为 9px,但在“布局”窗格中,高度为 13px。这是正常的,符合 CSS 2.1 原则。

于 2012-05-16T10:53:44.530 回答
0

您在这里缺少定义示例的单位部分

于 2012-05-16T09:29:59.847 回答
0
span {
    line-height: 0.66; /* 66% of 1.5 ~= 1 
}

由于 line-height 值在嵌套元素上相乘,您可以使用0.66. 另一种覆盖值的方法是设置line-height: normal(但实际值会根据浏览器而变化

于 2012-05-16T09:38:25.650 回答