Permissions on the Web

Dominique Hazael-Massieux

Copyright © 2014 W3C ® (MIT, ERCIM, Keio, Beihang)

Permission Denied

@dontcallmeDOM

Web & Native

Some features…

2D Vector Graphics

Scalable Vector Graphics (SVG) 1.1 Specification
REC
Widely deployed
Support for svg12Supported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 1010+ Supported in Chrome for Android from version 3636+
Scalable Vector Graphics (SVG) 2
WD
N/A
Support for svg2Not supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

2D Programmatic API

HTML Canvas 2D Context
LastCall
Widely deployed
Support for canvasSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 33+ Supported in Opera mobile from version 1010+ Supported in Chrome for Android from version 3636+
Canvas Proxy for Web Workers in HTML 5.1
WD
None
Support for canvasproxySupported in Safari on iOS unknown? Supported in Blackberry browser unknown? Supported in Internet Explorer on Windows Phone unknown? Supported in Firefox mobile unknown? Supported in Android browser unknown? Supported in Opera mobile unknown? Supported in Chrome for Android unknown?

Rounded Corners

CSS Backgrounds and Borders Module Level 3
LastCall
Well deployed
Support for css-borderSupported in Safari on iOS from version 6.06.0+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1111+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+

Complex background images

CSS Backgrounds and Borders Module Level 3
LastCall
Well deployed
Support for css-borderSupported in Safari on iOS from version 6.06.0+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1111+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+

Box shadow effects

CSS Backgrounds and Borders Module Level 3
LastCall
Well deployed
Support for css-borderSupported in Safari on iOS from version 6.06.0+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1111+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+

2D Effects

CSS Transforms Module Level 1
WD
Well deployed
Support for css-2dSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 2.12.1+ Supported in Opera mobile from version 1111+ Supported in Chrome for Android from version 3636+

3D Effects

CSS Transforms Module Level 1
WD
Well deployed
Support for css-3dSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Partial support in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 33+ Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+

Animations

CSS Animations
WD
Well deployed
Support for css-animationSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 44+ Supported in Opera mobile from version 12.112.1+ Supported in Chrome for Android from version 3636+
CSS Transitions
WD
Well deployed
Support for css-transitionsSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 2.12.1+ Supported in Opera mobile from version 1010+ Supported in Chrome for Android from version 3636+
Web Animations 1.0
WD
Limited
Support for webanimationsNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Supported in Chrome for Android from version 3636+
Timing control for script-based animations
CR
Well deployed
Support for animation-timingSupported in Safari on iOS from version 6.06.0+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+
CSS Will Change Module Level 1
WD
A few experimental ones
Support for css-will-changeNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Supported in Chrome for Android from version 3636+

Complex layouts

CSS Flexible Box Layout Module Level 1
LastCall
Well deployed
Support for flexboxSupported in Safari on iOS from version 7.07.0+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1111+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 12.112.1+ Supported in Chrome for Android from version 3636+

Downloadable fonts

WOFF File Format 1.0
REC
Good deployment
Support for woffSupported in Safari on iOS from version 5.05.0+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 1111+ Supported in Chrome for Android from version 3636+
WOFF File Format 2.0
WD
Very limited
Support for woff2Not supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Supported in Chrome for Android from version 3636+
CSS Font Loading Module Level 3
LastCall
Limited
Support for css-font-loadingNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Supported in Chrome for Android from version 3535+

Fullscreen display

Fullscreen
WD
Limited
Support for fullscreenNot supported in Safari on iOSX Partial support in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1111+ Partial support in Firefox mobile from version 3131+ Not supported in Android browserX Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+

Orientation Lock

The Screen Orientation API
WD
Very limited
Support for screenlockSupported in Safari on iOS unknown? Supported in Blackberry browser unknown? Supported in Internet Explorer on Windows Phone from version 1111+ Supported in Firefox mobile from version 1414+ Supported in Android browser unknown? Supported in Opera mobile unknown? Supported in Chrome for Android unknown?

Video playback

video element in HTML5
CR
Good deployment
Support for videoSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 2.32.3+ Supported in Opera mobile from version 1111+ Supported in Chrome for Android from version 3636+

Audio playback

audio element in HTML5
CR
Good deployment
Support for audioSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 2.32.3+ Supported in Opera mobile from version 1111+ Supported in Chrome for Android from version 3636+

Generation of media content

