CSS:100%的字体大小
关于百分比大小和其他大小的字体有很多文章和问题。 但是,我无法找出百分比值的参考应该是什么。 我知道这在所有浏览器中都是相同的大小。 我也读过这个例子:
百分比(%):百分比单位很像“em”单位,除了一些基本差异。 首先,当前字体大小等于100%(即12pt = 100%)。 在使用百分比单位时,您的文字对于移动设备和辅助功能仍可完全扩展。
资料来源:http://kyleschaeffer.com/best-practices/css-font-size-em-vs-px-vs-pt-vs/
但是如果你说“ie 12 pt = 100%”,那么这意味着你首先必须定义font-size: 12pt
。 它是如何工作的? 您首先以绝对衡量尺寸定义尺寸,然后将其称为“100%”? 没有多大意义,因为许多样本认为它是有用的:
body {
font-size: 100%;
}
所以通过这样做,相对于字体大小是什么? 我注意到,我在屏幕上看到的尺寸因字体而异。 例如,Arial看起来比Times New Roman更大。 另外,如果我只是这样做,身体大小= 100%,这是否意味着它将在所有浏览器上都一样? 或者只有当我第一次定义绝对值?
更新,SAT 7月23日
我到达那里,但请耐心等待。
因此,如果我理解正确,%值与默认浏览器字体大小相关。 那很好,但又给了我几个其他问题:
font: 100% Georgia;
,浏览器需要多大? 它会查找serif的标准大小,还是使用“Georgia”字体作为浏览器的标准大小 Sizing text and line-height in ems, with a percentage specified on the body [..], was shown to provide **accurate, resizable text across all browsers** in common use today
比如Sizing text and line-height in ems, with a percentage specified on the body [..], was shown to provide **accurate, resizable text across all browsers** in common use today
。 但是从我现在学习的内容来看,我相信你应该在可调整大小的文本(使用%或em,比如他们在本文中推荐的内容)或跨浏览器'精确,一致的字体大小(通过使用px或作为基地)。 它是否正确? Google设置:
这就是我认为,如果不以绝对值定义大小,情况可能会如此。
Firefox的浏览器默认值为16pt,您可以进入Firefox选项,单击“内容”选项卡并检查字体大小来进行检查。 你也可以为其他浏览器做同样的事情。
我个人喜欢控制我的网站的默认字体大小,因此在每个页面包含的CSS文件中,我将设置BODY默认值,如下所示:
body {
font-family: Helvetica, Arial, sans-serif;
font-size: 14px
}
现在,所有HTML标签的字体大小将继承14px的字体大小。
假设我想要一个所有div的字体大小比身体大10%,我只需要:
div {
font-size: 110%
}
现在任何查看我的页面的浏览器都会自动使所有div比body的大10%,这应该是15.4px。
如果我希望所有div的字体大小缩小10%,我可以这样做:
div {
font-size: 90%
}
这将使所有div的字体大小为12.6px。
你也应该知道,由于字体大小是继承的,每个嵌套的div将减少10%的字体大小,所以:
<div>Outer DIV.
<div>Inner DIV</div>
</div>
内部div的字体大小为11.34px(12.6px的90%),这可能并不是预期的。
这可以帮助解释:http://www.w3.org/TR/2011/REC-CSS2-20110607/syndata.html#value-def-percentage
我的理解是,当字体设置如下
body {
font-size: 100%;
}
浏览器将根据该浏览器的用户设置呈现字体。
规范说明%呈现
相对于父元素的字体大小
http://www.w3.org/TR/CSS1/#font-size
在这种情况下,我认为这是指浏览器设置的内容。
font-size
属性值的百分比是相对于父元素的字体大小 。 CSS 2.1说这种模糊和混淆(指“继承字体大小”),但CSS3文本说得很清楚。
body
元素的父元素是根元素,即html
元素。 除非在样式表中设置,否则根元素的字体大小取决于实现。 它通常取决于用户设置。
在许多情况下设置font-size: 100%
是毫无意义的,因为如果没有样式表设置自己的字体大小,则元素会继承其父级的字体大小(导致相同的结果)。 但是,覆盖其他样式表(包括浏览器默认样式表)中的设置会很有用。
例如, input
元素通常在浏览器样式表中设置一个设置,使其默认字体大小小于复制文本的大小。 如果你想让字体大小相同,你可以设置
输入{font-size:100%}
对于body
元素,逻辑冗余设置font-size: 100%
经常使用,因为它被认为有助于防止一些浏览器错误(可能已经失去其重要性的浏览器)。
上一篇: CSS: 100% font size