HTML: ссылки и навигация
Введение: как маршруты в городе 🧭
Представьте карту метро: без линий и станций вы не поймёте, как добраться.
Ссылки и навигация — это маршруты внутри сайта.
Ссылки и навигация — это маршруты внутри сайта.
💡 Совет: хорошая навигация экономит пользователю время.
✅ Вывод: ссылки — это путь, навигация — карта.
✅ Вывод: ссылки — это путь, навигация — карта.
Проблема: пользователь теряется ❌
Без навигации:
- человек не понимает, где он;
- не знает, куда идти дальше;
- уходит с сайта.
С навигацией:
- маршрут понятен;
- структура сайта читается;
- доверие выше.
✅ Вывод: навигация — это фундамент UX.
Чем помогает и как работает
- помогает пользователю быстро понимать, где он находится и куда идти дальше;
- снижает число «потерянных» сессий и повышает глубину просмотра;
- улучшает SEO за счёт понятной структуры внутренних ссылок.
Как это работает:
- Сначала определяем ключевые маршруты пользователя по сайту.
- Собираем меню и точки переходов в логичную навигационную схему.
- Для каждой ссылки задаём понятный анкор и корректный адрес.
- Проверяем доступность, безопасность и читаемость переходов.
✅ Вывод: хорошая навигация превращает сайт в понятный маршрут, а не в лабиринт.
Что такое ссылки и навигация
Ссылка (
Навигация (
a) — элемент для перехода.Навигация (
nav) — блок, где собраны ключевые маршруты сайта.✅ Вывод: ссылка — действие, навигация — структура.
Ключевые термины (простыми словами)
a— ссылка.href— куда ведёт ссылка.nav— блок навигации.- Absolute URL — полный адрес (https://...).
- Relative URL — путь внутри сайта (/courses).
- Anchor (якорь) — переход к части страницы (#program).
target— где открыть ссылку.rel— правила безопасности.
✅ Вывод: это базовый словарь для ссылок.
1. a — основной переход
Назначение: перевести пользователя к ресурсу.
Простыми словами: тег
a — это кликабельный путь, который ведёт пользователя в нужную точку.Аналогия: дверь в другое помещение.
Пример:
<a href="/courses">Каталог курсов</a>🔎 Как это происходит на практике:
- Определяю цель перехода и пишу понятный текст ссылки.
- Добавляю корректный
hrefи проверяю, что ссылка реально открывается. - Тестирую ссылку с клавиатуры и в мобильной версии страницы. Характеристики:
- ✅ Всегда нужен
href. - ✅ Текст ссылки должен быть понятным.
❗ Когда использовать: когда нужно перейти на страницу или ресурс.
✅ Вывод: ссылка — это действие «перейти».
✅ Вывод: ссылка — это действие «перейти».
2. nav — карта сайта
Назначение: объединить основные ссылки.
Простыми словами:
nav — это блок меню, который показывает пользователю основные маршруты сайта.Аналогия: указатели на вокзале.
Пример:
<nav> <a href="/">Главная</a> <a href="/courses">Курсы</a></nav>🔎 Как это происходит на практике:
- Выбираю 3–6 ключевых разделов, которые нужны в меню.
- Собираю эти ссылки внутри
navв логичном порядке. - Проверяю, что путь к любой важной странице занимает минимум кликов. Характеристики:
- ✅ Обычно располагается в шапке или боковом меню.
- ✅ Помогает доступности.
❗ Когда использовать: для основного меню сайта.
✅ Вывод:
✅ Вывод:
nav — это «карта» сайта.3. Виды ссылок
3.1 Внутренние ссылки
Назначение: переход внутри сайта.
Простыми словами: вид ссылки зависит от задачи: внутри сайта, на внешний ресурс, к блоку страницы или к действию.
<a href="/courses">Курсы</a>3.2 Внешние ссылки
Назначение: переход на другой сайт.
<a href="https://example.com">Партнёр</a>3.3 Якорные ссылки
Назначение: перейти к блоку на странице.
<a href="#program">Программа курса</a>3.4 Ссылки на действия
Назначение: запуск звонка или письма.
<a href="tel:+79990000000">Позвонить</a><a href="mailto:hello@example.com">Написать</a>🔎 Как это происходит на практике:
- Для внутренних переходов использую относительные URL.
- Для внешних источников ставлю полные адреса и проверяю домен.
- Для якорей и действий (
mailto:,tel:) задаю корректные значения вhref.
❗ Когда использовать: когда проект использует разные сценарии переходов и коммуникации..
✅ Вывод: вид ссылки зависит от цели перехода.
4. Абсолютные и относительные URL
Назначение: выбрать формат пути.
Простыми словами: абсолютный URL содержит полный адрес сайта, относительный — путь внутри текущего проекта.
- Абсолютный:
https://site.com/courses - Относительный:
/courses
🔎 Как это происходит на практике:
- Внутри проекта ставлю относительные пути вроде
/courses. - Для внешних ссылок использую полный URL с протоколом
https://. - Проверяю ссылки в dev и проде, чтобы не было битых маршрутов.
❗ Когда использовать: когда настраиваете внутренние и внешние переходы в одном интерфейсе..
✅ Вывод: для внутренних страниц чаще используют относительные пути.
5. Новая вкладка и безопасность
Простыми словами: если открываете ссылку в новой вкладке, нужно дополнительно защитить текущую страницу.
Пример:
<a href="https://example.com" target="_blank" rel="noopener noreferrer">Партнёр</a>Почему важно:
target="_blank"открывает новую вкладку.rel="noopener"защищает от доступа к окну.noreferrerскрывает источник.
🔎 Как это происходит на практике:
- Добавляю
target="_blank"только там, где это действительно нужно. - Обязательно добавляю
rel="noopener noreferrer". - Проверяю, что пользователь понимает: ссылка откроется в новой вкладке.
❗ Когда использовать: когда намеренно открываете внешние ресурсы в новой вкладке..
✅ Вывод: новые вкладки = всегда
rel.6. Доступность ссылок
Простыми словами: хорошая ссылка должна быть понятна без дополнительного контекста и доступна с клавиатуры.
Правила:
- Текст ссылки должен быть понятным («Перейти к курсу», а не «нажми»).
- Для иконок используйте
aria-label. - Фокус должен быть видимым.
🔎 Как это происходит на практике:
- Заменяю неинформативные тексты типа «кликни сюда» на конкретные.
- Для иконок добавляю
aria-label, чтобы смысл читался скринридером. - Проверяю видимость фокуса при навигации клавишей Tab.
❗ Когда использовать: на всех публичных страницах, особенно в обучающих и коммерческих разделах..
✅ Вывод: хорошая ссылка читается даже без контекста.
7. Ссылка vs кнопка
Простыми словами: ссылка ведёт на другой адрес, кнопка запускает действие на текущей странице.
- Ссылка — переход (navigation).
- Кнопка — действие (submit, открыть модалку).
🔎 Как это происходит на практике:
- Если нужен переход по URL — использую
a. - Если нужно действие (submit, модалка, фильтр) — ставлю
button. - Проверяю, что поведение элемента совпадает с ожиданием пользователя.
❗ Когда использовать: когда выбираете правильный элемент управления в интерфейсе..
✅ Вывод: переход =
a, действие = button.8. Что можно вкладывать в a
Простыми словами: в ссылку можно вложить текст, иконку или карточку, но смысл перехода должен оставаться явным.
Можно:
- текст
- иконки
- изображения
Главное — сохранять смысл.
🔎 Как это происходит на практике:
- Внутри ссылки оставляю понятный текстовый смысл перехода.
- Если ссылка включает картинку, добавляю альтернативный текст и контекст.
- Проверяю кликабельную область и читаемость ссылки на мобильных.
❗ Когда использовать: когда ссылка оформляется как карточка, баннер или медиа-блок..
✅ Вывод: ссылка — контейнер для клика, но смысл остаётся в тексте.
9. SEO и ссылки
Простыми словами: поисковик лучше ранжирует сайт, где ссылки логично связывают страницы и имеют ясные анкоры.
- Ясный текст ссылки помогает поисковикам.
- Внутренние ссылки улучшают структуру сайта.
🔎 Как это происходит на практике:
- Добавляю внутренние ссылки между связанными материалами.
- Использую осмысленные анкоры вместо общих слов.
- Проверяю, что важные страницы доступны через 2–3 перехода.
❗ Когда использовать: при проектировании структуры разделов и внутренней перелинковки..
✅ Вывод: семантика ссылок влияет на поиск.
Сравнение: ссылка vs кнопка
| Что | Ссылка (a) | Кнопка (button) |
|---|---|---|
| Назначение | Переход | Действие |
| URL | Обязательно href | Не нужен |
| Пример | Каталог курсов | Отправить форму |
Часто спрашивают на собеседованиях
- Когда использовать
a, а когдаbutton? Ссылка — переход, кнопка — действие. - Зачем нужен
rel="noopener"? Для безопасности приtarget="_blank". - Чем отличаются абсолютные и относительные URL? Полный адрес vs путь внутри сайта.
- Что такое якорная ссылка? Переход к блоку по
id.
✅ Вывод: эти вопросы часто встречаются на интервью по HTML.
Типичные ошибки
Ошибка 1: Ссылка без href
❌ Неправильно: не работает переход.
✅ Правильно: всегда указывать
✅ Правильно: всегда указывать
href.Ошибка 2: target="_blank" без rel
❌ Неправильно: уязвимость безопасности.
✅ Правильно:
✅ Правильно:
rel="noopener noreferrer".Ошибка 3: Ссылка вместо кнопки
❌ Неправильно:
✅ Правильно: действие — кнопка.
a запускает действие.✅ Правильно: действие — кнопка.
Ошибка 4: Текст «кликни здесь»
❌ Неправильно: неясно, куда ведёт.
✅ Правильно: «Перейти в каталог».
✅ Правильно: «Перейти в каталог».
Best Practices
- Делайте текст ссылок понятным.
- Используйте
navдля меню. - Всегда ставьте
href. - При
target="_blank"добавляйтеrel. - Разделяйте ссылки и кнопки.
Заключение
Ключевые мысли
🎯 Ссылки — это пути, навигация — карта.
🎯 Хороший текст ссылок улучшает UX и SEO.
🎯 Безопасность важна при новых вкладках.
🎯 Хороший текст ссылок улучшает UX и SEO.
🎯 Безопасность важна при новых вкладках.
Сделайте навигацию понятной — и пользователь не потеряется.