为什么flexbox与fieldset
或其他非div
标签无法正常工作?
我希望它们在div
示例中排列在一起,因为flex-direction: row;
在flexbox中是默认的。但是fieldset
强制对它们施加宽度,我不明白为什么。
HTML
<fieldset>
<div>fieldset flexbox</div>
<div>1</div>
<div>2</div>
</fieldset>
<div id="parentdiv">
<div>div flexbox<div>
<div>3</div>
<div>4</div>
</div>
CSS:所有元素都设置为display: flex
;
答案 0 :(得分:23)
据我所知,这取决于与fieldset
元素有关的浏览器错误。
这是a known issue with fieldset
elements in Chrome。 legend
和fieldset
中的Firefox has a similar (very old) issue为replaced elements。
我想现在使用<div role="group">
而不是真实的字段集会更安全。在CSS中,您可以使用div[role='group']
作为选择器。有关详细信息,请参阅http://www.deque.com/aria-group-viable-alternative-fieldset-legend。