Overview

This group presents Elements overall included in the Living Standard §4.8 (Embedded content). The SVG and MathML Elements, which are mentioned in §4.8 but mostly presented in their respective specifications are instead included as part of Group 8.

  1. object, embed and iframe provide generic content inclusion.
  2. img, picture, video and audio provide more MIME-type specific media embeddings.
  3. map, area, source and track provide linking mechanisms for medias in addition to their own attributes.

iframe Inline Frame

Requires target URL via data. Unlike object and embed, it cannot display video or audio content.

Using iframes for interface metaphors like sidebars and multipages is possible, less common compared to the past. An example is the website of SciDAVis, software for scientific visualisation, using an iframe to display subpages within about.html. Some argue against it, rarely with substance. Navbar with an iframe (Reddit). Can be used for cool things like a File Browser Editor in HTML.

Regular use works fine in the file:/// protocol. There may be some trouble with edge cases, disabling browser security on X-Frame-Options is always possible. NB. On Firefox, a standard refresh does not reflect data changes, but pressing Enter in the URL bar works.

area Image Map Area

Contained in map, similar to anchors and links, but defined on an specific polygonal area of its parent.

map Image Map

Contains a set of area, defining hyperlinks associated with various polygonal sections of the image.

img Image

Picture embedding accepting a src URL. Void element, unlike picture which accepts children to specify a set of source.

video Embed Video

May specify width and height, absolute integers (pixels). May specify a set of source as children, or alternatively src. May attribute loop, controls (to show/hide them), autoplay (but works only if muted). May specify poster show a thumbnail while the video downloads.

audio Embed Audio

May specify the source as src URL. May alternatively specify a set of source as children.

picture Picture

Picture embedding, specifying a set of source as children, unlike img which is a void element. May alternatively specify srcset

source Media or Image Source

Void element, used to specify source URL and metadata to its parent audio, picture, video.

track Embed Text Track

Its label is shown for user selection. Some file.vtt is linked via src, mandatory (cannot encode in html w/o JS). Track language is specified in srclang as BCP47 code. By default kind="subtitles" specifying usecase rel. to media: in this case, providing a translation and potentially add cues. Three alt. keywords: kind="captions" for full transcription and non-verbal cues. Makes media accessible to users that may be deaf or choose to mute it. kind="chapters" provides chapter rubrics for navigation. kind="metadata" is not shown, to be used via JS only, e.g. to add/store VTTCue. Fires cuechange events. May chronologically style via :past, :current, :future.

embed Embed External Content

Unlike iframe, and object, a Void element (no fallback). Size given via width/ height in pixels, Requires target URL in src and MIME-type in type. The object-fit property has no effect on it, object-position can be used to adjust positioning within the frame. Use title for accessibility.

object External Object

Unlike embed, the element can provide fallback. A common use-case is showing PDF files in the page, or a download option for browsers without readers. Requires the target URL in data, and MIME-type in type. The param Element, deprecated, used to exist to specify object paramters. See the W3.org HTML 4 Reference