填充顶部占宽度的百分比不起作用
Padding top as percentage of width not working
这是我的示例代码:
body {
margin: 0;
padding: 0;
border: 0;
background: #444;
}
#container {
width: 25px;
margin: auto;
margin-top: 2px;
padding-top: 1%;
border-bottom: 3px solid #58e;
background: #fff;
}
<div id="#container">text</div>
当我在 chrome 中 运行 并检查元素 div 的计算样式时,宽度如上定义为 25px,但 padding-top 为13.65px.
我知道 padding-top 是根据元素宽度的百分比计算的。所以它应该是 25px 的 1% 或者 2.5px。
为什么会变成 13.65px?
在 MDN 上进行填充:
Percentages refer to the width of the containing block [source]
这意味着百分比填充是根据 父元素 的宽度计算的,而不是元素本身。
在你的情况下,#container
的填充顶部是根据 <body>
的宽度计算的。
这是我的示例代码:
body {
margin: 0;
padding: 0;
border: 0;
background: #444;
}
#container {
width: 25px;
margin: auto;
margin-top: 2px;
padding-top: 1%;
border-bottom: 3px solid #58e;
background: #fff;
}
<div id="#container">text</div>
当我在 chrome 中 运行 并检查元素 div 的计算样式时,宽度如上定义为 25px,但 padding-top 为13.65px.
我知道 padding-top 是根据元素宽度的百分比计算的。所以它应该是 25px 的 1% 或者 2.5px。
为什么会变成 13.65px?
在 MDN 上进行填充:
Percentages refer to the width of the containing block [source]
这意味着百分比填充是根据 父元素 的宽度计算的,而不是元素本身。
在你的情况下,#container
的填充顶部是根据 <body>
的宽度计算的。