为什么我不能降低此文本的行高?

时间:2012-10-12 03:28:15

标签: css em

http://jsfiddle.net/mJxn4/

这很奇怪:我在<em>标签中包含了几行文字。无论我做什么,将line-height的值降低到17px以下都没有效果。我可以将line-height 上升大于17px,它会适用,但我不能低于17px。

有问题的CSS是:

#others .item em {
    font-size: 13px;
    line-height: 17px;
}

尝试调整高度和低度的行高,并在每次更改后运行更新的小提琴,你会看到我的意思。

为什么会这样?在CSS中的任何其他位置都没有指定line-height,因此没有任何内容覆盖它。无论如何情况都不是这样,因为我在同一个选择器中调整line-height向上和向下,所以没有意义可以应用更高的值,但是较低的价值会被覆盖。

6 个答案:

答案 0 :(得分:57)

因为em标记是内联的,其行高不能低于其父div

例如,如果将父级的行高设置为10px,那么您也可以将em标记的行高减少到10px。

答案 1 :(得分:12)

为了使line-height属性起作用,div应该具有等于block

的显示属性
.app-button-label{
    line-height: 20px;
    display: block;
 }

答案 2 :(得分:11)

我在移动视图中遇到了div这个问题 - 线路高度太大而且线路高度不起作用!我设法通过添加&#34; display:block&#34;来完成它的工作,按照以下建议:Why isn't the CSS property 'line-height' letting me make tight line-spaces in Chrome?

希望这可以帮助其他未来面临同样问题的人

答案 3 :(得分:0)

您似乎在jsfiddle中使用normalized css选项 - 等同于重置的CSS规则 - ala http://meyerweb.com/eric/tools/css/reset/

您可以重置重置,如果确实需要,可以使用其他重置。

请点击此处了解更多详情:

http://sixrevisions.com/css/a-comprehensive-guide-to-css-resets/

答案 4 :(得分:0)

最好的方法是使用css reset。

自己编写或使用

等受欢迎的版本

http://meyerweb.com/eric/tools/css/reset/

答案 5 :(得分:-2)

最简单的方法是指定具有更高优先级的行高,例如你可以写:line-height:14px!important;

如果仍然没有工作设置高优先级,你想要降低行高(内联css)并放入body css ..记住高优先级(!important;)因为它覆盖任何其他未知的CSS规则。

希望这有帮助

艾哈迈德