How can HTML5 "replace" Flash?

Mike Willekes picture Mike Willekes · Jan 31, 2010 · Viewed 85.9k times · Source

A topic of debate that's seen a resurgence since the unveiling of the iPad is the issue of Flash versus HTML5. There are those that suggest that HTML5 will one day supplant/replace Adobe Flash.

I do not develop software that runs in a browser, so my (limited) understanding is:

  • HTML is a pure-text markup language that is delivered over HTTP to a client browser. The client browser interprets the markup and renders (with varying degrees of success) the page according to an standard specification.
  • Adobe Flash is a propriety framework for working with audio, video, sound and raster/vector graphics. It requires special authoring tools (a compiler perhaps?) and a custom player that's available as a plug-in to most common browsers.

Could someone please explain (to this C/C++ developer) how it is possible from a technical/coding point-of-view that a text-based markup language (HTML5) could be considered a replacement to a multimedia framework (Flash)?

Please no opinionated arguments - just technical facts.

Answer

Yuji picture Yuji · Jan 31, 2010

What people loosely refer to HTML5 in the context of this discussion is the combination of HTML as a markup language, CSS which specifies how it is rendered, and the javascript code which manipulates the HTML and CSS dynamically.

Furthermore, HTML5 not only has the standard text elements, but also <canvas> on which 2d graphics can be drawn, and <video> elements which embeds the video (as the name suggests).

So, in a full-fledged implementation of HTML5, you can implement dynamic web sites without using Flash. An example is the HTML5 version of Youtube, recently introduced as beta for Safari/Chrome users, see here. Another is an NES emulator in javascript + HTML. (Well the latter does not really concern HTML5... it uses <canvas>.)