HTML and CSS Reference
In-Depth Information
This code is ugly and ungainly. Worse still is the fact that the
browser has to pass the video off to a third-party plugin; hope
that the user has the correct version of that plugin (or has the
rights to download and install it, and the knowledge of how to
do so); and then hope that the plugin is keyboard accessible—
along with all the other unknowns involved in handing the con-
tent to a third-party application.
Plugins can also be a significant cause of browser instability
and can create worry for less technical users when they are
prompted to download and install newer versions.
Whenever you include a plugin in your pages, you're reserving
a certain drawing area that the browser delegates to the plugin.
As far as the browser is concerned, the plugin's area remains a
black box—the browser does not process or interpret anything
that happens there.
Normally, this is not a problem, but issues can arise when your
layout overlaps the plugin's drawing area. Imagine, for example,
a site that contains a movie but also has JavaScript or CSS-based
drop-down menus that need to unfold over the movie. By default,
the plugin's drawing area sits on top of the web page, meaning
that these menus will strangely appear behind the movie.
Problems and quirks can also arise if your page has dynamic
layout changes. Resizing the dimensions of the plugin's drawing
area can sometimes have unforeseen effects—a movie playing in
the plugin may not resize, but instead simply may be cropped or
display extra white space. HTML5 provides a standardised way to
play video directly in the browser, with no plugins required.
One of the major advantages of the HTML5 video element is
that, finally, video is a full-fledged citizen on the Web. It's no lon-
ger shunted of to the hinterland of
<object>
or the nonvalidat-
ing
<embed>
element.
So now,
<video>
elements can be styled with CSS. They can be
resized on hover using CSS transitions, for example. They can
be tweaked and redisplayed onto
<canvas>
with JavaScript. Best
of all, the innate hackability that open web standards provide
is opened up. Previously, all your video data was locked away;
your bits were trapped in a box. With HTML5 multimedia, your
bits are free to be manipulated however you want.
NoTE
<embed>
is finally
standardised in HTML5; it
was never part of any previous
flavour of (X)HTML.