背景:我使用了流行的box-sizing: border-box
全局CSS设置,发现该规则无法遍历<details>
元素。
我已经将这个问题提炼为一个显而易见的最小示例:<details>
元素设置了几个样式,而<div>
子元素试图继承其中的一些样式。
我注意到继承不适用于任何样式属性(box-sizing
,border
等)。就好像<details>
元素不被认为是<div>
的父元素一样。但是,哪个元素是div的父元素呢?
我错过了什么,还是这是一个错误的Chrome?
<details open style="box-sizing: border-box; width: 100px; border: 5px solid red">
<div style="box-sizing: inherit; width: 100%; border: 5px solid red; padding:10px">
Content
</div>
</details>
2条答案
按热度按时间wn9m85ua1#
这似乎是Webkit和Firefox中的一个问题。不幸的是,我得到的唯一一个坚持、工作并且只针对细节元素的修复是:
wfypjpf42#
在这里,这是一个bug,当你已经给了父元素宽度,而它的子元素正在使用它的box sizing属性时,就没有必要给予子元素单独的宽度了。
火狐注意到了,但是Chrome单独考虑了宽度。试试这段代码,你应该可以在每个浏览器上使用。