2012-01-08 4 views
14

Я всегда нахмурился, пропустив уровни заголовков в документах HTML, особенно по причине доступности экрана. Кроме того, требование о том, что структура страницы имеет смысл без CSS, указывает на то, что уровни пропущенных заголовков не рекомендуются. Например:Можно ли пропустить уровни заголовков

<h1>...</h1> 
<h3>...</h3> 
<h4>...</h4> 

Коллега утверждает, что это хорошо, если относительное значение содержания находит свое отражение в заголовке разметке. Полагаю, он может быть прав.

Мысли от экспертов по доступу?

+0

Было бы лучше опубликовать этот вопрос на сайте User Experience по адресу http://ux.stackexchange.com/ – jacktheripper

+0

Я не «эксперт по доступности», но что происходит с недостающими уровнями? Они почему-то объясняются? Не? Я подозреваю, что это не так просто на практике. –

ответ

12

Я считаю, что пропущенные уровни заголовков считаются приемлемыми, но не идеальными под WCAG1, но WCAG2 является более строгим в этом отношении. В качестве одного из примеров, читатели экрана объявят уровень заголовка, и пропущенный номер заставит его казаться, что пользователь пропустил какой-то скрытый контент, когда он этого не сделал. Не нужно пропускать уровень, если CSS используется для стиля, как вам хотелось бы.

12

От WCAG 2: G141: Organizing a page using headings:

Для облегчения навигации и понимания общей структуры документа, авторы должны использовать заголовки, которые являются вложенными (например, h1 следует h2, h2 следуют h2 или h3 , h3, за которым следуют h3 или h4 и т. д.).

3

Этот вопрос появился в презентации WebAIM, в которой я недавно присутствовал, и они рекомендовали не пропускать уровни заголовков. Их аргументация заключалась в том, что читатели экрана обычно предлагают ярлык, который отображает список всех заголовков на странице в качестве средства навигации пользователя.

Сценарий, который они описывали, состоял в том, что, если человек, использующий устройство чтения с экрана, циклически перебирал заголовки (например, h1, затем h2, а затем h3), и читатель ничего не сообщал для заданного уровня заголовка (h4 в этом случае) то пользователь, скорее всего, прекратит циклизацию по заголовкам в предположении, что заголовков больше нет (возможно, отсутствуют какие-либо h5 и h6).

Таким образом, вы рискуете создать проблему юзабилити, если вы пропустите уровни!

+0

Интересно, как это работает с HTML5, где уровни заголовков сбрасываются каждый раз, когда вы используете

,
,
или любой другой раздел. – user2867288