embed element

(Referring UWEM Test: 1.1_HTML_06)

Test info

Failure cause

Found embed element.

You used the embed element to embed non-text content.

Why this may be a barrier

The embed element is not part of the HTML/XHTML standard and as such inherently inaccessible. Although it is widely supported in user agents you can not expect its context to be rendered correctly. If you can not avoid using embed make sure to provide an alternative with noembed.

Good Example

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 //EN">
<html>
<head><title>Sample: Page without EMBED-element</title></head>
<body>

<img src="../eGovMon_Logo.gif" alt="eGovMon – eGovernmant Monitor">

</body>
</html>

Solution

Try using an other element like object or img, or to present your content in a different format.

References

Related WCAG 1.0 Checkpoint

1.1

"Provide a text equivalent for every non-text element (e.g., via "alt", "longdesc", or in element content). This includes: images, graphical representations of text (including symbols), image map regions, animations (e.g., animated GIFs), applets and programmatic objects, ascii art, frames, scripts, images used as list bullets, spacers, graphical buttons, sounds (played with or without user interaction), stand-alone audio files, audio tracks of video, and video." [Priority 1]
WCAG 1.0 Checkpoint 1.1

Referring UWEM Test

1.1_HTML_06

This test is targeted to non-text content embedded with the non-standard embed element.

Examples

  • Placing a Youtube Flash-video on your HTML 4.01 page

    The code suggested by youtube to include flash-videos on your website is invalid. It uses a "twice cooked" approach, offering both the standard OBJECT and non-standard EMBED elements.
    Below you see an example of a suggested code and how to fix accessibility problems.
    To make the valid example XHTML 1.0 compliant, just replace <param ...></param> by <param ... />.

    Bad example:
    <body>
    <object width="425" height="344">
    <param name="movie" value="http://www.youtube.com/v/gtuna2AWvqk&hl=de_DE&fs=1"></param>
    <embed src="http://www.youtube.com/v/gtuna2AWvqk&hl=de_DE&fs=1" type="application/x-shockwave-flash" width="425" height="344"></embed>
     
    <noembed>
    <p>Video of the WCAG 2.0 Theme Song. You need Flash to see it.</p>
    </noembed>
    </object>
    </body>
    Good example:
    <body>
    <object width="425" height="344"
    type="application/x-shockwave-flash"
    data="http://www.youtube.com/v/gtuna2AWvqk&hl=de_DE&fs=1">
    <param name="movie" value="http://www.youtube.com/v/gtuna2AWvqk&hl=de_DE&fs=1"></param>
    <param name="allowScriptAcess" value="sameDomain"></param>
    <param name="allowFullScreen" value="true"></param>
    <param name="quality" value="best"></param>
    <param name="bgcolor" value="#FFFFFF"></param>
    <param name="scale" value="noScale"></param>
    <param name="salign" value="TL"></param>
    <param name="FlashVars" value="playerMode=embedded"></param>
     
    <!-- replacement of the noembed element - provide accessible, alternative content -->
    <p>Video of the WCAG 2.0 Theme Song by David MacDonald. You need Flash to see it.</p>
    </object>
    </body>
    Questions, suggestions, objections? Give us feedback!
  • Placing a Google Flash-video on your HTML 4.01 page

    Google Video suggests to only use the non-standard EMBED element to include their videos on your website.
    Below you see an example of a suggested code and how to fix accessibility problems.
    To make the valid example XHTML 1.0 compliant, just replace <param ...></param> by <param ... />.

    Bad example:
    <body>
    <embed id=VideoPlayback
    src=http://video.google.com/googleplayer.swf?docid=7707585592627775409&hl=de&fs=true
    style=width:400px;height:326px
    allowFullScreen=true
    allowScriptAccess=always
    type=application/x-shockwave-flash>
    </embed>
    </body>
    Good example:
    <body>
    <object type="application/x-shockwave-flash"
    data="http://video.google.com/googleplayer.swf?docid=7707585592627775409&hl=de&fs=true"
    width="400" height="326"
    id="VideoPlayback">
    <param name="movie" value="http://video.google.com/googleplayer.swf?docid=7707585592627775409&hl=de&fs=true"></param>
    <param name="allowScriptAcess" value="sameDomain"></param>
    <param name="allowFullScreen" value="true"></param>
    <param name="quality" value="best"></param>
    <param name="bgcolor" value="#FFFFFF"></param>
    <param name="scale" value="noScale"></param>
    <param name="salign" value="TL"></param>
    <param name="FlashVars" value="playerMode=embedded"></param>
     
    <!-- provide accessible, alternative content -->
    <h1>Revolution OS</h1>
    <p>You need Flash to see this video.</p>
    <p>Revolution OS is a 2001 documentary which traces the history of GNU, Linux, and the open source and free software movements. It features several interviews with prominent hackers and entrepreneurs (and hackers-cum-entrepreneurs), including Richard Stallman, Michael Tiemann, Linus Torvalds, Larry Augustin, Eric S. Raymond, Bruce Perens, Frank Hecker and Brian Behlendorf. The film begins in medias res ...</p>
     
    </object>
    </body>
    Questions, suggestions, objections? Give us feedback!
  • Placing a Windows Media File on your HTML 4.01 page
    Bad example:
    <body>
    <object type="application/x-oleobject"
    width="320" height="260"
    classid="CLSID:22D6f312-B0F6-11D0-94AB-0080C74C7E95"
    codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,7,1112">
     
    <param name="filename" value="http://mydomain.com/myVideo.wmv"></param>
    <param name="Showcontrols" value="True"></param>
    <param name="autoStart" value="True"></param>
    <embed type="application/x-mplayer2" src="http://mydomain.com/myVideo.wmv" name="MediaPlayer" width=320 height=260></embed>
     
    </object>
    </body>
    Good example:
    <body>
    <object type="video/x-ms-wmv"
    width="320" height="260"
    data="http://mydomain.com/myVideo.wmv">
    <param name="src" value="http://mydomain.com/myVideo.wmv"></param>
    <param name="controller" value="true"></param>
    <param name="autostart" value="true"></param>
     
    <!-- provide accessible, alternative content -->
    <p>This video shows me, dancing in the streets of Oslo. You need Flash to see it</p>
     
    </object>
    </body>
    Questions, suggestions, objections? Give us feedback!
Questions, suggestions, objections? Give us feedback!