Media Source Extensions
CR
Limited
Support for mseSupported in Safari on iOS unknown? Supported in Blackberry browser unknown? Supported in Internet Explorer on Windows Phone from version 1111+ Partial support in Firefox mobile from version 2525+ Supported in Android browser unknown? Supported in Opera mobile unknown? Supported in Chrome for Android from version 2323+

Protected content playback

Encrypted Media Extensions
WD
Limited
Support for emeNot supported in Safari on iOSX Not supported in Blackberry browserX Supported in Internet Explorer on Windows Phone from version 1111+ Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Supported in Chrome for Android from version 3232+

Multimedia Gallery access

Network Service Discovery
WD
None
Support for discoveryNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Capturing audio/video

HTML Media Capture
LastCall
Growing deployment
Support for inputacceptSupported in Safari on iOS from version 6.06.0+ Supported in Blackberry browser from version 1010+ Not supported in Internet Explorer on Windows PhoneX Partial support in Firefox mobile from version 99+ Partial support in Android browser from version 3.03.0+ Not supported in Opera mobileX Supported in Chrome for Android from version 1818+
Media Capture and Streams
WD
Limited but growing
Support for getusermediaNot supported in Safari on iOSX Supported in Blackberry browser from version 1010+ Not supported in Internet Explorer on Windows PhoneX Supported in Firefox mobile from version 3131+ Not supported in Android browserX Supported in Opera mobile from version 1212+ Supported in Chrome for Android from version 3636+
MediaStream Recording
WD
None
Support for recordingNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX
Mediastream Image Capture
WD
None
Support for imagecaptureNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Image & Video analysis, modification

HTML Canvas 2D Context
LastCall
Widely deployed
Support for canvasSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 33+ Supported in Opera mobile from version 1010+ Supported in Chrome for Android from version 3636+

Audio analysis, modification

Web Audio API
WD
Growing
Support for webaudioSupported in Safari on iOS from version 6.06.0+ Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Supported in Firefox mobile from version 3131+ Not supported in Android browserX Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+

Media Capture Capabilities

Media Capture and Streams
WD
None
Support for getusermedia-capNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

CSS-based adaptation

Media Queries
REC
Widely deployed
Support for mediaqueriesSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 2.12.1+ Supported in Opera mobile from version 1010+ Supported in Chrome for Android from version 3636+
Media Queries Level 4
WD
None
Support for mediaqueries4Supported in Safari on iOS unknown? Supported in Blackberry browser unknown? Supported in Internet Explorer on Windows Phone unknown? Supported in Firefox mobile unknown? Supported in Android browser unknown? Supported in Opera mobile unknown? Supported in Chrome for Android unknown?
CSS Device Adaptation
WD
Very limited
Support for css-device-adaptNot supported in Safari on iOSX Not supported in Blackberry browserX Partial support in Internet Explorer on Windows Phone from version 1010+ Not supported in Firefox mobileX Not supported in Android browserX Supported in Opera mobile from version 11.111.1+ Not supported in Chrome for AndroidX
viewport relative units in CSS Values and Units Module Level 3
CR
Well deployed
Support for viewport-unitsPartial support in Safari on iOS from version 6.06.0+ Partial support in Blackberry browser from version 1010+ Partial support in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+
CSS Mobile Text Size Adjustment Module Level 1
ed
Very limited
Support for css-size-adjustSupported in Safari on iOS from version 5.05.0+ Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Supported in Firefox mobile from version 3131+ Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Responsive images

picture element in HTML 5.1
WD
Limited
Support for pictureNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Supported in Firefox mobile from version 3333+ Not supported in Android browserX Not supported in Opera mobileX Supported in Chrome for Android from version 3838+
srcset attribute in HTML 5.1
WD
Limited but growing
Support for srcsetSupported in Safari on iOS from version 88+ Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+
Scalable Vector Graphics (SVG) 1.1 Specification
REC
Widely deployed
Support for svg12Supported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 1010+ Supported in Chrome for Android from version 3636+

Date and time entries

Data and Time input element in HTML5
CR
Growing
Support for inputdateSupported in Safari on iOS from version 88+ Supported in Blackberry browser from version 1010+ Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 1010+ Supported in Chrome for Android from version 3636+

Customized text entries (tel, email, url)

telephone, email and URL input element in HTML5
CR
Well deployed
Support for inputtextPartial support in Safari on iOS from version 55+ Partial support in Blackberry browser from version 4.7.14.7.1+ Supported in Internet Explorer on Windows Phone from version 1010+ Partial support in Firefox mobile from version 44+ Partial support in Android browser from version 33+ Supported in Opera mobile from version 1111+ Supported in Chrome for Android from version 1818+

Input modality

inputmode attribute in HTML 5.1
WD
None
Support for inputmodeSupported in Safari on iOS unknown? Supported in Blackberry browser unknown? Supported in Internet Explorer on Windows Phone unknown? Supported in Firefox mobile unknown? Supported in Android browser unknown? Supported in Opera mobile unknown? Supported in Chrome for Android unknown?

Input pattern

pattern attribute in HTML5
CR
Limited but growing
Support for inputpatternNot supported in Safari on iOSX Supported in Blackberry browser from version 4.7.14.7.1+ Not supported in Internet Explorer on Windows PhoneX Partial support in Firefox mobile from version 44+ Not supported in Android browserX Supported in Opera mobile from version 1111+ Supported in Chrome for Android from version 1818+

Input hint

placeholder attribute in HTML5
CR
Well deployed
Support for inputhintSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 2.12.1+ Supported in Opera mobile from version 1111+ Supported in Chrome for Android from version 3636+

Autocomplete for text entries

datalist element in HTML5
CR
Growing
Support for datalistNot supported in Safari on iOSX Supported in Blackberry browser from version 1010+ Partial support in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.4.34.4.3+ Supported in Opera mobile from version 1010+ Supported in Chrome for Android from version 3636+
autocomplete attribute in HTML 5.1
WD
None
Support for autocompleteSupported in Safari on iOS unknown? Supported in Blackberry browser unknown? Supported in Internet Explorer on Windows Phone unknown? Supported in Firefox mobile unknown? Supported in Android browser unknown? Supported in Opera mobile unknown? Supported in Chrome for Android from version 3131+

Touch-based interactions

Touch Events
REC
Largely deployed
Support for toucheventSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Not supported in Internet Explorer on Windows PhoneX Supported in Firefox mobile from version 3131+ Supported in Android browser from version 2.12.1+ Supported in Opera mobile from version 1111+ Supported in Chrome for Android from version 3636+
Pointer Events
CR
Limited deployment
Support for pointer-eventsNot supported in Safari on iOSX Not supported in Blackberry browserX Supported in Internet Explorer on Windows Phone from version 1111+ Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Smooth scrolling

CSSOM View Module
WD
None
Support for smooth-scrollNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX
CSS Scroll Snap Points Module Level 1
ed
Experimental
Support for css-snappointsNot supported in Safari on iOSX Not supported in Blackberry browserX Partial support in Internet Explorer on Windows Phone from version 1010+ Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX
CSS Will Change Module Level 1
WD
A few experimental ones
Support for css-will-changeNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Supported in Chrome for Android from version 3636+

On-screen keyboard interactions

Input Method Editor API
WD
Very limited
Support for imeNot supported in Safari on iOSX Not supported in Blackberry browserX Supported in Internet Explorer on Windows Phone from version 1111+ Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Vibration

Vibration API
LastCall
Growing
Support for vibrationNot supported in Safari on iOSX Supported in Blackberry browser from version 1010+ Not supported in Internet Explorer on Windows PhoneX Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+

Intent-based events

IndieUI: Events 1.0
WD
None

Notification

Web Notifications
LastCall
Growing deployment
Support for notificationNot supported in Safari on iOSX Supported in Blackberry browser from version 1010+ Not supported in Internet Explorer on Windows PhoneX Supported in Firefox mobile from version 3131+ Partial support in Android browser from version 4.44.4+ Partial support in Opera mobile from version 2222+ Not supported in Chrome for AndroidX
Push API
WD
None
Support for pushNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Speech-based interactions

Web Speech API
N/A
Limited but growing
Support for speechinputPartial support in Safari on iOS from version 7.07.0+ Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Partial support in Chrome for Android from version 3636+

Screen wake

Wake Lock API
N/A
None
Support for wake-lockNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Accessibility

Relationship between Mobile Web Best Practices (MWBP) and Web Content Accessibility Guidelines (WCAG)
NOTE
N/A
Accessible Rich Internet Applications (WAI-ARIA) 1.0
REC
Well deployed
Support for ariaPartial support in Safari on iOS from version 3.23.2+ Not supported in Blackberry browserX Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Partial support in Android browser from version 4.44.4+ Partial support in Opera mobile from version 1010+ Partial support in Chrome for Android from version 3636+

Simple data storage

Web Storage
REC
Well deployed
Support for webstorageSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 2.12.1+ Supported in Opera mobile from version 1111+ Supported in Chrome for Android from version 3636+

