2012-01-22 22 views
0

1)我碰到THIS ARTICLE今天,其中规定:当父元素使用像素(px)时,为子元素定义相对字体大小是否可行?

与em值工作最常用的方法是对身体的 字体大小设定为62.5%。由于默认的浏览器字体大小为012px为16px,因此这会使其成为10px(而不会将其硬性设置为10px,而 不会级联)。

我刚才引用(上述)本质上意味着,我无法设置主体的字体大小直接10px的再定义基于在EM或%的其它元素的字体大小。这不正是它的意思,还是它错了?

例如,我有body {font-size: 10px;}。现在我设置了p {font-size: 1.4em;}。这是不是意味着,p的字体大小实际上是14px?这不是级联吗? (或者是这将会导致我在其它设备上的问题 - ? - 手机,平板电脑等)


2)对于任何给定元件,其限定如font-size或1.8em 180%没有差别什么都好,对吧?我的意思是,对于一个元素(其大小我们正在定义),em本质上是一个十进制形式的%,不是吗?


编辑:3)“时间”通常被称为非常适合移动设备的定型单元。怎么样 %?考虑到Q2,它同样好吗?

+0

嗯,它可能是“最流行的方法”,但这并不意味着你不能做那些不受欢迎的东西。 – BoltClock

+0

嗯,你试过了吗?它有用吗? –

+0

@BoltClock我不在乎它是否受欢迎。该方法实际上很有意义,它使事情变得更容易。但我想要更多的控制,直接使用10px。我讨厌任何“陷阱!”在这个过程中,以及我在这里问这个问题的原因。 –

回答

1

1)当文章中提到以像素为单位的字体大小“不会级联”时(这反映了对级联的误解),文章是错误的。如果你喜欢,你可以使用em%作为内部元素的字体大小。你会为它们设置字体大小的像素,只是间接。您获得的灵活性是,如果稍后更改以像素为单位设置的基本字体大小,事情会变得更加容易。另一方面,em%设置可能意味着四舍五入,在某些情况下,不同浏览器会对其进行不同处理。

如果你设置了body {font-size: 10px;} p {font-size: 1.4em;},那么(除非其他样式表干扰),的font-size将是14px。但是这与级联无关。这是单位和font-size的基本定义的结果。

2)对于font-size,1.8em180%具有相同含义的定义。由于浏览器与其他浏览器的错误,以前有理由赞成这一方或另一方,但这些考虑已经失去意义。

3)是的,使用%是一样好。

+0

只是最后一个问题。从你的答案中点(2) - *'由于浏览器与另一方的错误,原来有理由赞成这一方或另一方,但这些考虑已经失去了重要性。“*说安全的说IE7 +没有这些错误? –

+1

@ Kr1s,是的,我不希望看到这些日子仍在使用的浏览器中出现这样的错误。 –

相关问题