Making Chrome more accessible with extensions

Wednesday, June 30, 2010

Labels: ,

Personalizing the web to match the needs and abilities of users is a big part of improving overall web accessibility. While we continue to work hard on making core Google Chrome more accessible, we're really excited about using browser extensions to improve the accessibility of the web for millions of users.

There are already some extensions among the more than 5,000 in the gallery that can benefit users with special needs. Some of these extensions use Chrome APIs and content scripts to alter the browser and manipulate the DOM of pages, offering users almost unlimited flexibility for viewing the web. Other extensions choose to implement altenative workflows, instead of adapting existing web page UIs, to give users faster access to content. These extensions benefit not just users of assistive technologies like screen readers but everyone who prefers access modes like keyboard shortcuts and captions.

If you are interested in making your extensions more accessible, we’ve created a new Accessibility implementation guide in the Chrome Extensions Developer's Guide that gives you an overview of accessibility best practices such as keyboard navigation, color contrast and text magnification. We’ve also open sourced the code behind ChromeVis, a new extension for users with low vision, so that you can use some of its code for manipulating text selection and magnification in your own extensions.



Already the NPR team has implemented some accessibility best practices in their extension. We hope to see more extensions adopting them. From our end, we're sponsoring a Summer of Code project to produce an extension that helps users produce custom style sheets and plan to create additional extensions that make navigating the web through Chrome easier.

We've also set up a Google Moderator topic where everyone can submit ideas for extensions that improve web accessibility. We hope these ideas will inspire extensions developers who are looking to create something useful for the community.

Stay tuned for future updates about Chrome Extensions and accessibility!

15 comments:

Mohamed Mansour said...

Awesome work Rachel, keep it up. Would be nice if something like this (navigate by paragraph, sentence, and word) is implemented natively (somehow), I believe recently web content in Chrome is now accessible through screen reader. And those navigation features would be awesome to have by default (natively).

ramkrishan said...

hi Rachel congrats for that you really speak well and clear ..i want to know more about google projects.
can we discuss ?
my email id is ramkrishan.bhatt@gmail.com

randall said...

Looked at the extension. Neat what a few KB of JS can do.

I could imagine some folks using a lens anchored to the left or right of the page -- useful if they're on a big widescreen monitor, for instance. Would avoid the need for the body.marginTop changes that jostle the content around with the lens anchored on top, but you'd need to do something when there's too much content to fit in the lens. A scrollable lens wouldn't be ideal given the goal of keyboard navigability. Maybe shrink the text until it fits?

Another half-formed idea to avoid the jostling in anchored mode: allow the lens to anchor itself at the bottom *or* top of the window, covering up some page content, and "move it out of the way" (i.e., to the other edge of the window) when the selection moves under it or the mouse moves into it. Much easier said than done.

The proper response to all this is, of course, "if you think your ideas are so great, go implement them." Blargh -- maybe possibly, in my Copious Free Time.

In conclusion, funny that "zIndex = 100000000000" is the only way to say "put this on TOP, dangit!" Ze Veb, it is a crazy platform. :P

umnomequalquer said...

according to Firebug, Firefox's max z-index is 2147483646

snorkel said...

Want to help web accessibility? Stop helping Flash to continue to thrive.

Seriously, I understand why you integrated Flash in to Chrome, but it is really hard to think of another technology that has done more to harm web accessibility than Flash.

AndreaFercia said...

great work but about "keyboard navigation" it would be great Google engineers could focus on improving the odd focus model employed by WebKit that sadly makes Chrome (and Safari) the worst browser for keyboard navigation together with IE.
About so called "in-page links", meaning when the anchor destination is a fragment identifier, please see:
http://jimthatcher.com/skipnav.htm
more (and useful demo) on:
http://www.communis.co.uk/blog/2009-06-02-skip-links-chrome-safari-and-added-wai-aria
demo:
http://www.communis.co.uk/examples/skiplink-redux.html

thx, ciao from Italy

randall said...

Okay, this one might be a genuinely good idea: smartphone-style zoom for Chrome. Double-click a column of text or select and hit a hotkey; the extension tries to figure out the column dimensions and futzes with document.body.style.zoom and scrollLeft/scrollTop until the first line is plastered across the whole top of the browser.

Doesn't disrupt layout, works well on wide screens, deals with content in images and such. Could be provided as a bookmarklet for other browsers.

You still have to deal with websites with bad contrast or long lines of text (bad design anyway!). But definitely a start.

randall said...

(Just looked at the Readability bookmarklet and 1) it's not a bad accessibility tool in itself, and 2) it's under Apache 2.0 and has some logic for IDing the main content block that could have other uses. Hrmm...)

randall said...

Hey, toy code: http://dpaste.org/zZUT/ . You can paste this into the Inspector console and then double-click around and zoom like you were in a phone browser. (This comment box is HUGE now. And so easy to read it blows my freaking mind.)

Doubt I'll do anything with it but was fun to write and sort of proves the concept. Anyhow, public domain, enjoy.

randall said...

Worked some more on the smartphone-style zoom idea from the other day. An installable extension is at http://bit.ly/aKovwg : alt+click zooms or unzooms. Content scripts are fun!

I'm trying it out a few days to check that it doesn't break everything, and if it doesn't I'll hit Publish on the extension gallery entry I've got set up.

Franken said...

Too bad it's impossible to install the extentions.. "Unable to create directory for unzipping".. A LOT of people is having trouble with this atm. The tooltip that suggest you to go get plugins should be disabled until you actually CAN install plugs.

JCKodel said...

Would be nice an extension for Safari-like font smoothing (beautifull font antialias, as in Mac or Linux, instead of the ugly Windows ClearType).

Lloyd said...

One thing you can do to improve accessibility is sort out the start-up of a new tab in chrome. I often press CTRL+T, type a couple of letters so that autocomplete suggests the website I want and hit enter. If this happens before the most-viewed screen is loaded, it often doesn't load the page.

There's no good reason this should happen, and so consistently too.

Also, if this suggestion is misplaced, put a contact link somewhere prominently on your blog so that future suggestions can be correctly directed conveniently.

Drs. Albert Spijkers said...

Great tool for visual impaired! If I were you I would make the extension available on the 5 most used browser on the major platforms. This gives the visual impaired the oppertunity to have freedom of browser and OS choice and you can make a dollar (or more) in the process. I would opt for an extensions standard for web browsers in general.

Albert Spijkers
Cognitive Psychologist and
IT Consultant.

Alain75 said...

I am a user of chromium since extensions are available. I upload every weed the last zip from http://build.chromium.org/buildbot/snapshots/chromium-rel-xp/

May I suggest one little evolution in Chromium ? It would be, when the user clicks on the "update extensions" button of the extensions page to show in the list then ones updated.