【发布时间】:2013-12-22 00:58:53
【问题描述】:
我正在创建一些 HTML/CSS 来显示一个键,但如果标题的文本与项目的文本相比,最终会出现奇怪的垂直错位。
经过大量实验,我发现问题似乎只在文本加粗时才会出现,而且只有在使用 Lucida Sans 字体时才会出现。
你可以在这里看到这个问题的演示......http://jsfiddle.net/Ufa69/
HTML...
<div class="key">
<div class="t1">title:</div>
<div class="item">item</div>
<div class="item">item</div>
<div class="item">item</div>
</div>
<div class="key">
<div class="t2">title:</div>
<div class="item">item</div>
<div class="item">item</div>
<div class="item">item</div>
</div>
CSS...
body {
font-family: "Lucida Grande","Lucida Sans","Arial",sans-serif;
}
.key {
padding: 2px;
font-size: 10px;
overflow: hidden;
border: 1px solid #666666;
background: #eeeeee;
margin-bottom: 4px;
}
.t1, .t2 {
float: left;
margin-right: 4px;
}
.t2 {
font-weight: bold;
}
.item {
float: left;
margin-right: 4px;
}
在演示中,您会看到文本在第一个 div 中正确对齐,但在第二个 div 中未对齐。两者的唯一区别是第二个使用了粗体。
您可能会想,“所以,使用不同的字体”。
但有一个问题 - Lucida Sans 是 jQuery UI 的默认字体。
所以我希望一些聪明的 CSS-guru 可以找到另一种方法来让这个文本在粗体时表现正确。
(我在 Chrome、Firefox 和 Safari 的 Windows 上会出现这个问题,但在 IE 上不会出现)
【问题讨论】:
-
在 Win 7 上,在 Chrome 中,粗体文本明显高于基线,但在 Firefox (26.0) 中。