Анатомия React компонента
Моё видение того, как должен выглядеть React компонент
107
7 мин.
25
2 мин.
Стандарт SSB-C определяет требования к семантике, доступности и логике работы хлебных крошек.
Хлебные крошки должны использовать <nav> для обозначения блока навигации, <ol> для упорядоченного списка и <li> для каждого элемента хлебной крошки:
<nav class="breadcrumbs"> <ol class="breadcrumbs__list"> <li class="breadcrumbs__item"> <a href="/" class="breadcrumbs__link">Главная</a> </li> <li class="breadcrumbs__item"> <a href="/category" class="breadcrumbs__link">Категория</a> </li> <li class="breadcrumbs__item breadcrumbs__item--current"> Название текущей страницы </li> </ol> </nav>
Последний элемент списка обозначает текущую страницу, он не должен быть ссылкой, также следует добавить aria-current="page" для улучшения доступности:
<li class="breadcrumbs__item breadcrumbs__item--current" aria-current="page"> Название текущей страницы </li>
Элементы <li> содержат базовые стили, которые наследуются ссылками <a>, а для предотвращения переноса текста используется white-space: nowrap;:
.breadcrumbs__item { font-size: 14px; color: #6c757d; white-space: nowrap; } .breadcrumbs__link { color: #007bff; text-decoration: none; } .breadcrumbs__item--current { font-weight: bold; color: #343a40; }
Для удобства на мобильных устройства стоит добавить горизонтальный скролл:
.breadcrumbs { overflow-inline: auto; overflow-block: hidden; } .breadcrumbs__list { display: flex; }
Микроразметка Schema.org помогает поисковикам правильно определять контент на странице:
<nav class="breadcrumbs"> <ol class="breadcrumbs__list" itemscope itemtype="https://schema.org/BreadcrumbList"> <li class="breadcrumbs__item" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem"> <a itemprop="item" href="/"> <span itemprop="name">Главная</span> </a> <meta itemprop="position" content="1" /> </li> <li class="breadcrumbs__item" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem"> <a itemprop="item" href="/category"> <span itemprop="name">Категория</span> </a> <meta itemprop="position" content="2" /> </li> <li class="breadcrumbs__item breadcrumbs__item--current" itemprop="itemListElement" itemscope itemtype="https://schema.org/ListItem" aria-current="page"> <span itemprop="name">Название текущей страницы</span> <meta itemprop="position" content="3" /> </li> </ol> </nav>
Похожие категории:
Моё видение того, как должен выглядеть React компонент
107
7 мин.
Стандарт SSF-U определяет требования к семантике, доступности и логике работы фуллскрина
38
2 мин.
Стандарт SSA определяет требования к семантике, доступности и логике работы аккордеона
54
2 мин.
Разбор критических ошибок веб-дизайна. Почему слайдеры, автоплей и тяжёлые страницы снижают конверсию и позиции в Google и Yandex
50
1 мин.
Стандарт SSP определяет требования к семантике, доступности и логике работы пагинации
59
1 мин.
Стандарт SSPS определяет требования к структуре и наименованию файлов и папок в проекте
169
2 мин.