For a given set of browsers, what APIs are not yet in all of them.
| Not in Safari | Not in Chrome | |
|---|---|---|
| In Safari | 16 | |
| In Chrome | 144 |
Below is a list of features that are not in all of Safari and Chrome
| API | First Browser | Date | Days in Limbo | Notes |
|---|---|---|---|---|
| html.elements.a.attributionsourceid 📋 | Safari | 4/26/2021 | 1970 | |
| html.elements.a.attributionsrc 📋 | Chrome | 5/14/2024 | 856 | |
| html.elements.a.hreftranslate | Chrome | 4/7/2020 | 2354 | |
| html.elements.a.referrerpolicy.no-referrer-when-downgrade | Chrome | 5/25/2016 | 3767 | |
| html.elements.a.referrerpolicy.origin-when-cross-origin | Chrome | 5/25/2016 | 3767 | |
| html.elements.a.referrerpolicy.unsafe-url | Chrome | 5/25/2016 | 3767 | |
| html.elements.a.target.unfencedTop | Chrome | 7/18/2023 | 1157 | |
| html.elements.area.referrerpolicy.no-referrer-when-downgrade | Chrome | 5/25/2016 | 3767 | |
| html.elements.area.referrerpolicy.origin-when-cross-origin | Chrome | 5/25/2016 | 3767 | |
| html.elements.area.referrerpolicy.unsafe-url | Chrome | 5/25/2016 | 3767 | |
| html.elements.audio.controlslist 📋 | Chrome | 4/19/2017 | 3438 | |
| html.elements.fencedframe 📋 | Chrome | 7/18/2023 | 1157 | |
| html.elements.fencedframe.allow 📋 | Chrome | 7/18/2023 | 1157 | |
| html.elements.fencedframe.height 📋 | Chrome | 7/18/2023 | 1157 | |
| html.elements.fencedframe.width 📋 | Chrome | 7/18/2023 | 1157 | |
| html.elements.form.autocomplete.webauthn 📋 | Chrome | 11/29/2022 | 1388 | |
| html.elements.iframe.allow.accelerometer 📋 | Chrome | 4/17/2018 | 3075 | |
| html.elements.iframe.allow.ambient-light-sensor 📋 | Chrome | 4/17/2018 | 3075 | |
| html.elements.iframe.allow.attribution-reporting 📋 | Chrome | 9/12/2023 | 1101 | |
| html.elements.iframe.allow.autoplay 📋 | Chrome | 1/23/2018 | 3159 | |
| html.elements.iframe.allow.bluetooth 📋 | Chrome | 8/2/2022 | 1507 | |
| html.elements.iframe.allow.browsing-topics | Chrome | 7/18/2023 | 1157 | |
| html.elements.iframe.allow.compute-pressure 📋 | Chrome | 5/14/2024 | 856 | |
| html.elements.iframe.allow.cross-origin-isolated 📋 | Chrome | 11/17/2020 | 2130 | |
| html.elements.iframe.allow.document-domain 📋 | Chrome | 1/23/2018 | 3159 | |
| html.elements.iframe.allow.encrypted-media 📋 | Chrome | 1/23/2018 | 3159 | |
| html.elements.iframe.allow.fullscreen 📋 | Chrome | 10/17/2017 | 3257 | |
| html.elements.iframe.allow.geolocation 📋 | Chrome | 1/23/2018 | 3159 | |
| html.elements.iframe.allow.gyroscope 📋 | Chrome | 4/17/2018 | 3075 | |
| html.elements.iframe.allow.hid 📋 | Chrome | 3/2/2021 | 2025 | |
| html.elements.iframe.allow.identity-credentials-get 📋 | Chrome | 2/7/2023 | 1318 | |
| html.elements.iframe.allow.idle-detection 📋 | Chrome | 9/21/2021 | 1822 | |
| html.elements.iframe.allow.local-fonts 📋 | Chrome | 6/21/2022 | 1549 | |
| html.elements.iframe.allow.magnetometer 📋 | Chrome | 4/17/2018 | 3075 | |
| html.elements.iframe.allow.midi 📋 | Chrome | 1/23/2018 | 3159 | |
| html.elements.iframe.allow.otp-credentials 📋 | Chrome | 8/31/2021 | 1843 | |
| html.elements.iframe.allow.payment 📋 | Chrome | 7/25/2017 | 3341 | |
| html.elements.iframe.allow.picture-in-picture 📋 | Chrome | 12/4/2018 | 2844 | |
| html.elements.iframe.allow.publickey-credentials-get 📋 | Chrome | 7/27/2020 | 2243 | |
| html.elements.iframe.allow.serial 📋 | Chrome | 3/2/2021 | 2025 | |
| html.elements.iframe.allow.storage-access 📋 | Chrome | 5/2/2023 | 1234 | |
| html.elements.iframe.allow.usb 📋 | Chrome | 7/25/2017 | 3341 | |
| html.elements.iframe.allow.web-share 📋 | Chrome | 10/20/2020 | 2158 | 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 | Chrome | 11/29/2022 | 1388 | |
| html.elements.iframe.allow.window-management 📋 | Chrome | 3/29/2022 | 1633 | |
| html.elements.iframe.allow.xr-spatial-tracking 📋 | Chrome | 12/10/2019 | 2473 | |
| html.elements.iframe.allowpaymentrequest | Chrome | 7/25/2017 | 3341 | |
| html.elements.iframe.browsingtopics | Chrome | 7/18/2023 | 1157 | |
| html.elements.iframe.credentialless 📋 | Chrome | 2/7/2023 | 1318 | |
| html.elements.iframe.csp 📋 | Chrome | 9/5/2017 | 3299 | |
| html.elements.iframe.referrerpolicy.no-referrer-when-downgrade | Chrome | 5/25/2016 | 3767 | |
| html.elements.iframe.referrerpolicy.origin-when-cross-origin | Chrome | 5/25/2016 | 3767 | |
| html.elements.iframe.referrerpolicy.unsafe-url | Chrome | 5/25/2016 | 3767 | |
| html.elements.iframe.sandbox.allow-orientation-lock 📋 | Chrome | 7/24/2018 | 2977 | |
| html.elements.iframe.sandbox.allow-presentation 📋 | Chrome | 8/31/2016 | 3669 | |
| html.elements.iframe.sandbox.allow-top-navigation-to-custom-protocols 📋 | Safari | 9/12/2022 | 1466 | |
| html.elements.img.attributionsrc 📋 | Chrome | 5/14/2024 | 856 | |
| html.elements.img.referrerpolicy.no-referrer-when-downgrade | Chrome | 5/25/2016 | 3767 | |
| html.elements.img.referrerpolicy.origin-when-cross-origin | Chrome | 5/25/2016 | 3767 | |
| html.elements.img.referrerpolicy.unsafe-url | Chrome | 5/25/2016 | 3767 | |
| html.elements.img.sizes.auto 📋 | Chrome | 6/11/2024 | 828 | |
| html.elements.input.type_month 📋 | Chrome | 6/26/2012 | 5196 | Safari: The input type is recognized, but there is no month-specific control. See bug 200416. |
| html.elements.input.type_week 📋 | Chrome | 6/26/2012 | 5196 | |
| html.elements.link.referrerpolicy.no-referrer-when-downgrade | Chrome | 5/25/2016 | 3767 | |
| html.elements.link.referrerpolicy.origin-when-cross-origin | Chrome | 5/25/2016 | 3767 | |
| html.elements.link.referrerpolicy.unsafe-url | Chrome | 5/25/2016 | 3767 | |
| html.elements.link.rel.expect 📋 | Chrome | 4/16/2024 | 884 | |
| html.elements.link.rel.prerender | Chrome | 8/2/2011 | 5525 | |
| html.elements.meta.name.application-title | Chrome | 3/4/2025 | 562 | |
| html.elements.script.attributionsrc 📋 | Chrome | 5/14/2024 | 856 | |
| html.elements.script.referrerpolicy.no-referrer-when-downgrade | Chrome | 10/16/2018 | 2893 | |
| html.elements.script.referrerpolicy.origin-when-cross-origin | Chrome | 10/16/2018 | 2893 | |
| html.elements.script.referrerpolicy.unsafe-url | Chrome | 10/16/2018 | 2893 | |
| html.elements.script.type.importmap.multiple_import_maps 📋 | Chrome | 2/4/2025 | 590 | |
| html.elements.script.type.speculationrules 📋 | Chrome | 1/10/2023 | 1346 | 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 | Chrome | 1/23/2024 | 968 | |
| html.elements.script.type.speculationrules.expects_no_vary_search | Chrome | 7/23/2024 | 786 | 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 | 2/7/2023 | 1318 | |
| html.elements.script.type.speculationrules.prerender | Chrome | 9/2/2022 | 1476 | |
| html.elements.script.type.speculationrules.referrer_policy | Chrome | 3/7/2023 | 1290 | |
| html.elements.script.type.speculationrules.relative_to | Chrome | 1/23/2024 | 968 | |
| html.elements.script.type.speculationrules.requires | Chrome | 2/7/2023 | 1318 | |
| html.elements.script.type.speculationrules.requires.anonymous-client-ip-when-cross-origin | Chrome | 2/7/2023 | 1318 | |
| html.elements.script.type.speculationrules.source_optional | Chrome | 2/20/2024 | 940 | |
| html.elements.script.type.speculationrules.urls | Chrome | 1/10/2023 | 1346 | |
| html.elements.script.type.speculationrules.where | Chrome | 1/23/2024 | 968 | |
| html.elements.summary.display_list_item | Chrome | 3/2/2021 | 2025 | |
| html.elements.td.rowspan.rowspan_zero | Chrome | 3/6/2018 | 3117 | |
| html.elements.template.shadowrootclonable 📋 | Chrome | 4/16/2024 | 884 | |
| html.elements.template.shadowrootdelegatesfocus 📋 | Chrome | 3/19/2024 | 912 | |
| html.elements.template.shadowrootserializable 📋 | Chrome | 5/14/2024 | 856 | |
| html.elements.textarea.autocomplete.webauthn 📋 | Chrome | 11/29/2022 | 1388 | |
| html.elements.textarea.wrap.hard | Chrome | 12/13/2011 | 5392 | |
| html.elements.video.controlslist 📋 | Chrome | 4/19/2017 | 3438 | |
| html.global_attributes.autocapitalize 📋 | Chrome | 5/19/2015 | 4139 | |
| html.global_attributes.autocorrect 📋 | Safari | 4/26/2021 | 1970 | 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.hidden.until-found 📋 | Chrome | 5/24/2022 | 1577 | |
| html.global_attributes.is 📋 | Chrome | 5/29/2018 | 3033 | |
| html.global_attributes.virtualkeyboardpolicy 📋 | Chrome | 9/21/2021 | 1822 | |
| html.manifest.background_color 📋 | Chrome | 10/13/2015 | 3992 | |
| html.manifest.description 📋 | Chrome | 1/19/2021 | 2067 | Firefox for Android: The property parses, but has no effect. |
| html.manifest.display.fullscreen 📋 | Chrome | 11/18/2014 | 4321 | |
| html.manifest.display.minimal-ui 📋 | Chrome | 11/18/2014 | 4321 | |
| html.manifest.display_override 📋 | Chrome | 3/2/2021 | 2025 | 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 📋 | Chrome | 6/11/2024 | 828 | |
| html.manifest.display_override.window-controls-overlay 📋 | Chrome | 9/2/2022 | 1476 | |
| html.manifest.file_handlers 📋 | Chrome | 5/24/2022 | 1577 | |
| html.manifest.launch_handler 📋 | Chrome | 2/7/2023 | 1318 | |
| html.manifest.launch_handler.client_mode 📋 | Chrome | 2/7/2023 | 1318 | |
| html.manifest.note_taking 📋 | Chrome | 10/19/2021 | 1794 | |
| html.manifest.note_taking.new_note_url 📋 | Chrome | 10/19/2021 | 1794 | |
| html.manifest.orientation 📋 | Chrome | 11/18/2014 | 4321 | |
| html.manifest.protocol_handlers 📋 | Chrome | 11/15/2021 | 1767 | |
| html.manifest.protocol_handlers.protocol 📋 | Chrome | 11/15/2021 | 1767 | |
| html.manifest.protocol_handlers.url 📋 | Chrome | 11/15/2021 | 1767 | |
| html.manifest.serviceworker | Chrome | 10/16/2018 | 2893 | |
| html.manifest.serviceworker.scope | Chrome | 10/16/2018 | 2893 | |
| html.manifest.serviceworker.src | Chrome | 10/16/2018 | 2893 | |
| html.manifest.serviceworker.use_cache | Chrome | 10/16/2018 | 2893 | |
| html.manifest.share_target 📋 | Chrome | 3/2/2021 | 2025 | Firefox for Android: The property parses, but has no effect. |
| API | First Browser | Date | Days in Limbo | Notes |
|---|---|---|---|---|
| javascript.builtins.Atomics.pause 📋 | Chrome | 2/4/2025 | 590 | |
| javascript.builtins.DataView.getFloat16 📋 | Safari | 12/11/2024 | 645 | |
| javascript.builtins.DataView.setFloat16 📋 | Safari | 12/11/2024 | 645 | |
| javascript.builtins.Error.cause.displayed_in_console | Chrome | 5/14/2024 | 856 | |
| javascript.builtins.Error.serializable_object 📋 | Chrome | 9/10/2019 | 2564 | Firefox: Version 103 serialized properties: name, message, cause, fileName, lineNumber and columnNumber.Firefox: Version 104 adds serialization of stack in the main thread (window.postMessage() and structuredClone()).Firefox: Version 110 adds serialization of stack in workers (worker.postMessage() and structuredClone()).Firefox for Android: Version 103 serialized properties: name, message, cause, fileName, lineNumber and columnNumber.Firefox for Android: Version 104 adds serialization of stack in the main thread (window.postMessage() and structuredClone()).Firefox for Android: Version 110 adds serialization of stack in workers (worker.postMessage() and structuredClone()). |
| javascript.builtins.EvalError.serializable_object 📋 | Chrome | 9/10/2019 | 2564 | Firefox: Version 103 serializable properties: name, message, cause, fileName, lineNumber and columnNumber.Firefox: Version 104 also serializes stack in the main thread (window.postMessage() and structuredClone()).Firefox: Version 110 also serializes stack in workers (worker.postMessage() and structuredClone()).Firefox for Android: Version 103 serializable properties: name, message, cause, fileName, lineNumber and columnNumber.Firefox for Android: Version 104 also serializes stack in the main thread (window.postMessage() and structuredClone()).Firefox for Android: Version 110 also serializes stack in workers (worker.postMessage() and structuredClone()). |
| javascript.builtins.Float16Array 📋 | Safari | 12/11/2024 | 645 | |
| javascript.builtins.Float16Array.Float16Array 📋 | Safari | 12/11/2024 | 645 | |
| javascript.builtins.Intl.PluralRules.PluralRules.options_parameter.options_roundingIncrement_parameter | Safari | 12/11/2023 | 1011 | |
| javascript.builtins.Iterator.Iterator 📋 | Chrome | 2/20/2024 | 940 | |
| javascript.builtins.Iterator.drop 📋 | Chrome | 2/20/2024 | 940 | |
| javascript.builtins.Iterator.every 📋 | Chrome | 2/20/2024 | 940 | |
| javascript.builtins.Iterator.filter 📋 | Chrome | 2/20/2024 | 940 | |
| javascript.builtins.Iterator.find 📋 | Chrome | 2/20/2024 | 940 | |
| javascript.builtins.Iterator.flatMap 📋 | Chrome | 2/20/2024 | 940 | |
| javascript.builtins.Iterator.forEach 📋 | Chrome | 2/20/2024 | 940 | |
| javascript.builtins.Iterator.from 📋 | Chrome | 2/20/2024 | 940 | |
| javascript.builtins.Iterator.map 📋 | Chrome | 2/20/2024 | 940 | |
| javascript.builtins.Iterator.reduce 📋 | Chrome | 2/20/2024 | 940 | |
| javascript.builtins.Iterator.some 📋 | Chrome | 2/20/2024 | 940 | |
| javascript.builtins.Iterator.take 📋 | Chrome | 2/20/2024 | 940 | |
| javascript.builtins.Iterator.toArray 📋 | Chrome | 2/20/2024 | 940 | |
| javascript.builtins.JSON.isRawJSON 📋 | Chrome | 5/30/2023 | 1206 | |
| javascript.builtins.JSON.parse.reviver_parameter_context_argument 📋 | Chrome | 5/30/2023 | 1206 | |
| javascript.builtins.JSON.rawJSON 📋 | Chrome | 5/30/2023 | 1206 | |
| javascript.builtins.Math.f16round 📋 | Safari | 12/11/2024 | 645 | |
| javascript.builtins.RangeError.serializable_object 📋 | Chrome | 9/10/2019 | 2564 | Firefox: Version 103 serializable properties: name, message, cause, fileName, lineNumber and columnNumber.Firefox: Version 104 also serializes stack in the main thread (window.postMessage() and structuredClone()).Firefox: Version 110 also serializes stack in workers (worker.postMessage() and structuredClone()).Firefox for Android: Version 103 serializable properties: name, message, cause, fileName, lineNumber and columnNumber.Firefox for Android: Version 104 also serializes stack in the main thread (window.postMessage() and structuredClone()).Firefox for Android: Version 110 also serializes stack in workers (worker.postMessage() and structuredClone()). |
| javascript.builtins.ReferenceError.serializable_object 📋 | Chrome | 9/10/2019 | 2564 | Firefox: Version 103 serializable properties: name, message, cause, fileName, lineNumber and columnNumber.Firefox: Version 104 also serializes stack in the main thread (window.postMessage() and structuredClone()).Firefox: Version 110 also serializes stack in workers (worker.postMessage() and structuredClone()).Firefox for Android: Version 103 serializable properties: name, message, cause, fileName, lineNumber and columnNumber.Firefox for Android: Version 104 also serializes stack in the main thread (window.postMessage() and structuredClone()).Firefox for Android: Version 110 also serializes stack in workers (worker.postMessage() and structuredClone()). |
| javascript.builtins.RegExp.escape 📋 | Safari | 12/11/2024 | 645 | |
| javascript.builtins.SyntaxError.serializable_object 📋 | Chrome | 9/10/2019 | 2564 | Firefox: Version 103 serializable properties: name, message, cause, fileName, lineNumber and columnNumber.Firefox: Version 104 also serializes stack in the main thread (window.postMessage() and structuredClone()).Firefox: Version 110 also serializes stack in workers (worker.postMessage() and structuredClone()).Firefox for Android: Version 103 serializable properties: name, message, cause, fileName, lineNumber and columnNumber.Firefox for Android: Version 104 also serializes stack in the main thread (window.postMessage() and structuredClone()).Firefox for Android: Version 110 also serializes stack in workers (worker.postMessage() and structuredClone()). |
| javascript.builtins.TypeError.serializable_object 📋 | Chrome | 9/10/2019 | 2564 | Firefox: Version 103 serializable properties: name, message, cause, fileName, lineNumber and columnNumber.Firefox: Version 104 also serializes stack in the main thread (window.postMessage() and structuredClone()).Firefox: Version 110 also serializes stack in workers (worker.postMessage() and structuredClone()).Firefox for Android: Version 103 serializable properties: name, message, cause, fileName, lineNumber and columnNumber.Firefox for Android: Version 104 also serializes stack in the main thread (window.postMessage() and structuredClone()).Firefox for Android: Version 110 also serializes stack in workers (worker.postMessage() and structuredClone()). |
| javascript.builtins.URIError.serializable_object 📋 | Chrome | 9/10/2019 | 2564 | Firefox: Version 103 serializable properties: name, message, cause, fileName, lineNumber and columnNumber.Firefox: Version 104 also serializes stack in the main thread (window.postMessage() and structuredClone()).Firefox: Version 110 also serializes stack in workers (worker.postMessage() and structuredClone()).Firefox for Android: Version 103 serializable properties: name, message, cause, fileName, lineNumber and columnNumber.Firefox for Android: Version 104 also serializes stack in the main thread (window.postMessage() and structuredClone()).Firefox for Android: Version 110 also serializes stack in workers (worker.postMessage() and structuredClone()). |
| javascript.builtins.Uint8Array.fromBase64 📋 | Safari | 12/11/2024 | 645 | |
| javascript.builtins.Uint8Array.fromHex 📋 | Safari | 12/11/2024 | 645 | |
| javascript.builtins.Uint8Array.setFromBase64 📋 | Safari | 12/11/2024 | 645 | |
| javascript.builtins.Uint8Array.setFromHex 📋 | Safari | 12/11/2024 | 645 | |
| javascript.builtins.Uint8Array.toBase64 📋 | Safari | 12/11/2024 | 645 | |
| javascript.builtins.Uint8Array.toHex 📋 | Safari | 12/11/2024 | 645 | |
| javascript.regular_expressions.modifier 📋 | Chrome | 5/14/2024 | 856 | |
| javascript.statements.import.import_attributes.type_css | Chrome | 3/19/2024 | 912 |