Not yet stable

For a given set of browsers, what APIs are not yet in all of them.

Example Comparisons
Browsers
Features

Summary

A count of the number of APIs are in Browser X but not in Browser Y.
Not in ChromeNot in FirefoxNot in SafariNot in EdgeNot in Chrome AndroidNot in Safari on iOS
In Chrome 136117310120
In Firefox 1127111531
In Safari 338366
In Edge 1331149117
In Chrome Android 31331135114
In Safari on iOS 440445

Unstable APIs

Below is a list of features that are not in all of Chrome, Firefox, Safari, Edge, Chrome Android, and Safari on iOS

Raw Data

Quick Links:

HTML Data

API First Browser Date Days in Limbo Notes
html.elements.a.attributionsourceid 📋Safari4/26/20211959
html.elements.a.attributionsrc 📋Chrome5/14/2024845
html.elements.a.coords 📋Safari6/23/20038476
Firefox: You can no longer nest an <a> element inside a <map> element to create a hotspot region - coords and shape attribute support removed.Firefox for Android: You can no longer nest an <a> element inside a <map> element to create a hotspot region - coords and shape attribute support removed.
html.elements.a.href.href_sms Firefox4/24/20125248
html.elements.a.hreftranslate Chrome4/7/20202343
html.elements.a.referrerpolicy.no-referrer-when-downgrade Chrome5/25/20163756
html.elements.a.referrerpolicy.origin-when-cross-origin Chrome5/25/20163756
html.elements.a.referrerpolicy.unsafe-url Chrome5/25/20163756
html.elements.a.shape 📋Safari6/23/20038476
Firefox: You can no longer nest an <a> element inside a <map> element to create a hotspot region - coords and shape attribute support removed.Firefox for Android: You can no longer nest an <a> element inside a <map> element to create a hotspot region - coords and shape attribute support removed.
html.elements.a.target.unfencedTop Chrome7/18/20231146
html.elements.area.referrerpolicy.no-referrer-when-downgrade Chrome5/25/20163756
html.elements.area.referrerpolicy.origin-when-cross-origin Chrome5/25/20163756
html.elements.area.referrerpolicy.unsafe-url Chrome5/25/20163756
html.elements.audio.controlslist 📋Chrome4/19/20173427
html.elements.audio.disableremoteplayback 📋Chrome Android2/1/20173504
html.elements.canvas.moz-opaque Firefox6/30/20096277
html.elements.col.char 📋Safari10/26/20076890
html.elements.col.charoff 📋Safari10/26/20076890
html.elements.colgroup.char 📋Safari10/26/20076890
html.elements.colgroup.charoff 📋Safari10/26/20076890
html.elements.fencedframe 📋Chrome7/18/20231146
html.elements.fencedframe.allow 📋Chrome7/18/20231146
html.elements.fencedframe.height 📋Chrome7/18/20231146
html.elements.fencedframe.width 📋Chrome7/18/20231146
html.elements.form.autocomplete.new-password Firefox5/21/20192665
html.elements.form.autocomplete.webauthn 📋Chrome11/29/20221377
html.elements.hr.hr_in_select Safari9/18/20231084
Chrome: Only exposes the <hr> visually in the page when the menu is expanded (arrowing within the collapsed menu does not show them).Chrome: Does not expose the <hr> within the accessibility tree.Edge: Only exposes the <hr> visually in the page when the menu is expanded (arrowing within the collapsed menu does not show them).Edge: Does not expose the <hr> within the accessibility tree.Firefox: Does not expose the <hr> within the accessibility tree.Firefox for Android: Does not expose the <hr> within the accessibility tree.Opera: Only exposes the <hr> visually in the page when the menu is expanded (arrowing within the collapsed menu does not show them).Opera: Does not expose the <hr> within the accessibility tree.Safari: Does not expose the <hr> within the accessibility tree.Safari on iOS: Does not expose the <hr> within the accessibility tree.WebView on iOS: Does not expose the <hr> within the accessibility tree.
html.elements.iframe.allow.accelerometer 📋Chrome4/17/20183064
html.elements.iframe.allow.ambient-light-sensor 📋Chrome4/17/20183064
html.elements.iframe.allow.attribution-reporting 📋Chrome9/12/20231090
html.elements.iframe.allow.autoplay 📋Chrome1/23/20183148
html.elements.iframe.allow.bluetooth 📋Chrome8/2/20221496
html.elements.iframe.allow.browsing-topics Chrome7/18/20231146
html.elements.iframe.allow.compute-pressure 📋Chrome5/14/2024845
html.elements.iframe.allow.cross-origin-isolated 📋Chrome11/17/20202119
html.elements.iframe.allow.display-capture 📋Safari9/19/20192544
html.elements.iframe.allow.document-domain 📋Chrome1/23/20183148
html.elements.iframe.allow.encrypted-media 📋Chrome1/23/20183148
html.elements.iframe.allow.fullscreen 📋Chrome10/17/20173246
html.elements.iframe.allow.gamepad 📋Firefox8/10/20211853
Firefox: The default allowlist is * instead of self (as required by the specification).Firefox for Android: The default allowlist is * instead of self (as required by the specification).
html.elements.iframe.allow.geolocation 📋Chrome1/23/20183148
html.elements.iframe.allow.gyroscope 📋Chrome4/17/20183064
html.elements.iframe.allow.hid 📋Chrome3/2/20212014
html.elements.iframe.allow.identity-credentials-get 📋Chrome2/7/20231307
html.elements.iframe.allow.idle-detection 📋Chrome9/21/20211811
html.elements.iframe.allow.local-fonts 📋Chrome6/21/20221538
html.elements.iframe.allow.magnetometer 📋Chrome4/17/20183064
html.elements.iframe.allow.midi 📋Chrome1/23/20183148
html.elements.iframe.allow.otp-credentials 📋Chrome Android7/27/20202232
html.elements.iframe.allow.payment 📋Chrome7/25/20173330
html.elements.iframe.allow.picture-in-picture 📋Chrome12/4/20182833
html.elements.iframe.allow.publickey-credentials-create 📋Firefox2/20/2024929
html.elements.iframe.allow.publickey-credentials-get 📋Edge7/16/20202243
html.elements.iframe.allow.serial 📋Chrome3/2/20212014
html.elements.iframe.allow.speaker-selection 📋Firefox8/1/20231132
Firefox for Android: Not available due to a limitation in Android (see bug 1473346).
html.elements.iframe.allow.storage-access 📋Chrome5/2/20231223
html.elements.iframe.allow.usb 📋Chrome7/25/20173330
html.elements.iframe.allow.web-share 📋Firefox9/22/20202175
Firefox: Firefox recognizes the web-share permissions policy, but this has no effect in versions of Firefox that do not support the share() method.Firefox for Android: Firefox for Android recognizes the web-share permissions policy, but this has no effect in versions of Firefox for Android that do not support the share() method.
html.elements.iframe.allow.wildcards Chrome11/29/20221377
html.elements.iframe.allow.window-management 📋Chrome3/29/20221622
html.elements.iframe.allow.xr-spatial-tracking 📋Chrome12/10/20192462
html.elements.iframe.allowpaymentrequest Chrome7/25/20173330
html.elements.iframe.browsingtopics Chrome7/18/20231146
html.elements.iframe.credentialless 📋Chrome2/7/20231307
html.elements.iframe.csp 📋Chrome9/5/20173288
html.elements.iframe.referrerpolicy.no-referrer-when-downgrade Chrome5/25/20163756
html.elements.iframe.referrerpolicy.origin-when-cross-origin Chrome5/25/20163756
html.elements.iframe.referrerpolicy.unsafe-url Chrome5/25/20163756
html.elements.iframe.sandbox.allow-orientation-lock 📋Firefox9/20/20163638
html.elements.iframe.sandbox.allow-pointer-lock 📋Chrome11/6/20125052
html.elements.iframe.sandbox.allow-presentation 📋Chrome8/31/20163658
html.elements.iframe.sandbox.allow-top-navigation-to-custom-protocols 📋Firefox5/31/20221559
html.elements.img.attributionsrc 📋Chrome5/14/2024845
html.elements.img.referrerpolicy.no-referrer-when-downgrade Chrome5/25/20163756
html.elements.img.referrerpolicy.origin-when-cross-origin Chrome5/25/20163756
html.elements.img.referrerpolicy.unsafe-url Chrome5/25/20163756
html.elements.img.sizes.auto 📋Chrome6/11/2024817
html.elements.input.capture 📋Chrome Android2/27/20134939
html.elements.input.type_month 📋Chrome6/26/20125185
Safari: The input type is recognized, but there is no month-specific control. See bug 200416.
html.elements.input.type_password.insecure_login_handling Firefox3/7/20173470
html.elements.input.type_week 📋Chrome6/26/20125185
html.elements.input.webkitdirectory Chrome10/19/20105801
Chrome Android: In Chrome for Android 131, choosing a directory crashes the browser (see bug 376834374).Chrome Android: Before version 131, users cannot choose a directory, only individual files (see bug 40248532.Opera Android: In Chrome for Android 131, choosing a directory crashes the browser (see bug 376834374).Opera Android: Before version 87, users cannot choose a directory, only individual files (see bug 40248532.Safari on iOS: The attribute can be set but users cannot choose a directory, only individual files (see bug 271705).WebView Android: In Chrome for Android 131, choosing a directory crashes the browser (see bug 376834374).WebView Android: Before version 131, users cannot choose a directory, only individual files (see bug 40248532.WebView on iOS: The attribute can be set but users cannot choose a directory, only individual files (see bug 271705).
html.elements.link.blocking 📋Edge9/1/20221466
html.elements.link.referrerpolicy.no-referrer-when-downgrade Chrome5/25/20163756
html.elements.link.referrerpolicy.origin-when-cross-origin Chrome5/25/20163756
html.elements.link.referrerpolicy.unsafe-url Chrome5/25/20163756
html.elements.link.rel.alternate_stylesheet 📋Firefox6/17/20086655
html.elements.link.rel.expect 📋Chrome4/16/2024873
html.elements.link.rel.icon Firefox10/24/20067257
Chrome: If both ICO and PNG are available, will use ICO over PNG if ICO has better matching sizes set. (Per caniuse.com.).Edge: In version 79 and later (Blink-based Edge), if both ICO and PNG are available, will use ICO over PNG if ICO has better matching sizes set. (Per caniuse.com.)Firefox: Before Firefox 83, the crossorigin attribute is not supported for rel="icon".Firefox: The media attribute is not supported for rel="icon", see bug 1603885.Opera: In version 15 and later (Blink-based Opera), if both ICO and PNG are available, will use ICO over PNG if ICO has better matching sizes set. (Per caniuse.com.)Safari: If both ICO and PNG are available, will ALWAYS use ICO file, regardless of sizes set. (Per caniuse.com.)Safari on iOS: Does not use favicons at all (but may have alternative for bookmarks, etc.). (Per caniuse.com.)WebView on iOS: Does not use favicons at all (but may have alternative for bookmarks, etc.). (Per caniuse.com.)
html.elements.link.rel.manifest 📋Chrome Android11/12/20144316
html.elements.link.rel.preload.as-track Chrome4/13/20163798
html.elements.link.rel.prerender Chrome8/2/20115514
html.elements.meta.name.application-title Chrome3/4/2025551
html.elements.meta.name.theme-color 📋Chrome3/12/20192735
Chrome: Chrome uses the color only on installed progressive web apps.Chrome: Chrome reports support, but does not actually use the color anywhere.Chrome Android: Chrome for Android does not use the color on devices with native dark mode enabled unless it's an installed progressive web app or a trusted web activity.Edge: Edge uses the color only on installed progressive web apps.Quest Browser: Chrome for Android does not use the color on devices with native dark mode enabled unless it's an installed progressive web app or a trusted web activity.
html.elements.script.attributionsrc 📋Chrome5/14/2024845
html.elements.script.blocking 📋Edge9/1/20221466
html.elements.script.referrerpolicy.no-referrer-when-downgrade Chrome10/16/20182882
html.elements.script.referrerpolicy.origin-when-cross-origin Chrome10/16/20182882
html.elements.script.referrerpolicy.unsafe-url Chrome10/16/20182882
html.elements.script.type.importmap.integrity 📋Chrome7/23/2024775
html.elements.script.type.importmap.multiple_import_maps 📋Chrome2/4/2025579
html.elements.script.type.speculationrules 📋Chrome1/10/20231335
Chrome: Initial support included same-origin prerendering only.Chrome Android: Initial support included same-origin prerendering only.Edge: Initial support included same-origin prerendering only.Quest Browser: Initial support included same-origin prerendering only.Opera: Initial support included same-origin prerendering only.Opera Android: Initial support included same-origin prerendering only.Samsung Internet: Initial support included same-origin prerendering only.
html.elements.script.type.speculationrules.eagerness Chrome1/23/2024957
html.elements.script.type.speculationrules.expects_no_vary_search Chrome7/23/2024775
Chrome: Supported for prefetch only.Chrome Android: Supported for prefetch only.Edge: Supported for prefetch only.Opera: Supported for prefetch only.Opera Android: Supported for prefetch only.Samsung Internet: Supported for prefetch only.
html.elements.script.type.speculationrules.prefetch Chrome Android6/21/20221538
html.elements.script.type.speculationrules.prerender Chrome Android6/21/20221538
html.elements.script.type.speculationrules.referrer_policy Chrome3/7/20231279
html.elements.script.type.speculationrules.relative_to Chrome1/23/2024957
html.elements.script.type.speculationrules.requires Chrome Android6/21/20221538
html.elements.script.type.speculationrules.requires.anonymous-client-ip-when-cross-origin Chrome Android6/21/20221538
html.elements.script.type.speculationrules.source_optional Chrome2/20/2024929
html.elements.script.type.speculationrules.urls Chrome Android6/21/20221538
html.elements.script.type.speculationrules.where Chrome1/23/2024957
html.elements.select.hr_in_select Safari9/18/20231084
Chrome: Only exposes the <hr> visually in the page when the menu is expanded (arrowing within the collapsed menu does not show them).Chrome: Does not expose the <hr> within the accessibility tree.Edge: Only exposes the <hr> visually in the page when the menu is expanded (arrowing within the collapsed menu does not show them).Edge: Does not expose the <hr> within the accessibility tree.Firefox: Does not expose the <hr> within the accessibility tree.Firefox for Android: Does not expose the <hr> within the accessibility tree.Opera: Only exposes the <hr> visually in the page when the menu is expanded (arrowing within the collapsed menu does not show them).Opera: Does not expose the <hr> within the accessibility tree.Safari: Does not expose the <hr> within the accessibility tree.Safari on iOS: Does not expose the <hr> within the accessibility tree.WebView on iOS: Does not expose the <hr> within the accessibility tree.
html.elements.select.size 📋Firefox11/9/20047971
html.elements.style.blocking 📋Edge9/1/20221466
html.elements.summary.display_list_item Firefox9/20/20163638
html.elements.tbody.char Chrome12/11/20086478
html.elements.td.char Chrome12/11/20086478
html.elements.td.rowspan.rowspan_zero Firefox8/8/20173316
html.elements.template.shadowrootclonable 📋Chrome4/16/2024873
html.elements.template.shadowrootdelegatesfocus 📋Firefox2/20/2024929
html.elements.template.shadowrootserializable 📋Chrome5/14/2024845
html.elements.textarea.autocomplete.new-password Firefox5/21/20192665
html.elements.textarea.autocomplete.webauthn 📋Chrome11/29/20221377
html.elements.textarea.wrap.hard Chrome12/13/20115381
html.elements.tfoot.char Chrome12/11/20086478
html.elements.th.char Chrome12/11/20086478
html.elements.th.rowspan.rowspan_zero Firefox8/8/20173316
html.elements.thead.char Chrome12/11/20086478
html.elements.tr.char Chrome12/11/20086478
html.elements.tr.charoff Chrome12/11/20086478
html.elements.video.controlslist 📋Chrome4/19/20173427
html.elements.video.disableremoteplayback 📋Chrome Android2/1/20173504
html.elements.video.playsinline 📋Safari on iOS9/13/20163645
html.global_attributes.autocapitalize 📋Safari on iOS10/12/20115443
html.global_attributes.autocorrect 📋Safari4/26/20211959
Safari: Takes values of true/false (instead of on/off).Safari: Allowed on <input type='password'> elements.Safari on iOS: Takes values of true/false (instead of on/off).Safari on iOS: Allowed on <input type='password'> elements.
html.global_attributes.contenteditable.plaintext-only Chrome5/25/20163756
html.global_attributes.hidden.until-found 📋Chrome5/24/20221566
html.global_attributes.is 📋Chrome5/29/20183022
html.global_attributes.virtualkeyboardpolicy 📋Chrome9/21/20211811
html.global_attributes.writingsuggestions 📋Chrome4/16/2024873
html.manifest.background_color 📋Chrome10/13/20153981
html.manifest.description 📋Chrome1/19/20212056
Firefox for Android: The property parses, but has no effect.
html.manifest.display 📋Chrome Android11/12/20144316
Chrome: display and/or display_override are required for a web app to be installable.Chrome Android: display and/or display_override are required for a web app to be installable.Edge: display and/or display_override are required for a web app to be installable.Quest Browser: display and/or display_override are required for a web app to be installable.Opera: display and/or display_override are required for a web app to be installable.Opera Android: display and/or display_override are required for a web app to be installable.Samsung Internet: display and/or display_override are required for a web app to be installable.WebView Android: display and/or display_override are required for a web app to be installable.
html.manifest.display.browser 📋Chrome Android11/12/20144316
html.manifest.display.fullscreen 📋Chrome Android11/12/20144316
html.manifest.display.minimal-ui 📋Chrome Android11/12/20144316
html.manifest.display.standalone 📋Chrome Android11/12/20144316
html.manifest.display_override 📋Chrome3/2/20212014
Chrome: display_override and/or display are required for a web app to be installable.Chrome Android: display_override and/or display are required for a web app to be installable.Edge: display_override and/or display are required for a web app to be installable.Quest Browser: display_override and/or display are required for a web app to be installable.Opera: display_override and/or display are required for a web app to be installable.Opera Android: display_override and/or display are required for a web app to be installable.Samsung Internet: display_override and/or display are required for a web app to be installable.
html.manifest.display_override.tabbed 📋Chrome6/11/2024817
html.manifest.display_override.window-controls-overlay 📋Edge9/1/20221466
html.manifest.file_handlers 📋Chrome5/24/20221566
html.manifest.icons 📋Chrome Android11/12/20144316
Chrome: icons is required for a web app to be installable.Chrome Android: icons is required for a web app to be installable.Edge: icons is required for a web app to be installable.Quest Browser: icons is required for a web app to be installable.Opera: icons is required for a web app to be installable.Opera Android: icons is required for a web app to be installable.Safari: Only used when no apple-touch-icon is present and either "purpose" is set to "any" or "purpose" is not specified.Safari on iOS: Only used when no apple-touch-icon is present and either "purpose" is set to "any" or "purpose" is not specified.Samsung Internet: icons is required for a web app to be installable.WebView Android: icons is required for a web app to be installable.WebView on iOS: Only used when no apple-touch-icon is present and either "purpose" is set to "any" or "purpose" is not specified.
html.manifest.id 📋Chrome11/15/20211756
Firefox: The property parses, but has no effect.
html.manifest.launch_handler 📋Chrome2/7/20231307
html.manifest.launch_handler.client_mode 📋Chrome2/7/20231307
html.manifest.name 📋Chrome Android11/12/20144316
Chrome: name or short_name is required for a web app to be installable.Chrome Android: name or short_name is required for a web app to be installable.Edge: name or short_name is required for a web app to be installable.Quest Browser: name or short_name is required for a web app to be installable.Opera: name or short_name is required for a web app to be installable.Opera Android: name or short_name is required for a web app to be installable.Samsung Internet: name or short_name is required for a web app to be installable.WebView Android: name or short_name is required for a web app to be installable.
html.manifest.note_taking 📋Chrome10/19/20211783
html.manifest.note_taking.new_note_url 📋Chrome10/19/20211783
html.manifest.orientation 📋Chrome Android11/12/20144316
html.manifest.prefer_related_applications 📋Chrome Android7/29/20154057
Chrome: prefer_related_applications must be false or not present for a web app to be installable.Edge: prefer_related_applications must be false or not present for a web app to be installable.Firefox for Android: The property parses, but has no effect.Opera: prefer_related_applications must be false or not present for a web app to be installable.
html.manifest.protocol_handlers 📋Chrome11/15/20211756
html.manifest.protocol_handlers.protocol 📋Chrome11/15/20211756
html.manifest.protocol_handlers.url 📋Chrome11/15/20211756
html.manifest.related_applications 📋Chrome Android7/29/20154057
Firefox for Android: The property parses, but has no effect.
html.manifest.scope 📋Chrome8/31/20163658
html.manifest.serviceworker Chrome10/16/20182882
html.manifest.serviceworker.scope Chrome10/16/20182882
html.manifest.serviceworker.src Chrome10/16/20182882
html.manifest.serviceworker.use_cache Chrome10/16/20182882
html.manifest.share_target 📋Chrome Android7/30/20192595
Firefox for Android: The property parses, but has no effect.
html.manifest.short_name 📋Chrome Android11/12/20144316
Chrome: short_name or name is required for a web app to be installable.Chrome Android: short_name or name is required for a web app to be installable.Edge: short_name or name is required for a web app to be installable.Quest Browser: short_name or name is required for a web app to be installable.Opera: short_name or name is required for a web app to be installable.Opera Android: short_name or name is required for a web app to be installable.Samsung Internet: short_name or name is required for a web app to be installable.WebView Android: short_name or name is required for a web app to be installable.
html.manifest.shortcuts 📋Chrome Android7/27/20202232
Chrome: Supported on Windows only.Edge: Supported on Windows only.Opera: Supported on Windows only.
html.manifest.start_url 📋Chrome Android11/12/20144316
Chrome: start_url is required for a web app to be installable.Chrome Android: start_url is required for a web app to be installable.Edge: start_url is required for a web app to be installable.Quest Browser: start_url is required for a web app to be installable.Opera: start_url is required for a web app to be installable.Opera Android: start_url is required for a web app to be installable.Samsung Internet: start_url is required for a web app to be installable.WebView Android: start_url is required for a web app to be installable.
html.manifest.theme_color 📋Chrome10/13/20153981