question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Suggestions for toolbar accessibility

See original GitHub issue

There has clearly been some effort made to make the quill editor and toolbar keyboard-accessible. As it is, you can do pretty much everything Quill has to offer without a mouse 👍

In developing with Quill, however, I’ve noticed a number of improvements that could be made to make the editor more accessible, particular for screenreaders.

Toolbar Buttons

  • each toolbar button needs a label (aria-label/aria-labelledby)
  • each toolbar button should have an attribute representing its state (aria-pressed)

Tooltips

  • tooltips needs role="tooltip" and aria-hidden
  • tooltip trigger needs aria-describedby="tooltip-id"

Select/Dropdowns

  • each option needs an aria-label/aria-labelledby (currently, text only exists in stylesheets :before)
  • The span that displays the selected option needs to be labeled (aria-label)
  • The color contrast of selected option type is too low (1.61:1)
  • Options are currently tab-able, but should function like native select/options (with arrow keys) (this is a nice-to-have)

Editor

  • when there’s a placeholder, assign it to aria-placeholder
  • Apply textbox="role" to the textarea-like box
  • When multiline input is accepted, use aria-multiline
  • When the text area is read-only, use aria-readonly

Picker

  • the trigger needs to be labelled with the currently selected color (currently, only derived by the color of the button)
    • Each color in the picker needs a label (aria-label)

I’d be happy to help in implementing these – I just wanted to get feedback from maintainers before working on a PR.

Issue Analytics

  • State:open
  • Created 5 years ago
  • Reactions:29
  • Comments:12 (1 by maintainers)

github_iconTop GitHub Comments

8reactions
dexterituscommented, Jan 22, 2019

@venkata82 try something like Editor.modules = { keyboard: { bindings: { tab: false } } };

4reactions
LadyAronacommented, May 18, 2019

Please keep improving the accessibility of this wonderful editor.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Toolbar | APG | WAI - W3C
A toolbar is a container for grouping a set of controls, such as buttons, menubuttons, or checkboxes. When a set of controls is...
Read more >
ARIA: toolbar role - Accessibility - MDN Web Docs
A toolbar is a collection of commonly used controls, such as buttons or checkboxes, grouped together in a compact visual form.
Read more >
How to Add Accessibility Toolbar to Site - RJ Web Builder 3.0!
To access, go to Accessibility > Settings. Finally, you can set the image, color and position of the toolbar, as it is seen...
Read more >
Top 10 Tips for Making Your Website Accessible
For elements like editing toolbars and video players, make sure that they support creating accessible content. For example, editing toolbars should include ...
Read more >
Accessibility: Adding an Accessibility Toolbar to Your Site
To add an accessibility toolbar using third-party code: · Go to your Settings in your site's dashboard. · Select the Custom Code tab...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found