File operations

File API
LastCall
Getting well deployed
Support for filereaderSupported in Safari on iOS from version 6.06.0+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 33+ Supported in Opera mobile from version 11.111.1+ Supported in Chrome for Android from version 3636+
File API: Writer
Retired
Limited
Support for filewriteNot supported in Safari on iOSX Supported in Blackberry browser from version 1010+ Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+
File API: Directories and System
Retired
Limited
Support for filesystemNot supported in Safari on iOSX Supported in Blackberry browser from version 1010+ Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+
FileSystem API
N/A
N/A
download attribute in HTML5
CR
Limited, but growing
Support for html5-downloadNot supported in Safari on iOSX Supported in Blackberry browser from version 1010+ Not supported in Internet Explorer on Windows PhoneX Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+

Database query/update

Indexed Database API
CR
Growing
Support for indexeddbSupported in Safari on iOS from version 88+ Partial support in Blackberry browser from version 1010+ Partial support in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+
Web SQL Database
Retired
Somewhat deployed, but won’t be further deployed
Support for websqlSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Supported in Android browser from version 2.12.1+ Supported in Opera mobile from version 1111+ Supported in Chrome for Android from version 3636+

Quota for storage

Quota Management API
WD
Very limited
Support for quotaNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Supported in Chrome for Android from version 1818+

Encrypted storage

Web Cryptography API
LastCall
Limited but growing
Support for cryptoNot supported in Safari on iOSX Not supported in Blackberry browserX Partial support in Internet Explorer on Windows Phone from version 1111+ Partial support in Firefox mobile from version 1919+ Not supported in Android browserX Not supported in Opera mobileX Supported in Chrome for Android from version 3737+
WebCrypto Key Discovery
WD
None
Support for cryptokeyNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Addressbook data

Contacts Manager API
WD
None
Support for contacts-sysSupported in Safari on iOS unknown? Supported in Blackberry browser unknown? Supported in Internet Explorer on Windows Phone unknown? Supported in Firefox mobile unknown? Supported in Android browser unknown? Supported in Opera mobile unknown? Supported in Chrome for Android unknown?
autocomplete attribute in HTML 5.1
WD
None
Support for autocompleteSupported in Safari on iOS unknown? Supported in Blackberry browser unknown? Supported in Internet Explorer on Windows Phone unknown? Supported in Firefox mobile unknown? Supported in Android browser unknown? Supported in Opera mobile unknown? Supported in Chrome for Android from version 3131+

Geolocation

Geolocation API Specification
REC
Widely deployed
Support for geolocationSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 2.12.1+ Supported in Opera mobile from version 1111+ Supported in Chrome for Android from version 3636+

Motion sensors

DeviceOrientation Event Specification
LastCall
Well deployed
Support for accelerometerPartial support in Safari on iOS from version 4.24.2+ Partial support in Blackberry browser from version 1010+ Partial support in Internet Explorer on Windows Phone from version 1111+ Partial support in Firefox mobile from version 3131+ Partial support in Android browser from version 33+ Supported in Opera mobile from version 1212+ Partial support in Chrome for Android from version 3636+

Battery Status

Battery Status API
CR
Very limited
Support for batteryNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Supported in Firefox mobile from version 3131+ Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Proximity sensors

Proximity Events
CR
Very limited
Support for proximityNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Supported in Firefox mobile from version 3131+ Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Ambient Light sensor

Ambient Light Events
LastCall
Very limited
Support for ambientlightNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Supported in Firefox mobile from version 3131+ Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Humidity sensor

Ambient Humidity Events
N/A
None
Support for humidityNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Camera & Microphone streams

Media Capture and Streams
WD
Limited but growing
Support for getusermediaNot supported in Safari on iOSX Supported in Blackberry browser from version 1010+ Not supported in Internet Explorer on Windows PhoneX Supported in Firefox mobile from version 3131+ Not supported in Android browserX Supported in Opera mobile from version 1212+ Supported in Chrome for Android from version 3636+

NFC

Web NFC API
WD
None
Support for nfcNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

HTTP(s) network API

XMLHttpRequest Level 1
WD
Very broad for basic features, growing for most recent ones
Support for xhr2Supported in Safari on iOS from version 5.05.0+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 33+ Supported in Opera mobile from version 1212+ Supported in Chrome for Android from version 3636+
Beacon
LastCall
None
Support for beaconNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Partial support in Firefox mobile from version 3131+ Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX
Web Background Synchronization
N/A
None
Support for background-syncNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Cross-domain requests

