Day 61 of 100DaysOfSpec, 4.3.3 The section element
I am reading and taking notes on the HTML specifications for 100 days as part of #The100DayProject. Read the initial intent/backstory. I am a Microsoft employee but all opinions, comments, etc on this site are my own. I do not speak on behalf of my employer, and thus no comments should be taken as representative of Microsoft's official opinion of the spec. Subsections not listed below were read without comment.
Currently reading in 4.3 Sections
UAs = user agents = browsers and other HTML document parsers/renderers
4.3.4 The nav element
“The nav element represents a section of a page that links to other pages or to parts within the page: a section with navigation links.”
- No
main
element descendants - The only ARIA role you can set besides the default (
navigation
) ispresentation
. A presentational, non-semanticnav
? Sounds like someone’s doing responsive menu garbage. - It’s chill to use list markup (
ul
/ol
) where the nav = list(s) of links. - This is for major lists of links, so no need to use
nav
everywhere a link list appears (for example, in thefooter
, which already stores info about the site/content). - UAs can do different things with
nav
, including skip over this content or provide it upon request instead of presenting it as content information. I don’t think I’ve run into that in default OS screen readers, but it’s worth noting if you’re deciding whether or not a link list inside page content should be in anav
. This would encourage me to limit to site-wide nav and maybe a sidebar nav if it gets repeated from page to page (like documentation wikis) and isn’t integral to understanding the current page content. - A
nav
doesn’t always have to contain a list, which means you can also use this markup for navigation areas verbose (as in the example) and/or clever.
4.3.5 The aside element
“The aside element represents a section of a page that consists of content that is tangentially related to the content around the aside element, and which could be considered separate from that content. Such sections are often represented as sidebars in printed typography.”
- No
main
element descendants - Default ARIA role is
complementary
; also allowed arenote
,search
, orpresentation
. - Good uses, according to spec: pull quotes, sidebars, advertising, groups of
nav
elements - Not for “parentheticals”
I would have liked to see whether aside is specifically meant for use outside of main
element. I think the implication is “yes”, but it’s unclear from the code examples, which do not contain a main
.