Skip to content

Instantly share code, notes, and snippets.

@paulirish
Created September 29, 2010 22:25
Show Gist options
  • Star 6 You must be signed in to star a gist
  • Fork 5 You must be signed in to fork a gist
  • Save paulirish/603681 to your computer and use it in GitHub Desktop.
Save paulirish/603681 to your computer and use it in GitHub Desktop.
html5 and friends - a bigass bulleted list of features

HTML5 and friends.

A bigass bulleted list of features.

I commonly need to get a big list of all the stuff people think of when they think new and shiny these days. This list is for that.

I take a very inclusionist approach to it. 1

javascript APIs

  • Web Storage (localStorage, sessionStorage)
  • Web SQL Database
  • IndexedDB
  • app Cache
  • postMessage
  • Notifications
  • Geolocation
  • Dedicated Workers
  • Shared Workers
  • File/FileReader API
  • Drag and Drop
  • Web Sockets
  • History pushState
  • hashchange event
  • MessagePorts
  • CORS (cross origin resource sharing)
  • touch events
  • ECMAScript 5
    • getters, setters
    • array extras
  • canvas 2d
  • canvas 3d (webgl)
  • server-sent events (eventsource)
  • UndoManager
  • selectors api

markup

  • audio tag
  • video tag
    • timed track (subtitles)
  • ruby tag
  • new semantic tags
    • section, nav, article, aside, hgroup, header, footer, address, figure, figcaption, time, code, var, samp, kbd, output
  • new behavior/application tags
    • progress, meter, details/summary, command, menu, keygen
  • webforms
    • new input types
      • telephone, search, url, e-mail, date, time, month, week, number, range, color
    • input autofocus, placeholder
    • form validation
    • multiple file upload
  • SVG
    • inline SVG
    • SMIL animation
  • MathML
  • aria roles and states
  • ping attribute
  • magic iframe
  • sandbox iframe
  • contenteditable
  • microdata, RDFa
  • link relations
    • alternate, archives, author, bookmark, external, help, icon, license, nofollow, noreferrer, pingback, prefetch, search, sidebar, tag, index, up, first, last, next, prev
  • data-* and dataset
  • classList API
  • link prefetching
  • device element (camera and microphone continuous input)
  • speech attribute
  • p2p connections
  • XHTML polyglot
  • standardized HTML5 parser

style

  • css transitions
  • animations
  • 2d transforms
  • 3d transforms
  • Rounded Corners
  • text columns
  • web fonts, woff
  • Gradients
  • css3 selectors
  • flex box model
  • box shadows
  • pointer events
  • multiple backgrounds
  • background-[size|origin|clip]

style, continued

  • reflections
  • overflow: ellipsis
  • Text Stroke
  • box-mask-image
  • CSS styling of new HTML5 input types

other

  • O3D api for webgl
  • GPU acceleration of HTML, Canvas, SVG, and CSS3 Animations/Transitions/Transforms
  • getElementsByClassName
  • innerHTML, outerHTML, insertAdjacentHTML
  • script defer/async
  • audio data API

1 (obviously lots of flexibility in this list.. not just strict HTML5 of course. it does and will include things that are even just proposed or experimental features.)

Things Flash can do that HTML5 cannot

or at least what other people think.. (my thoughts in parens)

  • camera & microphone access (yeah. but, see work ericisson is doing on this front)
  • audio processing (in works in audio data api (mozilla and webkit have two separate specs for this))
  • video/audio streaming (works, depending on codec. see fluomotion. not well documented: h264 streaming isnt possible in non-safari)
  • P2P (developing in device spec)
  • video with alpha channel (canvas workaround from jake archibald)
  • sockets (websockets are widely deployed now)
  • flash media server (whats the value of it that we need?)
  • good IDE (yup, it's true. though most professional flash work is done in AS predominantly so the IDE is pretty moot)
  • better image/video compression (dubious but i dont know), usually smaller file size,
  • DRM (yup...... maybe. token-y expiration-y somethingsomething might be close)

original list was taken from this post

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment