A Blank Slate: Canvas

Another anticipated use for scripting is to automate the new HTML5 canvas element. This element provides an automatable surface for drawing on, whether it’s done by the content creator (games, animations, etc.) or the reader (drawing or writing surface), which is why I omitted tackling it with the rest of the semantics and structure elements.

Although a potentially interesting element to use in ebooks, at this time the canvas element remains largely a black hole to assistive technologies. A summary of the discussions that have been taking place to fix the accessibility problems as of writing is available on the Paciello Group website. Fixes for these accessibility issues will undoubtedly come in time, perhaps directly for the element or perhaps through WAI-ARIA, but it’s too soon to say.

So is the answer to avoid the element completely until the problems are solved? It would be nice if you could, but wouldn’t be realistic to expect of everyone. Using it judiciously would be a better course to steer.

For now including accessible alternatives is about all you can do. If you’re using the element to draw graphs and charts, you could add a description with the data using the aria-describedby attribute and the techniques we outlined while dealing with images. If you’re using the element for games and the like, consider the issues we detailed at the outset of the section in determining how much information to give.

With canvas, we really have to wait and see, ...

Get Accessible EPUB 3 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.