1

我正在查看的 CSS 如下所示:

header .logo {
    text-align: center;
    line-height: 77px;
    font-size: 4em;
    font-weight: bold;
    font-family: "Segoe UI Web Light", "Segoe UI Light", "Segoe UI Web Regular", "Segoe UI", "Segoe UI Symbol", "Helvetica Neue", Arial;
}

有人可以告诉我,如果我转向移动设备,这是否可能是个问题?我是否应该始终在 em 大小的 line-height 内包含 em 大小的字体?

4

3 回答 3

1

px单位和单位有很大的不同empx单位表示一个像素,它是一个相对概念,可能会因表示设备而异(详细说明请参见CSS值和单位模块级别 3),而em当用于font-size属性值时,单位表示字体大小父元素。该大小因上下文、应用的 CSS 规则等而异,最终由用户控制。所以它可以是任何东西。如果您假设em某物以像素为单位,那么该假设在某些情况下将不可避免地失败;如果你假设一个特定的大小,为什么不使用px整个?

因此,您应该设置font-sizeline-height使用相同的单位或使用具有固定、明确定义的关系的单位。通常,您应该将两者都设置为em单位,或两者都设置为px单位,以确保它们适合在一起。但是,如果您在 中设置字体大小,您可以使用纯数字line-height,例如,因为除了继承问题之外,纯数字有效地作为隐含单位。line-height: 1.2emem

例如,要么

line-height: 77px;
font-size: 64px;

或者

line-height: 1.2em;
font-size: 4em;

会是一致的。

于 2013-10-08T07:31:39.533 回答
0

em单位是:

等于使用它的元素的 'font-size' 属性的计算值。

这就是规范所说的。

因此,在您的情况下,它将比通常继承font-size的大四倍(4emline-height ),并且始终77px

根据您想要实现的目标,您通常应该放弃您的方法,因为无论您如何font-size更改,line-height都将始终保持不变。我建议line-height在 em 中设置。
就个人而言,我em很少使用单位。我尝试始终与px. 我做了很多响应式设计。

于 2013-10-08T06:56:19.530 回答
0
In theory, the em unit is the new and upcoming standard for font sizes on the web

我认为在这里使用em不是一个好主意,特别是当您的查看设备范围为normal computer screen to a mobile device

比较 EM、PX、PT 和 %

在这里,您的 Line height 保持为 77px,但 em 的大小将根据查看设备而变化。

于 2013-10-08T07:03:24.087 回答