Il problema è che l'elemento <button>
non può essere un contenitore flessibile in alcuni browser.
A seconda del browser, alcuni elementi HTML non accettano le modifiche display
. Tre di questi elementi sono:
<button>
<fieldset>
<legend>
L'idea è quella di mantenere un livello di buon senso quando lo styling elementi HTML. Ad esempio, la regola impedisce agli autori di trasformare un fieldset in una tabella.
Tuttavia, v'è una soluzione semplice, in questo caso:
Soluzione: Avvolgere il contenuto del button
in un span
, e rendere il span
il contenitore flessibile.
rettificato HTML (avvolto button
contenuto in un span
)
<div>
<button>
<span><!-- using a div also works but is not valid HTML -->
<span>Test</span>
<span>Test</span>
</span>
</button>
<p>
<span>Test</span>
<span>Test</span>
</p>
</div>
rettificato CSS (mirati span
)
button > span, p {
display: flex;
flex-direction: row;
justify-content: center;
}
Revised Demo
NOTA: Sebbene non possano essere contenitori flessibili, gli elementi button
possono essere elementi flessibili.
Riferimenti:
fonte
2016-02-17 19:43:51
problema simile: [? Perché non può essere