Accessibility
VoiceOver list test
These are the twelve lists behind The list VoiceOver wouldn’t call a list. Each one changes a single property, and under each one is what VoiceOver said on my iPhone 14 Pro Max on August 25, 2026, running iOS 26.
Turn on VoiceOver (Settings, then Accessibility, then VoiceOver), swipe through a list, and compare what you hear. Every link goes to a section of my Services page.
1. An ordered list with list-style: none, in two columns
VoiceOver read each link on its own, with no list and no count. This was the markup on my Services page.
2. The same list in one column
No list and no count.
3. An unordered list with list-style: none, in two columns
No list and no count.
4. An unordered list with list-style: none, in one column
No list and no count. This is the shape of the mobile menu on my site, and the menu does announce a count, so the count has to come from something other than the list.
5. List 4, with a border under each item
No list and no count. The border changed nothing.
6. List 1, with role="list" on the ol
“List start” on the first link and “list end” after the last. No count.
7. An ordered list with its numbers visible, in two columns
“List start” on the first link, and each number read aloud as its own piece of text. No count.
8. List 4, inside a nav element
“List start,” “navigation landmark,” and “list end.” No count.
9. List 5, inside a nav element
The same as list 8. No count.
10. My Services index markup, inside a labeled nav
A list, with a start and an end. No count.
11. List 8, with display: flex on each link
A list, with a start and an end. No count.
12. Links built like my mobile menu, inside a nav
A position on every link, through “five of five.” This is the only list of the twelve that counted.