我注意到,<按钮>标记似乎是从除字体大小以外缩放em单位。 <div>标记没有表现出这种相同的行为。 这是跨浏览器,Firefox和即最新版本。
他们都风格是这样的:
button, div {
width: 3rem;
height: 3em;
}
见这琴的一个例子。
如果我大小一个div和按钮都与3rem和3EM的高度的宽度,我希望他们是正方形,除非是影响他们中的一个,或祖先的字体大小样式。 唯一的字体大小是在<body>标记,但发生的事情是在div是正方形,但按钮具有比其宽度小的高度。
如果我检查镀铬按钮,它说,它继承了<body>标签的1EM字体大小,然而当我设置的字体大小显式地1EM(见小提琴)的问题得到解决。
任何人都可以向我解释这里发生了什么? 这感觉就像我失去了一些东西明显。
看来你的HTML按钮没有继承字体大小<body>
我相信很多的表单元素的行为(在某些浏览器至少)这样一来,虽然我没有文档。
我有成功的加入:
button {
font-size:inherit;
}
工作例
这到底是怎么发生的是,浏览器应用,导致用于减少字体大小默认浏览器的样式表button
元素。 这没有在说明书中描述,和减少的量可通过浏览器而有所不同。 你可以看到同样的事情发生对于input
元件,如<input type="text">
默认:字体大小是比周围文本较小(尽管这可能是很难看到,如果使用不同的字体的面孔,这是一个常见的默认值)。
在浏览器的开发者工具是不完美的。 例如,浏览器确实可维持font-size
一个的button
元件作为继承的,但是也示出了所计算的尺寸小。 的解释是,浏览器默认的样式表font: -webkit-small-control
的button
,这是真正的问题在这里设置。 关于继承的信息是不正确简单。
当设置font-size: 1em
(或者,等价地, font-size: 100%
的上button
元素,则覆盖默认设置。 这比设置有所好转font-size: inherit
,其中有略少广泛的浏览器支持。