Cross-Origin Resource Sharing
REC
Getting well-deployed
Support for corsSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 2.12.1+ Supported in Opera mobile from version 1212+ Supported in Chrome for Android from version 3636+

Server-pushed requests

Server-Sent Events
CR
Getting well-deployed
Support for eventsourceSupported in Safari on iOS from version 4.04.0+ Supported in Blackberry browser from version 1010+ Not supported in Internet Explorer on Windows PhoneX Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 11.111.1+ Supported in Chrome for Android from version 3636+
Push API
WD
None
Support for pushNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Bidirectional connections

The WebSocket API
CR
Good deployment
Support for websocketsSupported in Safari on iOS from version 6.06.0+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 12.112.1+ Supported in Chrome for Android from version 3636+

P2P data connections

WebRTC 1.0: Real-time Communication Between Browsers
WD
Limited but growing
Support for p2pNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Supported in Firefox mobile from version 3131+ Not supported in Android browserX Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+

on-line state

onLine state in HTML5
CR
Limited
Support for onlineNot supported in Safari on iOSX Not supported in Blackberry browserX Partial support in Internet Explorer on Windows Phone from version 88+ Not supported in Firefox mobileX Supported in Android browser from version 2.22.2+ Not supported in Opera mobileX Supported in Chrome for Android from version 1818+

Network characteristics

The Network Information API
Retired
Very limited
Support for networkapiNot supported in Safari on iOSX Supported in Blackberry browser from version 1010+ Not supported in Internet Explorer on Windows PhoneX Partial support in Firefox mobile from version 1010+ Partial support in Android browser from version 2.22.2+ Not supported in Opera mobileX Not supported in Chrome for AndroidX
Resource Timing
CR
Growing
Support for res-timingNot supported in Safari on iOSX Not supported in Blackberry browserX Supported in Internet Explorer on Windows Phone from version 1010+ Not supported in Firefox mobileX Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+

Emails, SMS and MMS

Messaging API
WD
None
Support for messaging-sysSupported in Safari on iOS unknown? Supported in Blackberry browser unknown? Supported in Internet Explorer on Windows Phone unknown? Supported in Firefox mobile unknown? Supported in Android browser unknown? Supported in Opera mobile unknown? Supported in Chrome for Android unknown?

Inter-app communications

HTML5 Web Messaging
CR
Well deployed
Support for postmessageSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1111+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 2.12.1+ Supported in Opera mobile from version 1010+ Supported in Chrome for Android from version 3636+

Network services discovery

Network Service Discovery
WD
None
Support for discoveryNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX
Named Web Sockets
N/A
None
Support for namedwebsocketsNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

P2P connections and audio/video streams

WebRTC 1.0: Real-time Communication Between Browsers
WD
Limited but growing
Support for p2pNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Supported in Firefox mobile from version 3131+ Not supported in Android browserX Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+

Offline Web apps

ApplicationCache in HTML5
CR
Well deployed
Support for manifestSupported in Safari on iOS from version 3.23.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 2.12.1+ Supported in Opera mobile from version 1111+ Supported in Chrome for Android from version 3636+
Service Workers
WD
None
Support for serviceworkerNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Packaged Web App

Manifest for web apps and bookmarks
WD
N/A
Support for manifestjsonNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX
Runtime and Security Model for Web Applications
WD
N/A
Support for runtimeSupported in Safari on iOS unknown? Supported in Blackberry browser unknown? Supported in Internet Explorer on Windows Phone unknown? Supported in Firefox mobile unknown? Supported in Android browser unknown? Supported in Opera mobile unknown? Supported in Chrome for Android unknown?
Application Lifecycle and Events
N/A
N/A

Integrated payment

Credit card details autocomplete in HTML 5.1
WD
Very limited
Support for autocomplete-ccSupported in Safari on iOS unknown? Supported in Blackberry browser unknown? Supported in Internet Explorer on Windows Phone unknown? Supported in Firefox mobile unknown? Supported in Android browser unknown? Supported in Opera mobile unknown? Supported in Chrome for Android from version 3131+

Timing hooks

