In der <button>
specification part sehen wir, dass der zulässige Inhalt ist nur Phrasing content. Es ist gültig HTML-Code Teil (geprüft here):Phrasierung Inhalt mit geänderten Anzeige-Eigenschaft in CSS
<button>
<span></span>
</button>
Dies gilt nicht, HTML-Code Teil (geprüft here):
<button>
<div></div>
</button>
Error: Element div not allowed as child of element button in this context. (Suppressing further errors from this subtree.)
Aber wir display
Eigenschaft des <span>
ändern können:
<button>
<span style="display: block"></span>
</button>
Und es sieht so aus, als ob wir eine 012 verwendenstattdessen eine <span>
, aber das HTML ist gültig. Ist es (durch die Spezifikation) in Ordnung, ein zulässiges Inhaltselement zu verwenden und seine Eigenschaft display
zu ändern?
Es gibt einen rationalen Fall, dass das Inhaltsmodell des Schaltflächenelements ** HTML5 Inhalte ohne interaktive Elemente ** enthalten sollte, aber niemand überzeugte dafür, so dass das traditionelle Inhaltsmodell beibehalten wurde. Ältere Browser hätten damit Probleme gehabt, aber es hätte nicht die Definition der richtigen Semantik beeinflusst. – Alohci
@ Alohci interessante Sache, könnten Sie den Link auf der Quelle enthalten? –