W pliku <button>
specification part widzimy, że dozwolona zawartość to tylko Phrasing content. To część poprawny kod HTML (zaznaczone here):Treść frazowa ze zmienioną właściwością wyświetlania w CSS
<button>
<span></span>
</button>
To nie jest ważna część kodu HTML (zaznaczone here):
<button>
<div></div>
</button>
Error: Element div not allowed as child of element button in this context. (Suppressing further errors from this subtree.)
Ale możemy zmienić display
własność <span>
:
<button>
<span style="display: block"></span>
</button>
Wygląda na to, że używamy <div>
zamiast <span>
, ale kod HTML jest prawidłowy. Czy jest w porządku (według specyfikacji), aby użyć dozwolonego elementu treści i zmienić jego właściwość display
?
Istnieje racjonalny przypadek, w którym model zawartości elementu przycisku powinien być ** treścią przepływu z wyłączeniem elementów interaktywnych ** w HTML5, ale nikt nie przekonał go, więc zachował swój tradycyjny model zawartości. Starsze przeglądarki zmagałyby się z tym, ale nie musiały wpływać na definiowanie właściwej semantyki. – Alohci
@Alohci interesująca sprawa, czy możesz dołączyć link do źródła? –