Skip to content

Document landmark regions for (third-party) block developers #3217

@afercia

Description

@afercia

#2380 introduced ARIA landmarks to identify three main regions in the editor. #3084 enforced this content organization introducing keyboard navigation through these regions.

These main regions identify three main UI sections that are logically different by their content nature:

  • the top toolbar
  • the sidebar
  • the editing area

To make this content organization effective, worth considering a few improvements.

All Gutenberg content should be inside one of these three regions. Nothing can be left outside of them. See also https://www.w3.org/WAI/GL/wiki/Using_ARIA_landmarks_to_identify_regions_of_a_page

It is a best practice to include ALL content on the page in landmarks, so that screen reader users who rely on them to navigate from section to section do not lose track of content.

Currently, there are three content areas that should probably be moved in the source:

  • the notifications area
  • the table of contents
  • the meta boxes panel

See screenshot below:

screen shot 2017-10-28 at 16 29 46

  • the notifications area: currently it's not inside one of the main region
  • the table of contents: it's inside the editing region named "Editor content". Ideally, this region should exclusively contain editable content or tools related to editing. Instead, word count and ToC are info on the document structure and should be placed outside of the content region (maybe in the sidebar?)
  • the meta boxes panel: it's inside the content region but it's not exactly content: maybe it should be in its own region? (a 4th new one?)

Worth noting I'm referring to the placement of content in the source, not to visuals. Ideally, for a11y content order and visual order should match. However, small adjustments can be acceptable.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions