\r\n \u003C/template>\r\n \u003C/div>\r\n \u003C/VPFlyout>\r\n\u003C/template>\r\n```\r\n\r\nI'm planning to provide a PR for this issue, if you agree. But I might need some guidance in how to provide the changes properly.\r\n\r\nIt seems like setting property `label` for component `VPFlyout` should resolve the issue. However, this value should be configurable for different locales IMO.\r\n\n\n### Reproduction\n\nConfigure vitepress for 2 locales at least to enable the \"Switch Language\" button in the navbar. Using a screen reader, the button is not announced properly (e.g. \"popup button collapse\").\n\n### Expected behavior\n\nThe `aria-label` property of the `button` element of `VPFlyout` in `VPNavBarTranslations` should be set.\r\n\r\n```html\r\n\u003C!-- src/client/theme-default/components/VPNavBarTranslations.vue -->\r\n\u003Ctemplate>\r\n \u003CVPFlyout\r\n v-if=\"localeLinks.length && currentLang.label\"\r\n class=\"VPNavBarTranslations\"\r\n :icon=\"VPIconLanguages\"\r\n :label=\"Switch Language\"\r\n >\r\n \u003Cdiv class=\"items\">\r\n \u003Cp class=\"title\">{{ currentLang.label }}\u003C/p>\r\n\r\n \u003Ctemplate v-for=\"locale in localeLinks\" :key=\"locale.link\">\r\n \u003CVPMenuLink :item=\"locale\" />\r\n \u003C/template>\r\n \u003C/div>\r\n \u003C/VPFlyout>\r\n\u003C/template>\r\n```\r\n\r\nor\r\n\r\n```html\r\n\u003C!-- src/client/theme-default/components/VPNavBarTranslations.vue -->\r\n\u003Ctemplate>\r\n \u003CVPFlyout\r\n v-if=\"localeLinks.length && currentLang.label\"\r\n class=\"VPNavBarTranslations\"\r\n :icon=\"VPIconLanguages\"\r\n :label=\"currentLang.languageButtonAriaLabel\"\r\n >\r\n \u003Cdiv class=\"items\">\r\n \u003Cp class=\"title\">{{ currentLang.label }}\u003C/p>\r\n\r\n \u003Ctemplate v-for=\"locale in localeLinks\" :key=\"locale.link\">\r\n \u003CVPMenuLink :item=\"locale\" />\r\n \u003C/template>\r\n \u003C/div>\r\n \u003C/VPFlyout>\r\n\u003C/template>\r\n```\r\n\r\nRelevant HTML code should look like this:\r\n\r\n```html\r\n\u003Cdiv class=\"VPFlyout VPNavBarTranslations translations\">\r\n \u003Cbutton type=\"button\" class=\"button\" aria-haspopup=\"true\" aria-expanded=\"false\" aria-label=\"Switch Language\">\r\n \u003Cspan class=\"text\">\r\n \u003Csvg xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" focusable=\"false\" class=\"option-icon\" >\r\n \u003Csvg xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" focusable=\"false\" class=\"text-icon\">\r\n \u003C/span>\r\n \u003C/button>\r\n \u003Cdiv class=\"menu\">\r\n \u003Cdiv class=\"VPMenu\">\r\n \u003Cdiv class=\"items\">\r\n \u003Cp class=\"title\">Deutsch\u003C/p>\r\n \u003Cdiv class=\"VPMenuLink\">\r\n \u003Ca class=\"VPLink link\" href=\"...\">English\u003C/a>\r\n \u003C/div>\r\n \u003C/div>\r\n \u003C/div>\r\n \u003C/div>\r\n\u003C/div>\r\n```\n\n### System Info\n\n```shell\nSystem:\r\n OS: Linux 5.15 Ubuntu 20.04.5 LTS (Focal Fossa)\r\n CPU: (8) x64 Intel(R) Xeon(R) CPU E3-1505M v5 @ 2.80GHz\r\n Memory: 22.58 GB / 31.13 GB\r\n Container: Yes\r\n Shell: 5.0.17 - /bin/bash\r\n Binaries:\r\n Node: 18.14.0 - ~/.nvm/versions/node/v18.14.0/bin/node\r\n Yarn: 1.22.19 - ~/.nvm/versions/node/v18.14.0/bin/yarn\r\n npm: 9.3.1 - ~/.nvm/versions/node/v18.14.0/bin/npm\r\n Browsers:\r\n Chrome: 110.0.5481.177\r\n Chromium: 110.0.5481.177\r\n Firefox: 110.0.1\n```\n\n\n### Additional context\n\nFollowing website explains the accessibility issue and possible solution in detail: https://dequeuniversity.com/rules/axe/4.4/button-name\n\n### Validations\n\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [X] Read the [docs](https://vitepress.vuejs.org).\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[2918],{"name":2895,"color":2896},2021,"'Switch Language' Button does not have an accessible name","2023-03-16T00:04:26Z","https://github.com/vuejs/vitepress/issues/2021",0.6880682,{"description":2925,"labels":2926,"number":2928,"owner":2872,"repository":2873,"state":2910,"title":2929,"updated_at":2930,"url":2931,"score":2932},"### Is your feature request related to a problem? Please describe.\r\n\r\nYes, when I verify my documentation site at https://agnosticui.com/ with the [IBM Equal Access Accessibility Checker](https://chrome.google.com/webstore/detail/ibm-equal-access-accessib/lkcagbfjnkomcinoddgooolagloogehp?hl=en-US) it fails hard. This is unfortunate, because one of the things I'm trying to point out is that the UI component library offered is accessible. I lose credibility if the documentation site itself is not a11y compliant.\r\n\r\nI actually get even worse results when I scan the vitepress docs themselves. So while this is a feature request, I would also call it a bug. Lighthouse which I would call more permissive also shows errors in the Accessibility category (but if the IBM checker passes Lighthouse will too).\r\n\r\n### Describe the solution you'd like\r\n\r\nEnsure the code produced by Vitepress is a11y compliant.\r\n\r\nI saw violations with the following rules which can easily be cross-referenced at:\r\nhttps://www.ibm.com/able/requirements/requirements\r\n\r\n1.3.1 Info and Relationships\r\n1.4.3 Contrast (Minimum)\r\n2.4.1 Bypass Blocks\r\n2.5.3 Label in Name\r\n4.1.2 Name, Role, Value\r\n\r\n_Note: this is only from scanning the top-level page. I saw a couple of other warnings on other pages, but this is a good start._\r\n\r\n### Describe alternatives you've considered\r\n\r\nThere are no alternatives. These issues are making Vitepress generated sites less inclusive than they could be meaning certain site users are being excluded which is a real bummer since Vitepress is otherwise producing such lovely sites.\r\n\r\n### Additional context\r\n\r\n\r\n\r\n\r\n### Validations\r\n\r\n- [X] Follow our [Code of Conduct](https://vuejs.org/coc)\r\n- [X] Read the [docs](https://vitepress.vuejs.org/).\r\n- [X] Read the [Contributing Guidelines](https://github.com/vuejs/vitepress/blob/master/.github/contributing.md).\r\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[2927],{"name":2895,"color":2896},466,"Make Vitepress Accessible","2023-02-04T00:04:08Z","https://github.com/vuejs/vitepress/issues/466",0.7226825,{"description":2934,"labels":2935,"number":2939,"owner":2872,"repository":2873,"state":2910,"title":2940,"updated_at":2941,"url":2942,"score":2943},"### Describe the bug\r\n\r\nIf search has been configured, a search button is shown the navigation bar. This opens a dialog which displays Algolia’s search interface.\r\n\r\nHowever, if JavaScript isn’t available/hasn’t loaded, this search button is still shown, labelled as ‘Search’, yet it doesn’t perform any function. This is confusing, perhaps even more so for screen reader users.\r\n\r\n### Reproduction\r\n\r\nLoad a VitePress-powered site with search configured and JavaScript disabled. A search button is shown, but clicking it doesn’t perform any action.\r\n\r\n### Expected behavior\r\n\r\nIdeally, it would be possible to have this element fallback to an input element and submit button that, when submitted, performs a search on a search engine like DuckDuckGo, with the query scoped to the VitePress’ site URL, for example: \u003Chttps://duckduckgo.com/?q=site%3Ahttps://vitepress.vuejs.org+my+query>\r\n\r\nHowever, the simpler option might be to only show the search button if JavaScript is available or loaded.\r\n\r\n### System Info\r\n\r\n```shell\r\nSystem:\r\n OS: macOS 13.1\r\n CPU: (10) arm64 Apple M1 Pro\r\n Memory: 3.05 GB / 32.00 GB\r\n Shell: 5.8.1 - /bin/zsh\r\n Binaries:\r\n Node: 18.11.0 - ~/.nvm/versions/node/v18.11.0/bin/node\r\n npm: 8.19.3 - ~/.nvm/versions/node/v18.11.0/bin/npm\r\n Browsers:\r\n Chrome: 109.0.5414.87\r\n Firefox: 108.0.2\r\n Safari: 16.2\r\n npmPackages:\r\n vitepress: ^1.0.0-alpha.27 => 1.0.0-alpha.36\r\n```\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Validations\r\n\r\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\r\n- [X] Read the [docs](https://vitepress.vuejs.org).\r\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[2936],{"name":2937,"color":2938},"bug: pending triage","e99695",1794,"Search button shown when non-functional (i.e. without JavaScript)","2023-01-21T14:16:41Z","https://github.com/vuejs/vitepress/issues/1794",0.73612916,{"description":2945,"labels":2946,"number":2948,"owner":2872,"repository":2873,"state":2910,"title":2949,"updated_at":2950,"url":2951,"score":2952},"### Describe the bug\r\n\r\nAfter the version is upgraded, the navigation button on the mobile device becomes invalid.\r\n\r\n\r\n\r\n### Reproduction\r\n\r\nN/A\r\n\r\n### Expected behavior\r\n\r\nN/A\r\n\r\n### System Info\r\n\r\nN/A\r\n\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Validations\r\n\r\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\r\n- [X] Read the [docs](https://vitepress.vuejs.org).\r\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[2947],{"name":2937,"color":2938},1181,"The navigation button on the mobile device becomes invalid.","2023-01-21T14:28:42Z","https://github.com/vuejs/vitepress/issues/1181",0.73918384,{"description":2954,"labels":2955,"number":2957,"owner":2872,"repository":2873,"state":2910,"title":2958,"updated_at":2959,"url":2960,"score":2961},"### Describe the bug\r\n\r\nThe search button and dialog should use semantic markup: roles and aria attributes\r\n\r\n### Reproduction\r\n\r\nhttps://unocss.dev/\r\n\r\n### Expected behavior\r\n\r\nJust check Algolia search button and dialog on VP docs.\r\n\r\n### System Info\r\n\r\n```shell\r\nNA\r\n```\r\n\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Validations\r\n\r\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\r\n- [X] Read the [docs](https://vitepress.dev).\r\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[2956],{"name":2883,"color":2884},2232,"Local search: review html markup, should be semantic","2023-06-18T00:04:56Z","https://github.com/vuejs/vitepress/issues/2232",0.7411864,{"description":2963,"labels":2964,"number":2965,"owner":2872,"repository":2873,"state":2910,"title":2966,"updated_at":2967,"url":2968,"score":2969},"### Describe the bug\n\nUsing the features list for home page generates VPLink as VPFeature, which is an \u003Ca> tag without a href.\r\n\r\nThis causes SEO issues\r\n\r\n\r\n\n\n### Reproduction\n\nUse features list at home page\n\n### Expected behavior\n\nAn entire div should not be an \u003Ca> tag if it's not supposed to link anywhere\n\n### System Info\n\n```sh\nSystem:\r\n OS: Windows 10 10.0.23506\r\n CPU: (16) x64 AMD Ryzen 7 7800X3D 8-Core Processor\r\n Memory: 11.73 GB / 31.73 GB\r\n Binaries:\r\n Node: 18.16.0 - C:\\Program Files\\nodejs\\node.EXE\r\n npm: 9.5.1 - C:\\Program Files\\nodejs\\npm.CMD\r\n Browsers:\r\n Edge: Spartan (44.23506.1000.0), Chromium (116.0.1938.29)\r\n Internet Explorer: 11.0.23506.1000\r\n npmPackages:\r\n vitepress: ^1.0.0-beta.6 => 1.0.0-beta.6\n```\n\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [X] Check if you're on the [latest VitePress version](https://github.com/vuejs/vitepress/releases/latest).\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [X] Read the [docs](https://vitepress.dev).\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[],2684,"VPFeatures using VPLink","2023-08-03T00:04:16Z","https://github.com/vuejs/vitepress/issues/2684",0.74500376,["Reactive",2971],{},["Set"],["ShallowReactive",2974],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fFccF2zyOJzs6dPq-vkwG45o7iTAPz8PWFotjZ0lLu6k":-1},"/vuejs/vitepress/2096"]