Chapter 5
Older versions of HTML also included a longdesc attribute for the img element. Its value was a URL
leading to a longer text alternative for the image, for those cases where a complete substitute simply
couldn’t fit into an alt attribute. A complex chart or graph might call for the same data presented in an
HTML table, a scan of a Civil War letter might lead to the letter’s full text, or a comic book page might need
detailed descriptions of the action in each panel along with all the dialog.
However, longdesc was rarely used properly, and many assistive devices (especially screen-readers) still
don’t fully support it after all this time. And so, as potentially useful as it may be, the longdesc attribute
has been dropped from HTML5 simply because it was so often ignored or misused, and other methods
exist to fulfill the same need. You can still offer the lengthy text alternative on a separate page and just link
to it directly.
Embedding Audio and Video
Although web browsers have had native support for images from the earliest days, incorporating audio or
video into a web page has long required a plug-in, a separate software component that adds more
capabilities to the browser but isn’t part of the browser itself, such as Adobe’s Flash, Apple’s QuickTime,
Microsoft’s Windows Media Player or Silverlight, and RealNetworks’ RealPlayer. These plug-ins work
(fairly) well (for the most part) and fill a longstanding gap in the browser landscape, but that gap is closing
with HTML5.
The “plug-in” nature of a plug-in also means the application that plays the audio and video content isn’t a
part of the web browser. A plug-in is locked into a virtual sandbox, with its program isolated from the
browser’s program, and isolated from other content on the page. Moreover, plug-ins are optional by
definition, so you can’t always be sure your visitor has the correct software to view your content.
HTML5 introduces the audio and video elements, allowing web authors to embed sound and moving
pictures into web pages without requiring proprietary plug-ins. Of course, it follows that the browser itself
must be able to play the embedded media, so only the latest browsers support these new elements, but
there are ways to provide fallback content for older browsers. There are also lingering issues around the
video and audio formats different browsers support, especially because some of the most popular formats
themselves are as closed and proprietary as the plug-ins that play them. This playing field should become
more level in time, but for the moment you’ll have to jump through just a few more hoops to offer rich
media to your visitors.
Media Codecs and Formats
Digital audio or video data is processed through a codec, a formula that converts and compresses sound
or video into a stream of bits for transmission over the Internet (the term “codec” is an abbreviated
combination of the words “code” and “decode”). When the data gets to the other end, the player must
possess the same codec in order to decode the encoded signal and convert it back into sound or video.
Some media codecs are patent-encumbered, meaning they’re owned and patented by a single company
and aren’t open standards, and the patent owners typically charge licensing fees for use of their
algorithms. Browser makers like Apple, Google, and Microsoft have deep pockets and are willing to license