Заголовки всегда были от H1 до H6, но как насчет H7, H8...H137 и т. д. К моему удивлению, они все работают!. Вы можете стилизовать любой номер заголовка любым удобным для вас способом. Я пробовал их в нескольких современных браузерах и не имел никаких проблем. Вы спросите, зачем мне их использовать... Ну, вместо того, чтобы набирать что-то вроде <span class="h7">Hello World</span>
, я мог просто набрать <h7>Hello world</h7>
и получить тот же результат. Об этом где-нибудь написано? Это неправильно? Существуют ли браузеры новее IE8, которые его не поддерживают?
Можно ли использовать заголовки после H6 в HTML и CSS?
Ответы (5)
Нет. Только первые 6 являются стандартными.
Элементы h1
, h2
, h3
, h4
, h5
и h6
Обратите внимание, что в дополнительных нет необходимости, потому что они представляют собой заголовки для своих разделов. Таким образом, вместо использования заголовков с более низким рангом вы можете использовать вложенные разделы.
Что касается их соответствующих структур документа (их структуры заголовков и разделов), эти два фрагмента семантически эквивалентны:
<body> <h1>Let's call it a draw(ing surface)</h1> <h2>Diving in</h2> <h2>Simple shapes</h2> <h2>Canvas coordinates</h2> <h3>Canvas coordinates diagram</h3> <h2>Paths</h2> </body>
<body> <h1>Let's call it a draw(ing surface)</h1> <section> <h1>Diving in</h1> </section> <section> <h1>Simple shapes</h1> </section> <section> <h1>Canvas coordinates</h1> <section> <h1>Canvas coordinates diagram</h1> </section> </section> <section> <h1>Paths</h1> </section> </body>
Основная цель заголовков — их семантика, поскольку они указывают на короткие и важные части веб-сайта, которые пользователи программ чтения с экрана используют для получения быстрого обзора содержимого веб-сайта и навигации по нему. Последнее особенно важно для пользователей программ чтения с экрана.
Поскольку h1-h6 указывают на разную важность, и в качестве основного правила вы должны стараться использовать как можно меньше уровней (h1-h3, h4 максимум), нет смысла использовать h7-hxxx.
h7-hxxx не являются допустимыми элементами заголовков html, и только потому, что браузеры пытаются интерпретировать их как div
без семантики, не нарушая их, это не означает, что они "работают". НЕТ, так как у них нет семантики
TLDR: определенно НЕ используйте их.
edit: вы упомянули, что IE9+ не "ломается". В основном это происходит из-за html5, который заставляет браузеры интерпретировать неизвестные элементы как бессмысленные и лишенные семантики элементы (например, обычные div
).
Возможно, это не соответствует стандартам, но вы можете определить свои собственные элементы. Это связано не с х7-х200, а с любым словом. Вы можете использовать, например. blabla
или houhouhou
. Код здесь:
<style type="text/css">
houhouhou {color: green}
blabla { color: blue}
</style>
<houhouhou>Hello</houhouhou>
<blabla>World</blabla>
Но, как и другие, я также рекомендую использовать классические классы CSS с div
или span
в этом духе:
<style type="text/css">
.houhouhou {color: green}
.blabla { color: blue}
</style>
<div class="houhouhou">Hello</div>
<div class="blabla">World</div>
Спецификации HTML определяют теги заголовков между H1 и H6 (включительно). Все, что выходит за рамки этого, потенциально может работать в браузерах, как и предполагалось, но, поскольку это не является частью спецификаций html, браузер может интерпретировать, как они хотят (возможно, по-разному), поэтому я бы не стал полностью на это полагаться. Это применимо ко всему, что не является частью спецификаций html. Тем не менее, теги H довольно просты для понимания, поэтому я считаю, что браузер должен интерпретировать эти теги выше H6 правильно и аналогичным образом.
Наличие пользовательских тегов, таких как <h7></h7>
, будет рассматриваться как встроенный элемент div и будет отображаться, но я бы не советовал этого делать, потому что это нестандартные теги для описания иерархии заголовков, поэтому программы чтения с экрана и парсеры могут не иметь в этом смысла. Придерживайтесь использования стандартных семантических элементов для тегов заголовков. Наличие действительно глубокой иерархии тегов заголовков обычно указывает на проблему с семантической структурой макета.