<style>
body {
font-size: 14px;
}
</style>
<body>
Text outside table.
<table>
<tr><td>Text inside table.</td></tr>
<tr><td>Text inside table.</td></tr>
<tr><td>Text inside table.</td></tr>
</table>
</body>
我正在尝试为我的网站指定基本字体大小,因此在其他地方我可以使用百分比或 em 来指定大小。
上面的html代码,没有body
样式字体将具有相同的大小。但是,为什么用 font-size
在 body
像上面的样式,只有“表格外的文本”。受到尺寸变化的影响? <body>
不都是封装的吗? ?
我需要添加
table {
font-size: 1em;
}
为了使我的表格中的字体遵循body
的字体大小。为什么我的其他情况不是这样 <div>
在我的页面上?那些<div>
我们确实关注了body
的 font-size
很好。
最佳答案
您的页面正在 Quirks Mode 中呈现,可能是因为它缺少 doctype
字符串开头或以 doctype
开头字符串解释为非标准。
它是怪癖模式的一部分,即使在“HTML5 怪癖模式”(试图标准化一些常见的怪癖)的有限意义上,表格也不会继承字体属性。这是在 HTML 5 中关于 rendering tables 的子句中正式定义的.那里的定义使用了 initial
关键字,这还不是很标准,但它只是表示 CSS 规范中定义的属性的初始值。对于 font-size
, 它确实是 medium
.
如果这是一个旧页面,最好接受这些怪癖并只显式声明表格的字体属性,例如与
body, table { font-size: 14px }
(并不是说我会推荐这种不灵活的做法)。
如果这是关于您正在创建的新页面,请输入 <!doctype html>
一开始就使用“标准”HTML 和 CSS。
关于html - 为什么除非我添加 1em,否则正文中的字体大小不会影响表格中的字体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20312426/