|
| 1 | +<a href="#main-content" class="skip-to-content">{{ $page->t("Skip to main content") }}</a> |
1 | 2 | <header class="ud-header"> |
2 | 3 | <div class="container"> |
3 | | - <nav class="navbar navbar-expand-lg"> |
4 | | - <a class="navbar-brand" href="{{ locale_url($page, '') }}"> |
| 4 | + <nav class="navbar navbar-expand-lg" role="navigation" aria-label="{{ $page->t('Main navigation') }}"> |
| 5 | + <a class="navbar-brand" href="{{ locale_url($page, '') }}" aria-label="{{ $page->t('LibreSign home') }}"> |
5 | 6 | <img src="{{ $page->baseUrl }}assets/images/logo/logo.svg" alt="LibreSign" /> |
6 | 7 | </a> |
7 | | - <div class="navbar-collapse mx-auto"> |
8 | | - <ul class="navbar-nav container"> |
9 | | - <li class="nav-item nav-item-has-children"> |
10 | | - <a class="ud-menu-scroll" href="{{ locale_url($page, 'solutions') }}">{{$page->t("Solutions")}}</a> |
| 8 | + <div class="navbar-collapse mx-auto" id="main-navigation"> |
| 9 | + <ul class="navbar-nav container" role="menubar"> |
| 10 | + <li class="nav-item nav-item-has-children" role="none"> |
| 11 | + <a class="ud-menu-scroll" href="{{ locale_url($page, 'solutions') }}" role="menuitem">{{$page->t("Solutions")}}</a> |
11 | 12 | </li> |
12 | | - <li class="nav-item nav-item-has-children"> |
13 | | - <a class="ud-menu-scroll" href="{{ locale_url($page, 'features') }}">{{$page->t("Features")}}</a> |
| 13 | + <li class="nav-item nav-item-has-children" role="none"> |
| 14 | + <a class="ud-menu-scroll" href="{{ locale_url($page, 'features') }}" role="menuitem">{{$page->t("Features")}}</a> |
14 | 15 | </li> |
15 | | - <li class="nav-item nav-item-has-children"><a class="ud-menu-scroll" href="{{ locale_url($page, 'pricing') }}">{{ $page->t('Plans and Pricing')}}</a> |
| 16 | + <li class="nav-item nav-item-has-children" role="none"> |
| 17 | + <a class="ud-menu-scroll" href="{{ locale_url($page, 'pricing') }}" role="menuitem">{{ $page->t('Plans and Pricing')}}</a> |
16 | 18 | </li> |
17 | | - <li class="nav-item"> |
18 | | - <a class="ud-menu-scroll" href="{{ locale_url($page, 'about') }}">{{ $page->t("About") }}</a> |
| 19 | + <li class="nav-item" role="none"> |
| 20 | + <a class="ud-menu-scroll" href="{{ locale_url($page, 'about') }}" role="menuitem">{{ $page->t("About") }}</a> |
19 | 21 | </li> |
20 | | - <li class="nav-item nav-item-has-children"> |
21 | | - <a class="ud-menu-scroll" href="{{ locale_url($page, 'posts') }}">{{ $page->t("Content") }}</a> |
| 22 | + <li class="nav-item nav-item-has-children" role="none"> |
| 23 | + <a class="ud-menu-scroll" href="{{ locale_url($page, 'posts') }}" role="menuitem">{{ $page->t("Content") }}</a> |
22 | 24 | </li> |
23 | | - <li class="nav-item nav-item-has-children"> |
24 | | - <a class="ud-menu-scroll" href="{{ locale_url($page, 'contact') }}">{{ $page->t("Contact") }}</a> |
| 25 | + <li class="nav-item nav-item-has-children" role="none"> |
| 26 | + <a class="ud-menu-scroll" href="{{ locale_url($page, 'contact') }}" role="menuitem">{{ $page->t("Contact") }}</a> |
25 | 27 | </li> |
26 | | - <li class="nav-item" id="customer-area-link"> |
27 | | - <a class="ud-menu-scroll link-button" href="{{ locale_url($page, 'client-area') }}" aria-label="{{ $page->t("Client Area") }}"> |
| 28 | + <li class="nav-item" id="customer-area-link" role="none"> |
| 29 | + <a class="ud-menu-scroll link-button" href="{{ locale_url($page, 'client-area') }}" role="menuitem" aria-label="{{ $page->t("Client Area") }}"> |
28 | 30 | <span class="button-text">{{ $page->t("Client Area") }}</span> |
29 | 31 | <i class="lni lni-user button-icon" aria-hidden="true"></i> |
30 | 32 | </a> |
|
33 | 35 | </div> |
34 | 36 | <div class="d-flex align-items-center"> |
35 | 37 | <div class="selector"> |
36 | | - <button type="button"><img src="{{ $page->baseUrl }}assets/images/icon/languages/{{ current_path_locale($page) ?: 'en' }}.svg" alt="{{ $page->t('Language') }}" /></button> |
37 | | - <ul class="ud-submenu"> |
| 38 | + <button type="button" |
| 39 | + aria-label="{{ $page->t('Select language') }}" |
| 40 | + aria-haspopup="true" |
| 41 | + aria-expanded="false" |
| 42 | + aria-controls="language-menu"> |
| 43 | + <img src="{{ $page->baseUrl }}assets/images/icon/languages/{{ current_path_locale($page) ?: 'en' }}.svg" alt="" role="presentation" /> |
| 44 | + <span class="visually-hidden">{{ $page->t('Current language') }}: {{ $page->locales[current_path_locale($page)] ?? 'English' }}</span> |
| 45 | + </button> |
| 46 | + <ul class="ud-submenu" id="language-menu" role="menu" aria-label="{{ $page->t('Language selection') }}"> |
38 | 47 | @foreach($page->locales as $localeCode => $localeName) |
39 | | - <li class="ud-submenu-item"> |
40 | | - <a class="ud-submenu-link" href="{{ translate_url($page, $localeCode) }}"> |
41 | | - <img src="{{ $page->baseUrl }}assets/images/icon/languages/{{ $localeCode ?: 'en' }}.svg" alt="{{ $localeName }}" /> |
| 48 | + <li class="ud-submenu-item" role="none"> |
| 49 | + <a class="ud-submenu-link" |
| 50 | + href="{{ translate_url($page, $localeCode) }}" |
| 51 | + role="menuitem" |
| 52 | + lang="{{ $localeCode ?: 'en' }}" |
| 53 | + aria-label="{{ $page->t('Switch to') }} {{ $localeName }}"> |
| 54 | + <img src="{{ $page->baseUrl }}assets/images/icon/languages/{{ $localeCode ?: 'en' }}.svg" alt="" role="presentation" /> |
42 | 55 | <span>{{ $localeCode ?: 'en'}}</span> |
43 | 56 | </a> |
44 | 57 | </li> |
45 | 58 | @endforeach |
46 | 59 | </ul> |
47 | 60 | </div> |
48 | | - <button class="navbar-toggler" title="{{$page->t("Toggle navigation menu")}}"> |
49 | | - <span class="toggler-icon"> </span> |
50 | | - <span class="toggler-icon"> </span> |
51 | | - <span class="toggler-icon"> </span> |
| 61 | + <button class="navbar-toggler" |
| 62 | + aria-label="{{$page->t("Toggle navigation menu")}}" |
| 63 | + aria-expanded="false" |
| 64 | + aria-controls="main-navigation"> |
| 65 | + <span class="toggler-icon" aria-hidden="true"> </span> |
| 66 | + <span class="toggler-icon" aria-hidden="true"> </span> |
| 67 | + <span class="toggler-icon" aria-hidden="true"> </span> |
52 | 68 | </button> |
53 | 69 | </div> |
54 | 70 | </nav> |
|
0 commit comments