Navigation Timing
REC
Well deployed
Support for nav-timingSupported in Safari on iOS from version 88+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 44+ Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+
Resource Timing
CR
Growing
Support for res-timingNot supported in Safari on iOSX Not supported in Blackberry browserX Supported in Internet Explorer on Windows Phone from version 1010+ Not supported in Firefox mobileX Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+
Performance Timeline
REC
Limited
Support for perf-timelineSupported in Safari on iOS unknown? Supported in Blackberry browser unknown? Supported in Internet Explorer on Windows Phone from version 1111+ Supported in Firefox mobile unknown? Supported in Android browser unknown? Supported in Opera mobile unknown? Supported in Chrome for Android from version 3030+
User Timing
REC
Growing
Support for user-timingNot supported in Safari on iOSX Not supported in Blackberry browserX Supported in Internet Explorer on Windows Phone from version 1010+ Not supported in Firefox mobileX Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+

Network prioritization

Resource Priorities
WD
Experimental
Support for lazyNot supported in Safari on iOSX Not supported in Blackberry browserX Partial support in Internet Explorer on Windows Phone from version 1111+ Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Priority handling

Efficient Script Yielding
ed
Very limited
Support for setimmediateNot supported in Safari on iOSX Not supported in Blackberry browserX Supported in Internet Explorer on Windows Phone from version 1010+ Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Page Visibility detection

Page Visibility
REC
Well deployed
Support for visibilitychangeSupported in Safari on iOS from version 7.07.0+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 12.112.1+ Supported in Chrome for Android from version 3636+

Animation optimization

Timing control for script-based animations
CR
Well deployed
Support for animation-timingSupported in Safari on iOS from version 6.06.0+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+

Threading

Web Workers
CR
Well deployed
Support for webworkersSupported in Safari on iOS from version 5.05.0+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 2.12.1+ Supported in Opera mobile from version 1111+ Supported in Chrome for Android from version 3636+

Battery Status

Battery Status API
CR
Very limited
Support for batteryNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Supported in Firefox mobile from version 3131+ Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Optimization Best Practices

Mobile Web Application Best Practices
REC
N/A

Strengthened security

Content Security Policy 1.0
CR
Well-deployed
Support for cspSupported in Safari on iOS from version 6.06.0+ Supported in Blackberry browser from version 1010+ Partial support in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 4.44.4+ Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+
Subresource Integrity
WD
None
Support for subres-integrityNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX
Sandboxed iframe in HTML5
CR
Widely deployed
Support for iframe-sandboxSupported in Safari on iOS from version 4.24.2+ Supported in Blackberry browser from version 1010+ Supported in Internet Explorer on Windows Phone from version 1010+ Supported in Firefox mobile from version 3131+ Supported in Android browser from version 2.22.2+ Supported in Opera mobile from version 2222+ Supported in Chrome for Android from version 3636+

Encrypted storage

Web Cryptography API
LastCall
Limited but growing
Support for cryptoNot supported in Safari on iOSX Not supported in Blackberry browserX Partial support in Internet Explorer on Windows Phone from version 1111+ Partial support in Firefox mobile from version 1919+ Not supported in Android browserX Not supported in Opera mobileX Supported in Chrome for Android from version 3737+
WebCrypto Key Discovery
WD
None
Support for cryptokeyNot supported in Safari on iOSX Not supported in Blackberry browserX Not supported in Internet Explorer on Windows PhoneX Not supported in Firefox mobileX Not supported in Android browserX Not supported in Opera mobileX Not supported in Chrome for AndroidX

Tracking protection

Tracking Preference Expression (DNT)
LastCall
Good deployment
Support for dntSupported in Safari on iOS from version 55+ Supported in Blackberry browser unknown? Supported in Internet Explorer on Windows Phone from version 99+ Supported in Firefox mobile from version 66+ Supported in Android browser unknown? Supported in Opera mobile unknown? Supported in Chrome for Android from version 2323+

identity-management

http://w3.org/mob

…more wanted

http://kwz.me/xc

Keep Users Safe

→ limit access to sensitive features

Hard problem

No shortage of creativity

Implicit

File Picker

Only with opt-in

Opt-in to pop-up

Ask for Forgiveness

Fullscreen prompt

Prompt at usage

Geolocation prompt
Camera prompt
Microphone prompt

Prompt before usage

Notification prompt

Combinable requests

Combined prompt for fullscreen & pointer lock Combined prompt for audio & video

HTTPs-only

ServiceWorker

Embedding

<iframe sandbox="allow-pointer-lock">
<iframe allowfullscreen>

Require "engagement"

Engagement gesture required for full screen
(similar for pointer lock)

With indicators

Indicator for video usage
Indicator for geolocation usage

Permission denied

Good luck!

It’s a mess

Requesting it all

http://kwz.me/xy

Let’s fix it

Wanna help?

Contact & Credits