Журнал • знания • практикаПоиск по сайту

Сайты, дизайн и самостоятельная работа

Найти материал →

Как оформить длинную страницу с оглавлением и якорными ссылками

5 минут чтения

Как оформить длинную страницу с оглавлением и якорными ссылками

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

Проверьте перед запуском: оглавление, якоря и переходы

  • Разделите материал на смысловые блоки и оформите их последовательными заголовками H2 и H3.
  • Добавляйте оглавление, если читателю полезно сразу переходить к нужному разделу.
  • Присвойте целевым заголовкам уникальные идентификаторы без пробелов.
  • Сверьте адрес каждой ссылки с идентификатором соответствующего раздела.
  • Проверьте, что заголовок не скрывается под фиксированной шапкой сайта.
  • Убедитесь, что по ссылкам можно переходить с клавиатуры и на узком экране.

Определите структуру длинной страницы до добавления оглавления

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

Не добавляйте навигационный блок ради самого блока: на короткой странице с одним-двумя небольшими разделами он может занимать больше внимания, чем экономить. Сначала составьте план содержания, затем решите, нужно ли читателю переходить между его частями.

Соберите пункты оглавления из заголовков H2 и H3

Для работы понадобятся доступ к редактору страницы или к HTML-шаблону, согласованная структура заголовков и возможность проверить страницу после публикации. Если CMS автоматически формирует оглавление, выясните, какие уровни заголовков она учитывает и как создаёт идентификаторы.

Формулировки в оглавлении лучше брать из самих заголовков: так читатель сразу понимает, куда ведёт ссылка. Не включайте в список каждый подзаголовок, если из-за этого навигация становится громоздкой.

Задайте якорям понятные и устойчивые идентификаторы

Перед настройкой сделайте мини-чек-лист подготовки:

  • Определите заголовки, к которым должны вести переходы.
  • Проверьте, что названия разделов окончательно согласованы.
  • Уточните, не назначены ли идентификаторы этим элементам автоматически.
  • Выберите один формат идентификаторов и используйте его по всей странице.

Для ручной разметки используйте такую последовательность:

  1. Выберите целевой элемент. Обычно якорь задают заголовку раздела. Тогда переход приводит читателя непосредственно к началу нужной темы.
  2. Назначьте уникальный id. Используйте короткое и понятное значение латинскими буквами, цифрами и дефисами, например ustanovka-oglavleniya. Не повторяйте один и тот же id на странице.
  3. Добавьте ссылку на id. В атрибуте href укажите решётку и значение идентификатора. Так создаются якорные ссылки на сайте:
    <h2 id="ustanovka-oglavleniya">Установка оглавления</h2>
    <a href="#ustanovka-oglavleniya">Установка оглавления</a>
  4. Свяжите ссылки и заголовки. Сверьте написание id в ссылке и целевом элементе посимвольно. Если вы выясняете, как сделать якорную ссылку в HTML, ключевая связь здесь - между href="#идентификатор" и id="идентификатор".
  5. Проверьте адрес перехода. Откройте ссылку на опубликованной странице и убедитесь, что браузер переместил фокус к правильному разделу. Если якоря создаёт плагин, проверьте, что он не заменяет идентификаторы после каждого сохранения.

Разместите оглавление там, где читатель ожидает навигацию

Обычно оглавление располагают после краткого вступления и перед первым основным разделом. При создании оглавления на странице сайта проверьте:

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

Сделайте переходы удобными для клавиатуры и мобильного экрана

Проверьте распространённые ошибки:

  • У заголовка и пункта оглавления разные идентификаторы.
  • Один id повторяется у нескольких элементов.
  • В id используются пробелы или непоследовательный формат символов.
  • Ссылка оформлена как обычный текст и не работает при активации.
  • После перехода фиксированная шапка закрывает заголовок раздела.
  • Область нажатия слишком мала для мобильного экрана.
  • Ссылки доступны мышью, но не выделяются при переходе клавишей Tab.
  • Цвет или оформление ссылки не дают понять, что пункт можно активировать.

Не удаляйте стандартный индикатор фокуса без доступной замены. Если сайт использует фиксированную шапку, настройте отступ прокрутки для целевых заголовков и проверьте результат в браузере.

Проверьте прокрутку, обратные ссылки и поведение после правок

Выберите способ поддержки оглавления в зависимости от редактора и особенностей страницы:

  • Ручная разметка HTML. Подходит, если структура стабильна и нужно полностью контролировать пункты и id.
  • Возможности CMS. Удобны, когда редактор поддерживает оглавление и позволяет проверить или изменить создаваемые идентификаторы.
  • Плагин или модуль. Рассмотрите его, если оглавление нужно регулярно на многих страницах. Перед применением проверьте, как модуль обрабатывает вложенные заголовки и уже опубликованные ссылки.

После публикации пройдите по всем пунктам оглавления, обновите страницу с адресом, содержащим якорь, и проверьте поведение после изменения заголовков. Не меняйте уже используемый id без необходимости: на него могут вести ссылки из других частей сайта. Если оглавление должно быть устойчивым и повторяться на множестве страниц, а подходящий способ реализации неясен, можно заказать разработку сайта или отдельного модуля с проверкой доступности и поведения ссылок.

Нюансы настройки оглавления и якорных ссылок

Нужно ли добавлять в оглавление каждый подзаголовок?

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

Можно ли назначить id самому пункту оглавления?

Идентификатор нужно назначить целевому элементу в тексте. Пункт оглавления должен ссылаться на него через атрибут href.

Обязательно ли использовать латиницу в id?

Технически HTML допускает разные символы в идентификаторах, но короткие значения латиницей и дефисами обычно проще поддерживать и вставлять в ссылки. Важно, чтобы id был уникальным и совпадал с фрагментом адреса.

Что делать, если переход скрывает заголовок под шапкой?

Настройте отступ прокрутки для целевого заголовка средствами CSS, например свойством scroll-margin-top. Подберите значение по фактической высоте шапки и проверьте его на разных размерах экрана.

Нужно ли добавлять ссылку для возврата к оглавлению?

Это полезно на очень длинных страницах, когда читателю приходится прокручивать большой объём текста. Ссылка должна возвращать именно к блоку оглавления и быть доступной с клавиатуры.

Почему якорь перестал работать после редактирования?

Проверьте, не изменился ли id целевого заголовка и не удалён ли сам элемент. Затем сверьте адрес ссылки с текущим id и протестируйте переход на опубликованной странице.

Нужно ли использовать плагин для оглавления?

Не обязательно: для одной страницы может хватить ручной разметки или встроенной функции CMS. Плагин удобен для повторяющейся задачи, если он корректно формирует ссылки и не мешает редактированию заголовков.

Scroll to Top