All features
-
Abortable fetch
Widely available since 2021-09-25 (baseline high)If you construct a fetch request with an
AbortSignal
, you can cancel the request.- Chrome 66 Released on 2018-04-17
- Chrome Android 66 Released on 2018-04-17
- Edge 16 Released on 2017-10-17
- Firefox 57 Released on 2017-11-14
- Firefox for Android 57 Released on 2017-11-28
- Safari 12.1 Released on 2019-03-25
- Safari on iOS 12.2 Released on 2019-03-25
-
AbortController and AbortSignal
Widely available since 2021-09-25 (baseline high)The
AbortController
andAbortSignal
APIs allow you to cancel an ongoing operation, such as afetch()
request.- Chrome 66 Released on 2018-04-17
- Chrome Android 66 Released on 2018-04-17
- Edge 16 Released on 2017-10-17
- Firefox 57 Released on 2017-11-14
- Firefox for Android 57 Released on 2017-11-28
- Safari 12.1 Released on 2019-03-25
- Safari on iOS 12.2 Released on 2019-03-25
-
AbortSignal.any()
Newly available since 2024-03-19 (baseline low)The
AbortSignal.any()
static method combines an iterable of abort signals into a single signal, with the abort reason taken from the first signal to abort.- Chrome 116 Released on 2023-08-15
- Chrome Android 116 Released on 2023-08-15
- Edge 116 Released on 2023-08-21
- Firefox 124 Released on 2024-03-19
- Firefox for Android 124 Released on 2024-03-19
- Safari 17.4 Released on 2024-03-05
- Safari on iOS 17.4 Released on 2024-03-05
-
abs() and sign()
Limited availabilityThe
abs()
andsign()
CSS functions compute the absolute value or the sign of the input.- Chrome ❌ See crbug.com/1407476
- Chrome Android ❌ See crbug.com/1407476
- Edge ❌ See crbug.com/1407476
- Firefox 118 Released on 2023-09-26
- Firefox for Android 118 Released on 2023-09-26
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
accent-color
Newly available since 2022-03-14 (baseline low)The
accent-color
CSS property sets a color for checkboxes, radio buttons, and other form controls.- Chrome 93 Released on 2021-08-31
- Chrome Android 93 Released on 2021-08-31
- Edge 93 Released on 2021-09-02
- Firefox 92 Released on 2021-09-07
- Firefox for Android 92 Released on 2021-09-07
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
Anchor positioning
Limited availabilityAnchor positioning places an element based on the position of another element. For example, you can place a tooltip next to the content it references.
- Chrome 125 Released on 2024-05-14
- Chrome Android 125 Released on 2024-05-14
- Edge 125 Released on 2024-05-17
- Firefox ❌ See bugzil.la/1838746
- Firefox for Android ❌ See bugzil.la/1838746
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
animation-composition
Newly available since 2023-07-04 (baseline low)The
animation-composition
CSS property chooses how to combine animations that affect the same property.- Chrome 112 Released on 2023-04-04
- Chrome Android 112 Released on 2023-04-04
- Edge 112 Released on 2023-04-06
- Firefox 115 Released on 2023-07-04
- Firefox for Android 115 Released on 2023-07-04
- Safari 16 Released on 2022-09-12
- Safari on iOS 16 Released on 2022-09-12
-
appearance
Newly available since 2022-03-14 (baseline low)The
appearance
CSS property controls the appearance of form controls. Usingappearance: none
disables any default native appearance and allows the elements to be styled with CSS.- Chrome 84 Released on 2020-07-27
- Chrome Android 84 Released on 2020-07-27
- Edge 84 Released on 2020-07-16
- Firefox 80 Released on 2020-08-25
- Firefox for Android 80 Released on 2020-08-31
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
ARIA attribute reflection
Newly available since 2023-10-24 (baseline low)WAI-ARIA attributes have corresponding properties on
Element
andElementInternals
objects.- Chrome 103 Released on 2022-06-21
- Chrome Android 103 Released on 2022-06-21
- Edge 103 Released on 2022-06-23
- Firefox 119 Released on 2023-10-24
- Firefox for Android 119 Released on 2023-10-24
- Safari 12.1 Released on 2019-03-25
- Safari on iOS 12.2 Released on 2019-03-25
-
Array (initial support)
Widely available since 2018-01-29 (baseline high)Arrays are ordered lists of JavaScript values.
- Chrome 1 Released on 2008-12-11
- Chrome Android 18 Released on 2012-06-27
- Edge 12 Released on 2015-07-29
- Firefox 1 Released on 2004-11-09
- Firefox for Android 4 Released on 2011-03-29
- Safari 1 Released on 2003-06-23
- Safari on iOS 1 Released on 2007-06-29
-
Array at()
Newly available since 2022-03-14 (baseline low)The
at()
method of arrays and typed arrays returns the item at an index, including negative indices for getting items relative to the end of an array. Also known as the relative indexing method.- Chrome 92 Released on 2021-07-20
- Chrome Android 92 Released on 2021-07-20
- Edge 92 Released on 2021-07-22
- Firefox 90 Released on 2021-07-13
- Firefox for Android 90 Released on 2021-07-13
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
Array by copy
Newly available since 2023-07-04 (baseline low)The
toReversed()
,toSorted()
,toSpliced()
, andwith()
methods of arrays and typed arrays return changed copies of arrays. They stand in contrast to methods such assort()
orreverse()
that change arrays in place.- Chrome 110 Released on 2023-02-07
- Chrome Android 110 Released on 2023-02-07
- Edge 110 Released on 2023-02-09
- Firefox 115 Released on 2023-07-04
- Firefox for Android 115 Released on 2023-07-04
- Safari 16 Released on 2022-09-12
- Safari on iOS 16 Released on 2022-09-12
-
Array copyWithin()
Widely available since 2019-03-20 (baseline high)The
copyWithin()
method of arrays and typed arrays shifts or copies items of an array to another index of the array without changing its length.- Chrome 45 Released on 2015-09-01
- Chrome Android 45 Released on 2015-09-01
- Edge 12 Released on 2015-07-29
- Firefox 32 Released on 2014-09-02
- Firefox for Android 32 Released on 2014-09-02
- Safari 10 Released on 2016-09-20
- Safari on iOS 10 Released on 2016-09-13
-
Array fill()
Widely available since 2018-03-01 (baseline high)The
fill()
method of arrays and typed arrays sets all or some items of an array to a given a value.- Chrome 45 Released on 2015-09-01
- Chrome Android 45 Released on 2015-09-01
- Edge 12 Released on 2015-07-29
- Firefox 31 Released on 2014-07-22
- Firefox for Android 31 Released on 2014-07-22
- Safari 8 Released on 2014-10-16
- Safari on iOS 8 Released on 2014-09-17
-
Array find() and findIndex()
Widely available since 2018-03-01 (baseline high)The
find()
andfindIndex()
methods of arrays and typed arrays search an array for the first item that satisfies a test function.- Chrome 45 Released on 2015-09-01
- Chrome Android 45 Released on 2015-09-01
- Edge 12 Released on 2015-07-29
- Firefox 25 Released on 2013-10-29
- Firefox for Android 4 Released on 2011-03-29
- Safari 8 Released on 2014-10-16
- Safari on iOS 8 Released on 2014-09-17
-
Array findLast() and findLastIndex()
Newly available since 2022-08-23 (baseline low)The
findLast()
andfindLastIndex()
methods of arrays and typed arrays search an array in reverse order for the first item that satisfies a test function.- Chrome 97 Released on 2022-01-04
- Chrome Android 97 Released on 2022-01-04
- Edge 97 Released on 2022-01-06
- Firefox 104 Released on 2022-08-23
- Firefox for Android 104 Released on 2022-08-23
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
Array flat() and flatMap()
Widely available since 2022-07-15 (baseline high)The
flat()
andflatMap()
methods for arrays creates a new array such that each nested array item is concatenated into it.- Chrome 69 Released on 2018-09-04
- Chrome Android 69 Released on 2018-09-04
- Edge 79 Released on 2020-01-15
- Firefox 62 Released on 2018-09-05
- Firefox for Android 62 Released on 2018-09-05
- Safari 12 Released on 2018-09-17
- Safari on iOS 12 Released on 2018-09-17
-
Array.from()
Widely available since 2019-03-20 (baseline high)The
Array.from()
and typed array.from()
static methods copy items from an iterable or array-like object to make a new array.- Chrome 45 Released on 2015-09-01
- Chrome Android 45 Released on 2015-09-01
- Edge 12 Released on 2015-07-29
- Firefox 38 Released on 2015-05-12
- Firefox for Android 38 Released on 2015-05-12
- Safari 10 Released on 2016-09-20
- Safari on iOS 10 Released on 2016-09-13
-
Array.fromAsync()
Newly available since 2024-01-25 (baseline low)The
Array.fromAsync()
static method copies items from an async iterable object to make a new array.- Chrome 121 Released on 2024-01-23
- Chrome Android 121 Released on 2024-01-23
- Edge 121 Released on 2024-01-25
- Firefox 115 Released on 2023-07-04
- Firefox for Android 115 Released on 2023-07-04
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Array grouping
Newly available since 2024-03-05 (baseline low)The
Object.groupBy()
andMap.groupBy()
static methods group values of arrays and iterables based on a function that returns a key for each value.- Chrome 117 Released on 2023-09-12
- Chrome Android 117 Released on 2023-09-12
- Edge 117 Released on 2023-09-15
- Firefox 119 Released on 2023-10-24
- Firefox for Android 119 Released on 2023-10-24
- Safari 17.4 Released on 2024-03-05
- Safari on iOS 17.4 Released on 2024-03-05
-
Array includes()
Widely available since 2019-03-20 (baseline high)The
includes()
method of arrays and typed arrays returns whether a given value appears in the array.- Chrome 47 Released on 2015-12-01
- Chrome Android 47 Released on 2015-12-02
- Edge 14 Released on 2016-08-02
- Firefox 43 Released on 2015-12-15
- Firefox for Android 43 Released on 2015-12-15
- Safari 10 Released on 2016-09-20
- Safari on iOS 10 Released on 2016-09-13
-
Array.isArray()
Widely available since 2018-01-29 (baseline high)The
Array.isArray()
static method checks whether a value is an array.- Chrome 4 Released on 2010-01-25
- Chrome Android 18 Released on 2012-06-27
- Edge 12 Released on 2015-07-29
- Firefox 4 Released on 2011-03-22
- Firefox for Android 4 Released on 2011-03-29
- Safari 5 Released on 2010-06-07
- Safari on iOS 5 Released on 2011-10-12
-
Array iteration methods
Widely available since 2018-01-29 (baseline high)Array iteration methods
- Chrome 3 Released on 2009-09-15
- Chrome Android 18 Released on 2012-06-27
- Edge 12 Released on 2015-07-29
- Firefox 3 Released on 2008-06-17
- Firefox for Android 4 Released on 2011-03-29
- Safari 4 Released on 2009-06-08
- Safari on iOS 3.2 Released on 2010-04-03
-
Array iterators
Widely available since 2019-03-20 (baseline high)Arrays are iterable with the
for…of
statement and enumerable with the methodsentries()
,keys()
, andvalues()
.- Chrome 38 Released on 2014-10-07
- Chrome Android 38 Released on 2014-10-08
- Edge 12 Released on 2015-07-29
- Firefox 36 Released on 2015-02-24
- Firefox for Android 36 Released on 2015-02-27
- Safari 10 Released on 2016-09-20
- Safari on iOS 10 Released on 2016-09-13
-
Array.of()
Widely available since 2019-03-20 (baseline high)The
Array.of()
and typed array.of()
static methods create new arrays from the values of any number of arguments.- Chrome 45 Released on 2015-09-01
- Chrome Android 39 Released on 2014-11-12
- Edge 12 Released on 2015-07-29
- Firefox 25 Released on 2013-10-29
- Firefox for Android 25 Released on 2013-10-29
- Safari 10 Released on 2016-09-20
- Safari on iOS 10 Released on 2016-09-13
-
Array splice()
Widely available since 2018-01-29 (baseline high)The array
splice()
method changes an array in-place. You can use it to delete items, overwrite items, or insert items, starting from an index.- Chrome 1 Released on 2008-12-11
- Chrome Android 18 Released on 2012-06-27
- Edge 12 Released on 2015-07-29
- Firefox 1 Released on 2004-11-09
- Firefox for Android 4 Released on 2011-03-29
- Safari 1 Released on 2003-06-23
- Safari on iOS 1 Released on 2007-06-29
-
aspect-ratio
Widely available since 2024-03-20 (baseline high)The
aspect-ratio
CSS property controls the width-to-height ratio of elements. For<img>
and<video>
elements, thewidth
andheight
attributes used together withheight: auto
control the aspect ratio while the image/video is loading.- Chrome 88 Released on 2021-01-19
- Chrome Android 88 Released on 2021-01-19
- Edge 88 Released on 2021-01-21
- Firefox 89 Released on 2021-06-01
- Firefox for Android 89 Released on 2021-06-01
- Safari 15 Released on 2021-09-20
- Safari on iOS 15 Released on 2021-09-20
-
Async functions
Widely available since 2019-10-05 (baseline high)The
async
andawait
keywords allow you to use the asynchronous, promise-based behavior of a function without using promise chains.- Chrome 55 Released on 2016-12-01
- Chrome Android 55 Released on 2016-12-06
- Edge 15 Released on 2017-04-05
- Firefox 52 Released on 2017-03-07
- Firefox for Android 52 Released on 2017-03-07
- Safari 10.1 Released on 2017-03-27
- Safari on iOS 10.3 Released on 2017-03-27
-
Async clipboard
Limited availabilityThe
navigator.clipboard
API asynchronously reads and writes to the system clipboard.- Chrome ❌ Search for bugs Search for Chromestatus entry
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge ❌ Search for bugs Search for Chromestatus entry
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Audio session
Limited availabilityThe
navigator.audioSession
API controls how audio playback interacts with other applications. For example, playing music can pause audio from other applications, while ambient audio can play at the same time.- Chrome ❌ Search for bugs Search for Chromestatus entry
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge ❌ Search for bugs Search for Chromestatus entry
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Audio and video tracks
Limited availabilityThe
audioTracks
andvideoTracks
APIs for media elements switch audio and video tracks during playback.- Chrome ❌ Search for bugs Search for Chromestatus entry
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge ❌ Search for bugs Search for Chromestatus entry
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari 8 Released on 2014-10-16
- Safari on iOS 8 Released on 2014-09-17
-
:autofill
Newly available since 2023-02-09 (baseline low)The
:autofill
pseudo-class matches<input>
elements that have been filled in automatically by the browser.- Chrome 110 Released on 2023-02-07
- Chrome Android 110 Released on 2023-02-07
- Edge 110 Released on 2023-02-09
- Firefox 86 Released on 2021-02-23
- Firefox for Android 86 Released on 2021-02-23
- Safari 15 Released on 2021-09-20
- Safari on iOS 15 Released on 2021-09-20
-
Autofocus
Widely available since 2018-01-29 (baseline high)The
autofocus
HTML attribute gives focus to an element on page load.- Chrome 1 Released on 2008-12-11
- Chrome Android 18 Released on 2012-06-27
- Edge 12 Released on 2015-07-29
- Firefox 1 Released on 2004-11-09
- Firefox for Android 4 Released on 2011-03-29
- Safari 4 Released on 2009-06-08
- Safari on iOS 3.2 Released on 2010-04-03
-
Autonomous custom elements
Widely available since 2022-07-15 (baseline high)Autonomous custom elements are HTML elements with a hyphenated tag name (like
<example-element>
) that have behaviors you define.- Chrome 54 Released on 2016-10-12
- Chrome Android 54 Released on 2016-10-19
- Edge 79 Released on 2020-01-15
- Firefox 63 Released on 2018-10-23
- Firefox for Android 63 Released on 2018-10-23
- Safari 10.1 Released on 2017-03-27
- Safari on iOS 10.3 Released on 2017-03-27
-
AVIF
Newly available since 2024-01-26 (baseline low)AVIF (AV1 Image File Format) is an image format based on the AV1 video format.
- Chrome 85 Released on 2020-08-25
- Chrome Android 85 Released on 2020-08-25
- Edge 121 Released on 2024-01-25
- Firefox 93 Released on 2021-10-05
- Firefox for Android 93 Released on 2021-10-05
- Safari 16 Released on 2022-09-12
- Safari on iOS 16 Released on 2022-09-12
-
backdrop-filter
Limited availabilityThe
backdrop-filter
CSS property applies graphical effects such as blurring or color shifting to the area behind an element.- Chrome 76 Released on 2019-07-30
- Chrome Android 76 Released on 2019-07-30
- Edge 79 Released on 2020-01-15
- Firefox 103 Released on 2022-07-26
- Firefox for Android 103 Released on 2022-07-26
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
background-clip
Widely available since 2018-01-29 (baseline high)The
background-clip
CSS property sets the extent of the background: the padding box, the content box, or the default border box.- Chrome 1 Released on 2008-12-11
- Chrome Android 18 Released on 2012-06-27
- Edge 12 Released on 2015-07-29
- Firefox 4 Released on 2011-03-22
- Firefox for Android 4 Released on 2011-03-29
- Safari 5 Released on 2010-06-07
- Safari on iOS 5 Released on 2011-10-12
-
background-clip: text
Newly available since 2023-12-07 (baseline low)The
background-clip: text
CSS declaration draws the background underneath only the text in the element.- Chrome 120 Released on 2023-12-05
- Chrome Android 120 Released on 2023-12-05
- Edge 120 Released on 2023-12-07
- Firefox 49 Released on 2016-09-20
- Firefox for Android 49 Released on 2016-09-20
- Safari 14 Released on 2020-09-16
- Safari on iOS 14 Released on 2020-09-16
-
Background fetch
Limited availabilityBackground fetch downloads data in the background even when the web page is closed.
- Chrome 74 Released on 2019-04-23
- Chrome Android 74 Released on 2019-04-24
- Edge 79 Released on 2020-01-15
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
baseline-source
Limited availabilityThe
baseline-source
CSS property controls how inline-level boxes with multiple lines of text are aligned with the surrounding text. By default, which typographic baseline is used depends on thedisplay
property value.- Chrome 111 Released on 2023-03-07
- Chrome Android 111 Released on 2023-03-07
- Edge 111 Released on 2023-03-13
- Firefox 115 Released on 2023-07-04
- Firefox for Android 115 Released on 2023-07-04
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
BigInt
Widely available since 2023-03-16 (baseline high)The
BigInt
JavaScript type represents integers of any size, including integers too large for the primitiveNumber
type.- Chrome 67 Released on 2018-05-29
- Chrome Android 67 Released on 2018-05-31
- Edge 79 Released on 2020-01-15
- Firefox 68 Released on 2019-07-09
- Firefox for Android 68 Released on 2019-07-09
- Safari 14 Released on 2020-09-16
- Safari on iOS 14 Released on 2020-09-16
-
blocking="render"
Limited availabilityThe
blocking="render"
attribute for<link>
,<script>
, and<style>
elements blocks rendering until the external script or stylesheet has been loaded. For<link rel="expect">
, rendering is blocked until a specific element is in the DOM.- Chrome 105 Released on 2022-09-02
- Chrome Android 105 Released on 2022-09-02
- Edge 105 Released on 2022-09-01
- Firefox ❌ See bugzil.la/1751383
- Firefox for Android ❌ See bugzil.la/1751383
- Safari ❌ See webkit.org/b/267232
- Safari on iOS ❌ See webkit.org/b/267232
-
Border images
Widely available since 2019-08-01 (baseline high)The
border-image
CSS property draws an image around an element.- Chrome 56 Released on 2017-01-25
- Chrome Android 56 Released on 2017-02-01
- Edge 12 Released on 2015-07-29
- Firefox 50 Released on 2016-11-15
- Firefox for Android 50 Released on 2016-11-15
- Safari 9.1 Released on 2016-03-21
- Safari on iOS 9.3 Released on 2016-03-21
-
BroadcastChannel
Newly available since 2022-03-14 (baseline low)The
BroadcastChannel
API allows you to send messages between same-origin browsing contexts, such as between the same page loaded in multiple tabs.- Chrome 54 Released on 2016-10-12
- Chrome Android 54 Released on 2016-10-19
- Edge 79 Released on 2020-01-15
- Firefox 38 Released on 2015-05-12
- Firefox for Android 38 Released on 2015-05-12
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
calc()
Widely available since 2018-01-29 (baseline high)The
calc()
CSS function computes mathematical expressions such acalc(100%/3 - 1em)
.- Chrome 26 Released on 2013-03-26
- Chrome Android 28 Released on 2013-07-10
- Edge 12 Released on 2015-07-29
- Firefox 16 Released on 2012-10-09
- Firefox for Android 16 Released on 2012-10-09
- Safari 7 Released on 2013-10-22
- Safari on iOS 7 Released on 2013-09-18
-
calc() constants
Newly available since 2023-06-06 (baseline low)The
e
,pi
,infinity
, andNaN
constants are accepted in CSS math functions such ascalc()
.- Chrome 110 Released on 2023-02-07
- Chrome Android 110 Released on 2023-02-07
- Edge 110 Released on 2023-02-09
- Firefox 114 Released on 2023-06-06
- Firefox for Android 114 Released on 2023-06-06
- Safari 16 Released on 2022-09-12
- Safari on iOS 16 Released on 2022-09-12
-
contextlost and contextrestored
Limited availabilityThe
contextlost
event for<canvas>
fires when the canvas backing storage is lost, while thecontextrestored
event fires when it is recreated.- Chrome 99 Released on 2022-03-01
- Chrome Android 99 Released on 2022-03-01
- Edge 99 Released on 2022-03-03
- Firefox 125 Released on 2024-04-16
- Firefox for Android 125 Released on 2024-04-16
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Canvas createConicGradient()
Newly available since 2023-04-11 (baseline low)The
createConicGradient()
methods draw a conic gradient to a 2D canvas.- Chrome 99 Released on 2022-03-01
- Chrome Android 99 Released on 2022-03-01
- Edge 99 Released on 2022-03-03
- Firefox 112 Released on 2023-04-11
- Firefox for Android 112 Released on 2023-04-11
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Canvas reset()
Newly available since 2023-12-11 (baseline low)The
reset()
method clears a canvas to its initial state.- Chrome 99 Released on 2022-03-01
- Chrome Android 99 Released on 2022-03-01
- Edge 99 Released on 2022-03-03
- Firefox 113 Released on 2023-05-09
- Firefox for Android 113 Released on 2023-05-09
- Safari 17.2 Released on 2023-12-11
- Safari on iOS 17.2 Released on 2023-12-11
-
Canvas roundRect()
Newly available since 2023-04-11 (baseline low)The
roundRect()
methods draw a rounded rectangle to a 2D canvas.- Chrome 99 Released on 2022-03-01
- Chrome Android 99 Released on 2022-03-01
- Edge 99 Released on 2022-03-03
- Firefox 112 Released on 2023-04-11
- Firefox for Android 112 Released on 2023-04-11
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Canvas text metrics
Widely available since 2018-01-29 (baseline high)The
fillText()
andstrokeText()
methods draw text to a 2D canvas. ThemeasureText()
method measures the width and other metrics which can be used to position the text.- Chrome 2 Released on 2009-05-21
- Chrome Android 18 Released on 2012-06-27
- Edge 12 Released on 2015-07-29
- Firefox 3.5 Released on 2009-06-30
- Firefox for Android 31 Released on 2014-07-22
- Safari 4 Released on 2009-06-08
- Safari on iOS 3.2 Released on 2010-04-03
-
Canvas text baselines
Newly available since 2023-10-13 (baseline low)The
alphabeticBaseline
,hangingBaseline
, andideographicBaseline
canvas text metrics measure the distance from the usedtextBaseline
to the respective typographic baseline.- Chrome 118 Released on 2023-10-10
- Chrome Android 118 Released on 2023-10-10
- Edge 118 Released on 2023-10-13
- Firefox 116 Released on 2023-08-01
- Firefox for Android 116 Released on 2023-08-01
- Safari 11.1 Released on 2018-04-12
- Safari on iOS 11.3 Released on 2018-03-29
-
cap unit
Newly available since 2023-12-11 (baseline low)The CSS
cap
unit corresponds to the height of Latin capital letters.- Chrome 118 Released on 2023-10-10
- Chrome Android 118 Released on 2023-10-10
- Edge 118 Released on 2023-10-13
- Firefox 97 Released on 2022-02-08
- Firefox for Android 97 Released on 2022-02-08
- Safari 17.2 Released on 2023-12-11
- Safari on iOS 17.2 Released on 2023-12-11
-
Cascade layers
Newly available since 2022-03-14 (baseline low)The
@layer
CSS at-rule avoids specificity conflicts by providing priority levels for different groups of CSS rules, such as low-priority styles like resets, and high-priority styles like UI components.- Chrome 99 Released on 2022-03-01
- Chrome Android 99 Released on 2022-03-01
- Edge 99 Released on 2022-03-03
- Firefox 97 Released on 2022-02-08
- Firefox for Android 97 Released on 2022-02-08
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
checkVisibility()
Newly available since 2024-03-05 (baseline low)The
checkVisibility()
method checks if an element is potentially visible, with optional parameters for the kinds of visibility to check. For example, it checks whether the element has the styledisplay: none
, but can also check forvisibility: hidden
.- Chrome 105 Released on 2022-09-02
- Chrome Android 105 Released on 2022-09-02
- Edge 105 Released on 2022-09-01
- Firefox 106 Released on 2022-10-18
- Firefox for Android 106 Released on 2022-10-18
- Safari 17.4 Released on 2024-03-05
- Safari on iOS 17.4 Released on 2024-03-05
-
Classes
Widely available since 2019-09-27 (baseline high)Classes are an object-oriented syntax for JavaScript prototypes.
- Chrome 42 Released on 2015-04-14
- Chrome Android 42 Released on 2015-04-15
- Edge 13 Released on 2015-11-12
- Firefox 45 Released on 2016-03-08
- Firefox for Android 45 Released on 2016-03-08
- Safari 10.1 Released on 2017-03-27
- Safari on iOS 10.3 Released on 2017-03-27
-
ClipboardItem.supports()
Limited availabilityThe
ClipboardItem.supports()
static method checks if the browser supports writing data types such as "image/svg+xml" or other custom formats to the system clipboard.- Chrome 121 Released on 2024-01-23
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge 121 Released on 2024-01-25
- Firefox 127 Released on 2024-06-11
- Firefox for Android 127 Released on 2024-06-11
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Read unsanitized clipboard data
Limited availabilityThe optional
formats.unsanitized
parameter of thenavigator.clipboard.read()
method reads unsanitized data from the system clipboard.- Chrome 122 Released on 2024-02-20
- Chrome Android 122 Released on 2024-02-20
- Edge 122 Released on 2024-02-23
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
color()
Newly available since 2023-05-09 (baseline low)The
color()
function defines a color within a given color space. Wide gamut color spaces likedisplay-p3
allow showing more vibrant and saturated colors than the standardsrgb
color space.- Chrome 111 Released on 2023-03-07
- Chrome Android 111 Released on 2023-03-07
- Edge 111 Released on 2023-03-13
- Firefox 113 Released on 2023-05-09
- Firefox for Android 113 Released on 2023-05-09
- Safari 15 Released on 2021-09-20
- Safari on iOS 15 Released on 2021-09-20
-
color-mix()
Newly available since 2023-05-09 (baseline low)The
color-mix()
function mixes two colors in a given color space and by a given amount. Commonly, lighter or darker variations of a color are created by mixing with white or black.- Chrome 111 Released on 2023-03-07
- Chrome Android 111 Released on 2023-03-07
- Edge 111 Released on 2023-03-13
- Firefox 113 Released on 2023-05-09
- Firefox for Android 113 Released on 2023-05-09
- Safari 16.2 Released on 2022-12-13
- Safari on iOS 16.2 Released on 2022-12-13
-
color-scheme
Newly available since 2022-02-03 (baseline low)The
color-scheme
CSS property sets which color schemes (light or dark) an element uses and may prevent automatic dark mode adjustments by the browser.- Chrome 98 Released on 2022-02-01
- Chrome Android 98 Released on 2022-02-01
- Edge 98 Released on 2022-02-03
- Firefox 96 Released on 2022-01-11
- Firefox for Android 96 Released on 2022-01-11
- Safari 13 Released on 2019-09-19
- Safari on iOS 13 Released on 2019-09-19
-
COLRv1
Limited availabilityCOLRv1 is a font format that supports multi-color glyphs.
- Chrome 98 Released on 2022-02-01
- Chrome Android 98 Released on 2022-02-01
- Edge 98 Released on 2022-02-03
- Firefox 107 Released on 2022-11-15
- Firefox for Android 107 Released on 2022-11-15
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Column breaks
Limited availabilityIn columnar layouts (created by the
columns
orcolumn-count
CSS properties), thebreak-after
,break-before
,break-inside
properties control where columns start or end.- Chrome 102 Released on 2022-05-24
- Chrome Android 102 Released on 2022-05-24
- Edge 102 Released on 2022-05-31
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Compression streams
Newly available since 2023-05-09 (baseline low)The
CompressionStream
andDecompressionStream
interfaces compress and decompress data using the gzip or deflate formats.- Chrome 80 Released on 2020-02-04
- Chrome Android 80 Released on 2020-02-04
- Edge 80 Released on 2020-02-07
- Firefox 113 Released on 2023-05-09
- Firefox for Android 113 Released on 2023-05-09
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
CPU compute pressure
Limited availabilityThe
PressureObserver
API monitors CPU load, allowing you to adjust workloads in response to available computing resources. Also known as the Compute Pressure API.- Chrome 125 Released on 2024-05-14
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge 125 Released on 2024-05-17
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Conic gradients
Widely available since 2023-05-17 (baseline high)The
conic-gradient()
andrepeating-conic-gradient()
CSS functions create backgrounds that progress between two or more colors around a center point.- Chrome 72 Released on 2019-01-29
- Chrome Android 72 Released on 2019-01-29
- Edge 79 Released on 2020-01-15
- Firefox 83 Released on 2020-11-17
- Firefox for Android 83 Released on 2020-11-17
- Safari 12.1 Released on 2019-03-25
- Safari on iOS 12.2 Released on 2019-03-25
-
Constraint validation API
Widely available since 2021-06-11 (baseline high)Methods that validate form controls before submission, such as
checkValidity()
,reportValidity()
andsetCustomValidity()
.- Chrome 40 Released on 2015-01-21
- Chrome Android 40 Released on 2015-01-21
- Edge 18 Released on 2018-10-02
- Firefox 51 Released on 2017-01-24
- Firefox for Android 64 Released on 2018-12-11
- Safari 10.1 Released on 2017-03-27
- Safari on iOS 10.3 Released on 2017-03-27
-
Constructed stylesheets
Newly available since 2023-03-27 (baseline low)The
CSSStyleSheet
constructor creates a new stylesheet which can be shared between a document and multiple shadow roots usingadoptedStyleSheets
.- Chrome 73 Released on 2019-03-12
- Chrome Android 73 Released on 2019-03-12
- Edge 79 Released on 2020-01-15
- Firefox 101 Released on 2022-05-31
- Firefox for Android 101 Released on 2022-05-31
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
contain-intrinsic-size
Newly available since 2023-09-18 (baseline low)The
contain-intrinsic-size
CSS property sets the intrinsic size of an element. When using size containment, the browser will lay out the element as if it had a single child of this size.- Chrome 95 Released on 2021-10-19
- Chrome Android 95 Released on 2021-10-19
- Edge 95 Released on 2021-10-21
- Firefox 107 Released on 2022-11-15
- Firefox for Android 107 Released on 2022-11-15
- Safari 17 Released on 2023-09-18
- Safari on iOS 17 Released on 2023-09-18
-
Container queries
Newly available since 2023-02-14 (baseline low)Container size queries with the
@container
at-rule apply styles to an element based on the dimensions of its container.- Chrome 105 Released on 2022-09-02
- Chrome Android 105 Released on 2022-09-02
- Edge 105 Released on 2022-09-01
- Firefox 110 Released on 2023-02-14
- Firefox for Android 110 Released on 2023-02-14
- Safari 16 Released on 2022-09-12
- Safari on iOS 16 Released on 2022-09-12
-
Container style queries
Limited availabilityContainer style queries with the
@container
at-rule apply styles to an element based on the values of custom properties of its container.- Chrome 111 Released on 2023-03-07
- Chrome Android 111 Released on 2023-03-07
- Edge 111 Released on 2023-03-13
- Firefox ❌ See bugzil.la/1795622
- Firefox for Android ❌ See bugzil.la/1795622
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
content-visibility
Limited availabilityThe
content-visibility
CSS property delays rendering an element, including layout and painting, until it is needed.- Chrome 108 Released on 2022-11-29
- Chrome Android 108 Released on 2022-11-29
- Edge 108 Released on 2022-12-05
- Firefox 125 Released on 2024-04-16
- Firefox for Android 125 Released on 2024-04-16
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
controlslist
Limited availabilityThe
controlslist
attribute for<audio>
or<video>
hides parts of the browser's built-in controls. For example,controlslist="nofullscreen"
removes the button to play the video in fullscreen.- Chrome 58 Released on 2017-04-19
- Chrome Android 58 Released on 2017-04-25
- Edge 79 Released on 2020-01-15
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
counter-set
Newly available since 2023-12-11 (baseline low)The
counter-set
CSS property creates (and optionally sets a value for) a counter, the numbers for a series of headings or ordered list items.- Chrome 85 Released on 2020-08-25
- Chrome Android 85 Released on 2020-08-25
- Edge 85 Released on 2020-08-27
- Firefox 68 Released on 2019-07-09
- Firefox for Android 68 Released on 2019-07-09
- Safari 17.2 Released on 2023-12-11
- Safari on iOS 17.2 Released on 2023-12-11
-
@counter-style
Newly available since 2023-09-18 (baseline low)The
@counter-style
CSS at-rule defines custom counter styles for list items. For example, you can use a sequence of specific symbols instead of numbers for an ordered list.- Chrome 91 Released on 2021-05-25
- Chrome Android 91 Released on 2021-05-25
- Edge 91 Released on 2021-05-27
- Firefox 33 Released on 2014-10-14
- Firefox for Android 33 Released on 2014-10-14
- Safari 17 Released on 2023-09-18
- Safari on iOS 17 Released on 2023-09-18
-
CSS import attributes
Limited availabilityModule `import ... with { type: "css" } statements load CSS modules as constructable stylesheets. Also known as CSS module scripts and formerly known as import assertions.
- Chrome 123 Released on 2024-03-19
- Chrome Android 123 Released on 2024-03-19
- Edge 123 Released on 2024-03-22
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Custom properties
Widely available since 2019-10-05 (baseline high)Custom properties are CSS properties prefixed with
--
that set values you can reuse with thevar()
function. For example, you can set a--key-color
property to reuse asborder-color: var(--key-color)
. Also known as CSS variables.- Chrome 49 Released on 2016-03-02
- Chrome Android 49 Released on 2016-03-09
- Edge 15 Released on 2017-04-05
- Firefox 31 Released on 2014-07-22
- Firefox for Android 31 Released on 2014-07-22
- Safari 9.1 Released on 2016-03-21
- Safari on iOS 9.3 Released on 2016-03-21
-
Customized built-in elements
Limited availabilityCustomized built-in elements are HTML elements that extend built-in elements using the
is
attribute, to add new behaviors that you define.- Chrome 67 Released on 2018-05-29
- Chrome Android 67 Released on 2018-05-31
- Edge 79 Released on 2020-01-15
- Firefox 63 Released on 2018-10-23
- Firefox for Android 63 Released on 2018-10-23
- Safari ❌ See webkit.org/b/182671
- Safari on iOS ❌ See webkit.org/b/182671
-
<datalist>
Limited availabilityThe
<datalist>
element defines a set of recommended values for an<input>
element. Browsers may show a dropdown menu of all options, or matching options as the user types.- Chrome 69 Released on 2018-09-04
- Chrome Android 69 Released on 2018-09-04
- Edge 12 Released on 2015-07-29
- Firefox 110 Released on 2023-02-14
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari 12.1 Released on 2019-03-25
- Safari on iOS 12.2 Released on 2019-03-25
-
Declarative shadow DOM
Newly available since 2024-02-20 (baseline low)The
shadowrootmode
attribute on<template>
creates a shadow root without the use of JavaScript. It is a declarative alternative to theattachShadow()
method.- Chrome 111 Released on 2023-03-07
- Chrome Android 111 Released on 2023-03-07
- Edge 111 Released on 2023-03-13
- Firefox 123 Released on 2024-02-20
- Firefox for Android 123 Released on 2024-02-20
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
:default
Widely available since 2022-07-15 (baseline high)The
:default
CSS pseudo-class matches the default element in a group of related form controls, such as checkboxes and radio buttons with thechecked
attribute.- Chrome 10 Released on 2011-03-08
- Chrome Android 18 Released on 2012-06-27
- Edge 79 Released on 2020-01-15
- Firefox 4 Released on 2011-03-22
- Firefox for Android 4 Released on 2011-03-29
- Safari 5 Released on 2010-06-07
- Safari on iOS 5 Released on 2011-10-12
-
<details>
Widely available since 2022-07-15 (baseline high)The
<details>
element is a disclosure widget which can be expanded to reveal additional content. When closed, only the nested<summary>
element is visible.- Chrome 12 Released on 2011-06-07
- Chrome Android 18 Released on 2012-06-27
- Edge 79 Released on 2020-01-15
- Firefox 49 Released on 2016-09-20
- Firefox for Android 49 Released on 2016-09-20
- Safari 6 Released on 2012-07-25
- Safari on iOS 6 Released on 2012-09-10
-
Mutually exclusive <details> elements
Limited availabilityMultiple
<details>
elements which use the samename
attribute are mutually exclusive. When one member of the group is opened, all other members are closed.- Chrome 120 Released on 2023-12-05
- Chrome Android 120 Released on 2023-12-05
- Edge 120 Released on 2023-12-07
- Firefox ❌ See bugzil.la/1856460
- Firefox for Android ❌ See bugzil.la/1856460
- Safari 17.2 Released on 2023-12-11
- Safari on iOS 17.2 Released on 2023-12-11
-
Device orientation events
Newly available since 2023-09-18 (baseline low)The
DeviceMotion
andDeviceOrientation
events report the movement and orientation of the browser's device in physical space.- Chrome 31 Released on 2013-11-12
- Chrome Android 31 Released on 2013-11-14
- Edge 12 Released on 2015-07-29
- Firefox 6 Released on 2011-08-16
- Firefox for Android 6 Released on 2011-08-16
- Safari 17 Released on 2023-09-18
- Safari on iOS 4.2 Released on 2010-11-22
-
Device posture
Limited availabilityThe device posture API provides information about the physical posture of a device, such as whether a foldable device is folded or unfolded.
- Chrome ❌ Search for bugs Search for Chromestatus entry
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge ❌ Search for bugs Search for Chromestatus entry
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
<dialog>
Newly available since 2022-03-14 (baseline low)The
<dialog>
HTML element represents a modal or non-modal dialog box, such as a confirmation prompt or a subwindow used to enter data.- Chrome 37 Released on 2014-08-26
- Chrome Android 37 Released on 2014-09-03
- Edge 79 Released on 2020-01-15
- Firefox 98 Released on 2022-03-08
- Firefox for Android 98 Released on 2022-03-08
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
:dir()
Newly available since 2023-12-07 (baseline low)The
:dir()
CSS functional pseudo-class matches elements by text direction, either right to left (rtl
) or left to right (ltr
).- Chrome 120 Released on 2023-12-05
- Chrome Android 120 Released on 2023-12-05
- Edge 120 Released on 2023-12-07
- Firefox 49 Released on 2016-09-20
- Firefox for Android 49 Released on 2016-09-20
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
dirname
Newly available since 2023-08-01 (baseline low)The
dirname
attribute of<textarea>
and<input>
HTML elements includes the field's writing direction as form data on submission.- Chrome 17 Released on 2012-02-08
- Chrome Android 18 Released on 2012-06-27
- Edge 79 Released on 2020-01-15
- Firefox 116 Released on 2023-08-01
- Firefox for Android 116 Released on 2023-08-01
- Safari 6 Released on 2012-07-25
- Safari on iOS 6 Released on 2012-09-10
-
display animation
Limited availabilityYou can animate elements between
display: none
and any otherdisplay
value or animate betweencontent-visibility: hidden
and any othercontent-visibility
value. This also applies to transitions.- Chrome 117 Released on 2023-09-12
- Chrome Android 117 Released on 2023-09-12
- Edge 117 Released on 2023-09-15
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
document.caretPositionFromPoint()
Limited availabilityThe
document.caretPositionFromPoint()
method finds an insertion point, represented by a DOM node and an offset within that node, for given coordinates in the viewport.- Chrome ❌ Search for bugs Search for Chromestatus entry
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge ❌ Search for bugs Search for Chromestatus entry
- Firefox 20 Released on 2013-04-02
- Firefox for Android 20 Released on 2013-04-02
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Document picture-in-picture
Limited availabilityThe document picture-in-picture API creates an always-on-top window from arbitrary HTML content.
- Chrome 116 Released on 2023-08-15
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge 116 Released on 2023-08-21
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
EditContext
Limited availabilityThe
EditContext
API allows you to build rich text editors that support advanced text input, such as Input Method Editor (IME) composition, an emoji picker, or other platform-specific editing UI.- Chrome 121 Released on 2024-01-23
- Chrome Android 121 Released on 2024-01-23
- Edge 121 Released on 2024-01-25
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
pow(), sqrt(), hypot(), log(), and exp()
Newly available since 2023-12-07 (baseline low)The
pow()
,sqrt()
,hypot()
,log()
, andexp()
CSS functions compute various exponential functions.- Chrome 120 Released on 2023-12-05
- Chrome Android 120 Released on 2023-12-05
- Edge 120 Released on 2023-12-07
- Firefox 118 Released on 2023-09-26
- Firefox for Android 118 Released on 2023-09-26
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
Eyedropper
Limited availabilityThe
EyeDropper
API opens an eyedropper tool, a color picker that allows users to select a color from their screen.- Chrome 95 Released on 2021-10-19
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge 95 Released on 2021-10-21
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
fastSeek()
Limited availabilityThe
fastSeek()
method seeks an<audio>
or<video>
element as fast as possible, by seeking to a keyframe instead of exactly the requested time.- Chrome ❌ See crbug.com/648207
- Chrome Android ❌ See crbug.com/648207
- Edge ❌ See crbug.com/648207
- Firefox 31 Released on 2014-07-22
- Firefox for Android 31 Released on 2014-07-22
- Safari 8 Released on 2014-10-16
- Safari on iOS 8 Released on 2014-09-17
-
Fetch (initial support)
Widely available since 2019-09-27 (baseline high)The
fetch()
method makes asynchronous HTTP requests.- Chrome 42 Released on 2015-04-14
- Chrome Android 42 Released on 2015-04-15
- Edge 14 Released on 2016-08-02
- Firefox 39 Released on 2015-07-02
- Firefox for Android 39 Released on 2015-07-02
- Safari 10.1 Released on 2017-03-27
- Safari on iOS 10.3 Released on 2017-03-27
-
Fetch metadata request headers
Newly available since 2023-03-27 (baseline low)The
Sec-Fetch-Dest
,Sec-Fetch-Mode,
Sec-Fetch-Site, and
Sec-Fetch-User` HTTP headers provide extra information about the way a request was made, to help servers reject certain kinds of malicious requests.- Chrome 80 Released on 2020-02-04
- Chrome Android 80 Released on 2020-02-04
- Edge 80 Released on 2020-02-07
- Firefox 90 Released on 2021-07-13
- Firefox for Android 90 Released on 2021-07-13
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Fetch priority
Limited availabilityThe
fetch()
priority
option and thefetchPriority
HTML attribute give hints to the browser about which requests to do before other requests of the same type.- Chrome 102 Released on 2022-05-24
- Chrome Android 102 Released on 2022-05-24
- Edge 102 Released on 2022-05-31
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari 17.2 Released on 2023-12-11
- Safari on iOS 17.2 Released on 2023-12-11
-
field-sizing
Limited availabilityThe
field-sizing
CSS property allows form controls such as<textarea>
to be sized based on their content.- Chrome 123 Released on 2024-03-19
- Chrome Android 123 Released on 2024-03-19
- Edge 123 Released on 2024-03-22
- Firefox ❌ See bugzil.la/1832409
- Firefox for Android ❌ See bugzil.la/1832409
- Safari ❌ See webkit.org/b/264720
- Safari on iOS ❌ See webkit.org/b/264720
-
Flexbox
Widely available since 2018-03-30 (baseline high)Flexbox is a one-dimensional layout system, which places content either horizontally or vertically, with optional wrapping.
- Chrome 29 Released on 2013-08-20
- Chrome Android 29 Released on 2013-08-21
- Edge 12 Released on 2015-07-29
- Firefox 28 Released on 2014-03-18
- Firefox for Android 28 Released on 2014-03-18
- Safari 9 Released on 2015-09-30
- Safari on iOS 9 Released on 2015-09-16
-
Flexbox gap
Widely available since 2023-10-26 (baseline high)The
gap
CSS property in a flexbox layout sets the size of the space between items.- Chrome 84 Released on 2020-07-27
- Chrome Android 84 Released on 2020-07-27
- Edge 84 Released on 2020-07-16
- Firefox 63 Released on 2018-10-23
- Firefox for Android 63 Released on 2018-10-23
- Safari 14.1 Released on 2021-04-26
- Safari on iOS 14.5 Released on 2021-04-26
-
:focus-visible
Newly available since 2022-03-14 (baseline low)The
:focus-visible
CSS pseudo-class selects elements that match the:focus
pseudo-class and meets the browser's criteria for visually emphasizing focused elements.- Chrome 86 Released on 2020-10-20
- Chrome Android 86 Released on 2020-10-20
- Edge 86 Released on 2020-10-09
- Firefox 85 Released on 2021-01-26
- Firefox for Android 85 Released on 2021-01-26
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
@font-face
Widely available since 2019-03-20 (baseline high)The
@font-face
CSS at-rule creates a customfont-family
value. The at-rule's descriptors set the font's name, source, and various display settings.- Chrome 36 Released on 2014-07-16
- Chrome Android 36 Released on 2014-07-16
- Edge 14 Released on 2016-08-02
- Firefox 39 Released on 2015-07-02
- Firefox for Android 39 Released on 2015-07-02
- Safari 10 Released on 2016-09-20
- Safari on iOS 10 Released on 2016-09-13
-
font-optical-sizing
Widely available since 2022-06-17 (baseline high)The
font-optical-sizing
CSS property sets whether text rendering is optimized for viewing at different sizes.- Chrome 79 Released on 2019-12-10
- Chrome Android 79 Released on 2019-12-17
- Edge 17 Released on 2018-04-30
- Firefox 62 Released on 2018-09-05
- Firefox for Android 62 Released on 2018-09-05
- Safari 11 Released on 2017-09-19
- Safari on iOS 11 Released on 2017-09-19
-
font-palette
Newly available since 2022-11-15 (baseline low)The
font-palette
CSS property selects a color palette from the font, optionally overriding individual colors in the@font-palette-values
at-rule.- Chrome 101 Released on 2022-04-26
- Chrome Android 101 Released on 2022-04-26
- Edge 101 Released on 2022-04-28
- Firefox 107 Released on 2022-11-15
- Firefox for Android 107 Released on 2022-11-15
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
font-palette animation
Limited availabilityYou can animate color fonts between two
font-palette
values.- Chrome 121 Released on 2024-01-23
- Chrome Android 121 Released on 2024-01-23
- Edge 121 Released on 2024-01-25
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
font-size-adjust
Limited availabilityThe
font-size-adjust
CSS property preserves apparent text size, regardless of the font used, by scaling fonts to the same size with respect to a specific metric, such as x-height. This can help make fallback fonts look the same size.- Chrome ❌ Search for bugs Search for Chromestatus entry
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge ❌ Search for bugs Search for Chromestatus entry
- Firefox 3 Released on 2008-06-17
- Firefox for Android 4 Released on 2011-03-29
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
font-synthesis
Newly available since 2022-01-06 (baseline low)The
font-synthesis
CSS shorthand property disables all font synthesis except the given kinds. To disable a specific kind of font synthesis, instead use the longhand properties such asfont-synthesis-style
andfont-synthesis-weight
.- Chrome 97 Released on 2022-01-04
- Chrome Android 97 Released on 2022-01-04
- Edge 97 Released on 2022-01-06
- Firefox 34 Released on 2014-12-01
- Firefox for Android 34 Released on 2014-12-01
- Safari 9 Released on 2015-09-30
- Safari on iOS 9 Released on 2015-09-16
-
font-synthesis-position
Limited availabilityThe
font-synthesis-position
CSS property sets whether or not the browser should synthesize subscript and superscript typefaces when they're missing from the font.- Chrome ❌ Search for bugs Search for Chromestatus entry
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge ❌ Search for bugs Search for Chromestatus entry
- Firefox 118 Released on 2023-09-26
- Firefox for Android 118 Released on 2023-09-26
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
font-synthesis-small-caps
Newly available since 2023-03-27 (baseline low)The
font-synthesis-small-caps
CSS property sets whether or not the browser should synthesize small caps typefaces when they're missing from the font.- Chrome 97 Released on 2022-01-04
- Chrome Android 97 Released on 2022-01-04
- Edge 97 Released on 2022-01-06
- Firefox 111 Released on 2023-03-14
- Firefox for Android 111 Released on 2023-03-14
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
font-synthesis-style
Newly available since 2023-03-27 (baseline low)The
font-synthesis-style
CSS property sets whether or not the browser should synthesize italic and oblique typefaces when they're missing from the font.- Chrome 97 Released on 2022-01-04
- Chrome Android 97 Released on 2022-01-04
- Edge 97 Released on 2022-01-06
- Firefox 111 Released on 2023-03-14
- Firefox for Android 111 Released on 2023-03-14
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
font-synthesis-weight
Newly available since 2023-03-27 (baseline low)The
font-synthesis-weight
CSS property sets whether or not the browser should synthesize bold typefaces when they're missing from the font.- Chrome 97 Released on 2022-01-04
- Chrome Android 97 Released on 2022-01-04
- Edge 97 Released on 2022-01-06
- Firefox 111 Released on 2023-03-14
- Firefox for Android 111 Released on 2023-03-14
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
font-variant-alternates
Newly available since 2023-03-13 (baseline low)The
font-variant-alternates
CSS property, along with the@font-feature-values
at-rule, chooses when to use a font's alternate glyphs.- Chrome 111 Released on 2023-03-07
- Chrome Android 111 Released on 2023-03-07
- Edge 111 Released on 2023-03-13
- Firefox 34 Released on 2014-12-01
- Firefox for Android 34 Released on 2014-12-01
- Safari 16.2 Released on 2022-12-13
- Safari on iOS 16.2 Released on 2022-12-13
-
Form-associated custom elements
Newly available since 2023-03-27 (baseline low)Custom elements may act like built-in form elements, via the the
attachInternals()
method ofHTMLElement
and theElementInternals
API.- Chrome 77 Released on 2019-09-10
- Chrome Android 77 Released on 2019-09-10
- Edge 79 Released on 2020-01-15
- Firefox 98 Released on 2022-03-08
- Firefox for Android 98 Released on 2022-03-08
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Fullscreen API
Limited availabilityThe fullscreen API makes a specific element fill the whole screen and hides most browser UI.
- Chrome 71 Released on 2018-12-04
- Chrome Android 71 Released on 2018-12-04
- Edge 79 Released on 2020-01-15
- Firefox 64 Released on 2018-12-11
- Firefox for Android 64 Released on 2018-12-11
- Safari 16.4 Released on 2023-03-27
- Safari on iOS ❌ Search for bugs Search for standards position
-
Grid
Widely available since 2023-01-28 (baseline high)CSS Grid is a two-dimensional layout system, which lays content out in rows and columns.
- Chrome 66 Released on 2018-04-17
- Chrome Android 66 Released on 2018-04-17
- Edge 79 Released on 2020-01-15
- Firefox 76 Released on 2020-05-05
- Firefox for Android 79 Released on 2020-07-28
- Safari 12.1 Released on 2019-03-25
- Safari on iOS 12.2 Released on 2019-03-25
-
Grid animation
Newly available since 2022-10-27 (baseline low)Grid animation allows you to animate the
grid-template-columns
andgrid-template-rows
CSS properties.- Chrome 107 Released on 2022-10-25
- Chrome Android 107 Released on 2022-10-25
- Edge 107 Released on 2022-10-27
- Firefox 66 Released on 2019-03-19
- Firefox for Android 66 Released on 2019-03-19
- Safari 16 Released on 2022-09-12
- Safari on iOS 16 Released on 2022-09-12
-
:has()
Newly available since 2023-12-19 (baseline low)The
:has()
CSS functional pseudo-class matches an element if any of the selectors passed as parameters would match at least one element.- Chrome 105 Released on 2022-09-02
- Chrome Android 105 Released on 2022-09-02
- Edge 105 Released on 2022-09-01
- Firefox 121 Released on 2023-12-19
- Firefox for Android 121 Released on 2023-12-19
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
Custom highlights
Limited availabilityCustom highlights style arbitrary text ranges, without adding extra elements to the DOM.
- Chrome 105 Released on 2022-09-02
- Chrome Android 105 Released on 2022-09-02
- Edge 105 Released on 2022-09-01
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ See bugzil.la/1703961
- Safari 17.2 Released on 2023-12-11
- Safari on iOS 17.2 Released on 2023-12-11
-
HTML media capture
Limited availabilityThe
capture
HTML attribute for<input type="file">
elements allows the user to capture media using the device's camera or microphone.- Chrome ❌ Search for bugs Search for Chromestatus entry
- Chrome Android 25 Released on 2013-02-27
- Edge ❌ Search for bugs Search for Chromestatus entry
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android 79 Released on 2020-07-28
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS 10 Released on 2016-09-13
-
HTTP/1.1
Widely available since 2018-01-29 (baseline high)HTTP/1.1 is a network protocol used by browsers and servers. It has been superseded by HTTP/2 and HTTP/3.
- Chrome 1 Released on 2008-12-11
- Chrome Android 18 Released on 2012-06-27
- Edge 12 Released on 2015-07-29
- Firefox 1 Released on 2004-11-09
- Firefox for Android 4 Released on 2011-03-29
- Safari 1 Released on 2003-06-23
- Safari on iOS 1 Released on 2007-06-29
-
HTTP/2
Widely available since 2018-03-30 (baseline high)The HTTP/2 protocol is a major revision of the HTTP network protocol, providing improved performance and efficiency by using a single TCP connection to send multiple streams of data at once.
- Chrome 41 Released on 2015-03-03
- Chrome Android 41 Released on 2015-03-11
- Edge 12 Released on 2015-07-29
- Firefox 36 Released on 2015-02-24
- Firefox for Android 36 Released on 2015-02-27
- Safari 9 Released on 2015-09-30
- Safari on iOS 9 Released on 2015-09-16
-
HTTP/3
Limited availabilityHTTP/3 is a major revision of the HTTP network protocol, providing improved performance and efficiency by using QUIC as the underlying transport protocol.
- Chrome 87 Released on 2020-11-17
- Chrome Android 87 Released on 2020-11-17
- Edge 87 Released on 2020-11-19
- Firefox 88 Released on 2021-04-19
- Firefox for Android 88 Released on 2021-04-19
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Hyphenation
Newly available since 2023-09-18 (baseline low)The
hyphens
CSS property controls when long words are broken by line wrapping. Although calledhyphens
, the property applies to word-splitting behavior across languages, such as customary spelling changes or the use of other characters to mark an intraword line break.- Chrome 55 Released on 2016-12-01
- Chrome Android 55 Released on 2016-12-06
- Edge 79 Released on 2020-01-15
- Firefox 43 Released on 2015-12-15
- Firefox for Android 43 Released on 2015-12-15
- Safari 17 Released on 2023-09-18
- Safari on iOS 17 Released on 2023-09-18
-
ic unit
Newly available since 2022-10-03 (baseline low)The CSS
ic
unit corresponds to the width of CJK ideographic characters.- Chrome 106 Released on 2022-09-27
- Chrome Android 106 Released on 2022-09-27
- Edge 106 Released on 2022-10-03
- Firefox 97 Released on 2022-02-08
- Firefox for Android 97 Released on 2022-02-08
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
Idle detection
Limited availabilityThe
IdleDetector
API is used to notify a webpage of the user's idle, active, and locked state.- Chrome 94 Released on 2021-09-21
- Chrome Android 94 Released on 2021-09-21
- Edge 114 Released on 2023-06-02
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
image-set()
Newly available since 2023-09-18 (baseline low)The
image-set()
CSS function provides a set of images at different resolutions or pixel densities, which the browser can pick from, depending on the device capabilities.- Chrome 113 Released on 2023-05-02
- Chrome Android 113 Released on 2023-05-02
- Edge 113 Released on 2023-05-05
- Firefox 89 Released on 2021-06-01
- Firefox for Android 89 Released on 2021-06-01
- Safari 17 Released on 2023-09-18
- Safari on iOS 17 Released on 2023-09-18
-
Import maps
Newly available since 2023-03-27 (baseline low)A
<script type="importmap">
HTML element provides an import map as a JSON string. An import map controls how the browser should resolve module specifiers when importing JavaScript modules.- Chrome 89 Released on 2021-03-02
- Chrome Android 89 Released on 2021-03-02
- Edge 89 Released on 2021-03-04
- Firefox 108 Released on 2022-12-13
- Firefox for Android 108 Released on 2022-12-13
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
:indeterminate
Widely available since 2022-07-15 (baseline high)The
:indeterminate
CSS pseudo-class selects any form element whose state is indeterminate, such as checkboxes that have been set to an indeterminate state with JavaScript, or radio buttons which are members of a group in which all radio buttons are unchecked.- Chrome 39 Released on 2014-11-18
- Chrome Android 39 Released on 2014-11-12
- Edge 79 Released on 2020-01-15
- Firefox 51 Released on 2017-01-24
- Firefox for Android 51 Released on 2017-01-24
- Safari 10 Released on 2016-09-20
- Safari on iOS 10 Released on 2016-09-13
-
Individual transform properties
Newly available since 2022-08-05 (baseline low)Transform elements with separate
translate
,rotate
, andscale
CSS properties.- Chrome 104 Released on 2022-08-02
- Chrome Android 104 Released on 2022-08-02
- Edge 104 Released on 2022-08-05
- Firefox 72 Released on 2020-01-07
- Firefox for Android 79 Released on 2020-07-28
- Safari 14.1 Released on 2021-04-26
- Safari on iOS 14.5 Released on 2021-04-26
-
Inert elements
Newly available since 2023-04-11 (baseline low)The
inert
HTML attribute marks an element and its descendants as non-interactive. Inert elements don't get focus or fireclick
events.- Chrome 102 Released on 2022-05-24
- Chrome Android 102 Released on 2022-05-24
- Edge 102 Released on 2022-05-31
- Firefox 112 Released on 2023-04-11
- Firefox for Android 112 Released on 2023-04-11
- Safari 15.5 Released on 2022-05-16
- Safari on iOS 15.5 Released on 2022-05-16
-
input event
Newly available since 2023-03-27 (baseline low)The
input
event fires when a form control changes or an element with thecontenteditable
attribute changes.- Chrome 60 Released on 2017-07-25
- Chrome Android 60 Released on 2017-08-01
- Edge 79 Released on 2020-01-15
- Firefox 87 Released on 2021-03-23
- Firefox for Android 87 Released on 2021-03-23
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Intersection observer
Widely available since 2021-09-25 (baseline high)The Intersection Observer API asynchronously observes changes in the intersection of a target element with an ancestor element or with a top-level document's viewport.
- Chrome 58 Released on 2017-04-19
- Chrome Android 58 Released on 2017-04-25
- Edge 16 Released on 2017-10-17
- Firefox 55 Released on 2017-08-08
- Firefox for Android 55 Released on 2017-08-08
- Safari 12.1 Released on 2019-03-25
- Safari on iOS 12.2 Released on 2019-03-25
-
Intersection observer visibility tracking
Limited availabilityThe
trackVisibility
parameter for theIntersectionObserver
constructor enables tracking the visibility of an element, to detect if it may be obscured by other content or visual effects. Also known as IntersectionObserver v2.- Chrome 74 Released on 2019-04-23
- Chrome Android 74 Released on 2019-04-24
- Edge 79 Released on 2020-01-15
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
:is()
Widely available since 2023-07-21 (baseline high)The
:is()
CSS functional pseudo-class takes a selector list as its argument, and matches any element that can be selected by one of the selectors in that list.- Chrome 88 Released on 2021-01-19
- Chrome Android 88 Released on 2021-01-19
- Edge 88 Released on 2021-01-21
- Firefox 82 Released on 2020-10-20
- Firefox for Android 82 Released on 2020-10-20
- Safari 14 Released on 2020-09-16
- Safari on iOS 14 Released on 2020-09-16
-
JPEG XL
Limited availabilityThe JPEG XL image format is a raster graphics file format that supports animation, alpha transparency, and lossy as well as lossless compression.
- Chrome ❌ Search for bugs Search for Chromestatus entry
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge ❌ Search for bugs Search for Chromestatus entry
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari 17 Released on 2023-09-18
- Safari on iOS 17 Released on 2023-09-18
-
JavaScript modules
Widely available since 2020-11-09 (baseline high)JavaScript modules allow code to be organized into reusable units. Modules use
import
to load other modules andexport
to declare what is available to import from other modules. In HTML, modules are loaded with<script type="module">
.- Chrome 61 Released on 2017-09-05
- Chrome Android 61 Released on 2017-09-05
- Edge 16 Released on 2017-10-17
- Firefox 60 Released on 2018-05-09
- Firefox for Android 60 Released on 2018-05-09
- Safari 11 Released on 2017-09-19
- Safari on iOS 11 Released on 2017-09-19
-
JavaScript modules in service workers
Limited availabilityThe
navigator.serviceWorker.register()
method accepts{ type: "module" }
to load scripts that useimport
andexport
. Also known as ECMAScript modules or ESM in service workers.- Chrome 91 Released on 2021-05-25
- Chrome Android 91 Released on 2021-05-25
- Edge 91 Released on 2021-05-27
- Firefox ❌ See bugzil.la/1360870
- Firefox for Android ❌ See bugzil.la/1360870
- Safari 15 Released on 2021-09-20
- Safari on iOS 15 Released on 2021-09-20
-
JavaScript modules in workers
Newly available since 2023-06-06 (baseline low)The
Worker()
constructor accepts{ type: "module" }
to load scripts that useimport
andexport
. Also known as ECMAScript modules or ESM in workers.- Chrome 80 Released on 2020-02-04
- Chrome Android 80 Released on 2020-02-04
- Edge 80 Released on 2020-02-07
- Firefox 114 Released on 2023-06-06
- Firefox for Android 114 Released on 2023-06-06
- Safari 15 Released on 2021-09-20
- Safari on iOS 15 Released on 2021-09-20
-
JSON import attributes
Limited availabilityModule
import ... with { type: "json" }
statements load JSON data. Also known as JSON module scripts and formerly known as import assertions.- Chrome 123 Released on 2024-03-19
- Chrome Android 123 Released on 2024-03-19
- Edge 123 Released on 2024-03-22
- Firefox ❌ See bugzil.la/1736059
- Firefox for Android ❌ See bugzil.la/1736059
- Safari 17.2 Released on 2023-12-11
- Safari on iOS 17.2 Released on 2023-12-11
-
Lab and LCH
Newly available since 2023-05-09 (baseline low)The CIE Lab color space expresses colors in terms of lightness and how red/green and blue/yellow a color is. LCH is a variant of Lab with polar coordinates. These color spaces can be used with the CSS
color()
,lab()
, andlch()
functions. Also known as CIELAB and CIELCH.- Chrome 111 Released on 2023-03-07
- Chrome Android 111 Released on 2023-03-07
- Edge 111 Released on 2023-03-13
- Firefox 113 Released on 2023-05-09
- Firefox for Android 113 Released on 2023-05-09
- Safari 15 Released on 2021-09-20
- Safari on iOS 15 Released on 2021-09-20
-
lh unit
Newly available since 2023-11-21 (baseline low)The CSS
lh
unit corresponds to the requested line height, the computed value of theline-height
property. Some lines may be higher than this based on their content.- Chrome 109 Released on 2023-01-10
- Chrome Android 109 Released on 2023-01-10
- Edge 109 Released on 2023-01-12
- Firefox 120 Released on 2023-11-21
- Firefox for Android 120 Released on 2023-11-21
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
light-dark()
Newly available since 2024-05-13 (baseline low)The
light-dark()
CSS function accepts two colors and uses one depending on the current color scheme.- Chrome 123 Released on 2024-03-19
- Chrome Android 123 Released on 2024-03-19
- Edge 123 Released on 2024-03-22
- Firefox 120 Released on 2023-11-21
- Firefox for Android 120 Released on 2023-11-21
- Safari 17.5 Released on 2024-05-13
- Safari on iOS 17.5 Released on 2024-05-13
-
line-clamp
Limited availabilityThe
line-clamp
CSS property limits the text in a block container to a certain number of lines. The prefixed-webkit-line-clamp
is widely supported but only works with-webkit-box-orient: vertical
in combination withdisplay: -webkit-box
ordisplay: -webkit-inline-box
.- Chrome ❌ Search for bugs Search for Chromestatus entry
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge ❌ Search for bugs Search for Chromestatus entry
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
linear() easing
Newly available since 2023-12-11 (baseline low)The
linear()
easing function for animations and transitions interpolates linearly between the control points, and can be used to approximate complex easing functions, such as a bounce effect.- Chrome 113 Released on 2023-05-02
- Chrome Android 113 Released on 2023-05-02
- Edge 113 Released on 2023-05-05
- Firefox 112 Released on 2023-04-11
- Firefox for Android 112 Released on 2023-04-11
- Safari 17.2 Released on 2023-12-11
- Safari on iOS 17.2 Released on 2023-12-11
-
Lazy-loading images and iframes
Newly available since 2023-12-19 (baseline low)The
loading="lazy"
attribute for<img>
and<iframe>
elements blocks loading the external resource until the user scrolls to that element's part of the page.- Chrome 77 Released on 2019-09-10
- Chrome Android 77 Released on 2019-09-10
- Edge 79 Released on 2020-01-15
- Firefox 121 Released on 2023-12-19
- Firefox for Android 121 Released on 2023-12-19
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Managed media source
Limited availabilityThe
ManagedMediaSource
API is aMediaSource
where the browser manages the memory of source buffers and may evict data if needed.- Chrome ❌ Search for bugs Search for Chromestatus entry
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge ❌ Search for bugs Search for Chromestatus entry
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari 17 Released on 2023-09-18
- Safari on iOS 17.1 Released on 2023-10-25
-
Map (initial support)
Widely available since 2018-01-29 (baseline high)Map objects hold key-value pairs and remember the original insertion order of the keys.
- Chrome 38 Released on 2014-10-07
- Chrome Android 38 Released on 2014-10-08
- Edge 12 Released on 2015-07-29
- Firefox 13 Released on 2012-06-05
- Firefox for Android 14 Released on 2012-06-26
- Safari 8 Released on 2014-10-16
- Safari on iOS 8 Released on 2014-09-17
-
margin-trim
Limited availabilityThe
margin-trim
CSS property removes the margins of child elements when they meet the edges of the container.- Chrome ❌ See crbug.com/40886857
- Chrome Android ❌ See crbug.com/40886857
- Edge ❌ See crbug.com/40886857
- Firefox ❌ See bugzil.la/1506241
- Firefox for Android ❌ See bugzil.la/1506241
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Masks
Newly available since 2023-12-07 (baseline low)The
mask
CSS property (and several longhand properties) partially or completely hides an element according to the shape and depth of an image.- Chrome 120 Released on 2023-12-05
- Chrome Android 120 Released on 2023-12-05
- Edge 120 Released on 2023-12-07
- Firefox 53 Released on 2017-04-19
- Firefox for Android 53 Released on 2017-04-19
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
Masonry
Limited availabilityMasonry is a type of CSS grid layout where the items on one of the axes are tightly packed together, like brickwork, instead of leaving gaps to align across the other axis.
- Chrome ❌ See crbug.com/40128480
- Chrome Android ❌ See crbug.com/40128480
- Edge ❌ See crbug.com/40128480
- Firefox ❌ See bugzil.la/1757446
- Firefox for Android ❌ See bugzil.la/1757446
- Safari ❌ See webkit.org/b/248287
- Safari on iOS ❌ See webkit.org/b/248287
-
MathML
Newly available since 2023-01-12 (baseline low)MathML, or the Mathematical Markup Language, describes mathematical notation, such as expressions and formulas. Also known as MathML Core.
- Chrome 109 Released on 2023-01-10
- Chrome Android 109 Released on 2023-01-10
- Edge 109 Released on 2023-01-12
- Firefox 4 Released on 2011-03-22
- Firefox for Android 4 Released on 2011-03-29
- Safari 10 Released on 2016-09-20
- Safari on iOS 10 Released on 2016-09-13
-
Media capture
Widely available since 2020-03-19 (baseline high)The
navigator.mediaDevices.getUserMedia()
API requests access to devices that produce audio or video streams, such as microphones or video cameras.- Chrome 53 Released on 2016-08-31
- Chrome Android 53 Released on 2016-09-07
- Edge 12 Released on 2015-07-29
- Firefox 36 Released on 2015-02-24
- Firefox for Android 36 Released on 2015-02-27
- Safari 11 Released on 2017-09-19
- Safari on iOS 11 Released on 2017-09-19
-
Media element pseudo-classes
Limited availabilityThe
:playing
,:paused
,:seeking
,:buffering
,:stalled
,:muted
, and:volume-locked
CSS pseudo-classes match<audio>
and<video>
elements based on their state.- Chrome ❌ See crbug.com/40748199
- Chrome Android ❌ See crbug.com/40748199
- Edge ❌ See crbug.com/40748199
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
Media query range syntax
Newly available since 2023-03-27 (baseline low)The range syntax of CSS media queries allows you to use mathematical comparison operators such as
<
,>
,<=
, and>=
to define a range of values for a media feature. For example,(400px < width < 1000px)
returns true if the viewport width is between 400px and 1000px.- Chrome 104 Released on 2022-08-02
- Chrome Android 104 Released on 2022-08-02
- Edge 104 Released on 2022-08-05
- Firefox 102 Released on 2022-06-28
- Firefox for Android 102 Released on 2022-06-28
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Media session
Limited availabilityThe
navigator.mediaSession
API integrates with platform UI for media playback. It can be used to set metadata such as title and artwork, and to handle user actions like playing, pausing, or seeking.- Chrome 73 Released on 2019-03-12
- Chrome Android 57 Released on 2017-03-16
- Edge 79 Released on 2020-01-15
- Firefox 82 Released on 2020-10-20
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari 15 Released on 2021-09-20
- Safari on iOS 15 Released on 2021-09-20
-
Media source
Limited availabilityThe
MediaSource
API is a custom data source for media elements commonly used for adaptive streaming. Also known as Media Source Extensions (MSE).- Chrome 31 Released on 2013-11-12
- Chrome Android 31 Released on 2013-11-14
- Edge 12 Released on 2015-07-29
- Firefox 42 Released on 2015-11-03
- Firefox for Android 42 Released on 2015-11-03
- Safari 8 Released on 2014-10-16
- Safari on iOS ❌ Search for bugs Search for standards position
-
messageerror
Newly available since 2023-03-27 (baseline low)The
messageerror
event fires on a target, such as a window or worker, when an incoming message cannot be deserialized. This event can fire for many types of messages, such as cross-document messages or broadcast channel messages.- Chrome 80 Released on 2020-02-04
- Chrome Android 80 Released on 2020-02-04
- Edge 80 Released on 2020-02-07
- Firefox 65 Released on 2019-01-29
- Firefox for Android 65 Released on 2019-01-29
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
min(), max(), and clamp()
Widely available since 2023-01-28 (baseline high)The
min()
andmax()
CSS functions return the minimum or maximum of the arguments, whileclamp()
clamps a value to a given range.- Chrome 79 Released on 2019-12-10
- Chrome Android 79 Released on 2019-12-17
- Edge 79 Released on 2020-01-15
- Firefox 75 Released on 2020-04-07
- Firefox for Android 79 Released on 2020-07-28
- Safari 13.1 Released on 2020-03-24
- Safari on iOS 13.4 Released on 2020-03-24
-
:modal
Newly available since 2022-09-02 (baseline low)The
:modal
pseudo-class selects elements that put other elements into a non-interactive state, such as a fullscreen element or a<dialog>
element used withshowModal()
.- Chrome 105 Released on 2022-09-02
- Chrome Android 105 Released on 2022-09-02
- Edge 105 Released on 2022-09-01
- Firefox 103 Released on 2022-07-26
- Firefox for Android 103 Released on 2022-07-26
- Safari 15.6 Released on 2022-07-20
- Safari on iOS 15.6 Released on 2022-07-20
-
<link rel="modulepreload">
Newly available since 2023-09-18 (baseline low)The
rel="modulepreload"
attribute for the<link>
HTML element indicates that a module script should be fetched, parsed, and compiled preemptively, and stored for later execution.- Chrome 66 Released on 2018-04-17
- Chrome Android 66 Released on 2018-04-17
- Edge 79 Released on 2020-01-15
- Firefox 115 Released on 2023-07-04
- Firefox for Android 115 Released on 2023-07-04
- Safari 17 Released on 2023-09-18
- Safari on iOS 17 Released on 2023-09-18
-
Motion path
Newly available since 2023-08-21 (baseline low)The
offset
CSS property animates an element along a defined motion path.- Chrome 116 Released on 2023-08-15
- Chrome Android 116 Released on 2023-08-15
- Edge 116 Released on 2023-08-21
- Firefox 72 Released on 2020-01-07
- Firefox for Android 79 Released on 2020-07-28
- Safari 16 Released on 2022-09-12
- Safari on iOS 16 Released on 2022-09-12
-
Nesting
Newly available since 2023-12-11 (baseline low)CSS nesting allows for shorter selectors, easier reading, and more modularity by nesting rules inside others.
- Chrome 120 Released on 2023-12-05
- Chrome Android 120 Released on 2023-12-05
- Edge 120 Released on 2023-12-07
- Firefox 117 Released on 2023-08-29
- Firefox for Android 117 Released on 2023-08-29
- Safari 17.2 Released on 2023-12-11
- Safari on iOS 17.2 Released on 2023-12-11
-
Notifications
Limited availabilityThe notifications API sends system notifications to the user, often even when the page or browser is not the foreground application.
- Chrome 20 Released on 2012-06-26
- Chrome Android 42 Released on 2015-04-15
- Edge 14 Released on 2016-08-02
- Firefox 22 Released on 2013-06-25
- Firefox for Android 22 Released on 2013-06-25
- Safari 6 Released on 2012-07-25
- Safari on iOS ❌ Search for bugs Search for standards position
-
:nth-child() (initial support)
Widely available since 2018-01-29 (baseline high)The
:nth-child()
and:nth-last-child()
CSS functional pseudo-classes match elements by the relative position of elements (first, second, third, fourth, and so on), counted from the first or last sibling.- Chrome 4 Released on 2010-01-25
- Chrome Android 18 Released on 2012-06-27
- Edge 12 Released on 2015-07-29
- Firefox 3.5 Released on 2009-06-30
- Firefox for Android 4 Released on 2011-03-29
- Safari 3.1 Released on 2008-03-18
- Safari on iOS 2 Released on 2008-07-11
-
:nth-child() of <selector>
Newly available since 2023-05-09 (baseline low)The
of
syntax for the:nth-child()
and:nth-last-child()
CSS functional pseudo-classes match elements by the relative position of elements, counted from the first or last sibling matching a selector list.- Chrome 111 Released on 2023-03-07
- Chrome Android 111 Released on 2023-03-07
- Edge 111 Released on 2023-03-13
- Firefox 113 Released on 2023-05-09
- Firefox for Android 113 Released on 2023-05-09
- Safari 9 Released on 2015-09-30
- Safari on iOS 9 Released on 2015-09-16
-
object-view-box
Limited availabilityThe
object-view-box
CSS property crops and zooms to an inset area of an image.- Chrome 104 Released on 2022-08-02
- Chrome Android 104 Released on 2022-08-02
- Edge 104 Released on 2022-08-05
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Offscreen canvas
Newly available since 2023-03-27 (baseline low)The
OffscreenCanvas
API provides a canvas that can be drawn to off screen, with no dependencies on the DOM, which can be used to run heavy rendering operations inside a worker context.- Chrome 80 Released on 2020-02-04
- Chrome Android 80 Released on 2020-02-04
- Edge 80 Released on 2020-02-07
- Firefox 105 Released on 2022-09-20
- Firefox for Android 105 Released on 2022-09-20
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Oklab and Oklch
Newly available since 2023-05-09 (baseline low)The Oklab color space expresses colors in terms of lightness and how red/green and blue/yellow a color is, aiming to match how humans perceive colors. Oklch is a variant of Oklab with polar coordinates. These color spaces can be used with the CSS
color()
,oklab()
, andoklch()
functions.- Chrome 111 Released on 2023-03-07
- Chrome Android 111 Released on 2023-03-07
- Edge 111 Released on 2023-03-13
- Firefox 113 Released on 2023-05-09
- Firefox for Android 113 Released on 2023-05-09
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
Origin private file system
Newly available since 2023-03-14 (baseline low)The
navigator.storage.getDirectory()
method returns aFileSystemDirectoryHandle
that is restricted to a specific origin and invisible to the user's actual file system for faster file-based applications, such as SQLite databases.- Chrome 102 Released on 2022-05-24
- Chrome Android 109 Released on 2023-01-10
- Edge 102 Released on 2022-05-31
- Firefox 111 Released on 2023-03-14
- Firefox for Android 111 Released on 2023-03-14
- Safari 15.2 Released on 2021-12-13
- Safari on iOS 15.2 Released on 2021-12-13
-
overflow
Newly available since 2022-09-12 (baseline low)The
overflow
CSS property sets the behavior for when content doesn't fit in an element.- Chrome 90 Released on 2021-04-13
- Chrome Android 90 Released on 2021-04-13
- Edge 90 Released on 2021-04-15
- Firefox 81 Released on 2020-09-22
- Firefox for Android 81 Released on 2020-09-22
- Safari 16 Released on 2022-09-12
- Safari on iOS 16 Released on 2022-09-12
-
overlay
Limited availabilityThe
overlay
CSS property, used as anallow-discrete
CSS transition, prevents a top layer element, such as a popover or a<dialog>
, from being removed from the top layer before it has finished animating. You can't set the value of theoverlay
property; only use it as transition property.- Chrome 117 Released on 2023-09-12
- Chrome Android 117 Released on 2023-09-12
- Edge 117 Released on 2023-09-15
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Page breaks
Limited availabilityThe
break-after
,break-before
,break-inside
CSS properties (along withpage-break-
aliases) control where printed pages start and end. Also known as pagination or page breaking.- Chrome 50 Released on 2016-04-13
- Chrome Android 50 Released on 2016-04-13
- Edge 12 Released on 2015-07-29
- Firefox ❌ See bugzil.la/775617
- Firefox for Android ❌ See bugzil.la/775617
- Safari ❌ See webkit.org/b/34155
- Safari on iOS ❌ See webkit.org/b/34155
-
paint()
Limited availabilityThe
paint()
CSS function creates a custom image, drawn using a paint worklet, for an element's background or border.- Chrome 65 Released on 2018-03-06
- Chrome Android 65 Released on 2018-03-06
- Edge 79 Released on 2020-01-15
- Firefox ❌ See bugzil.la/1302328
- Firefox for Android ❌ See bugzil.la/1302328
- Safari ❌ See webkit.org/b/190217
- Safari on iOS ❌ See webkit.org/b/190217
-
Unsanitized HTML parsing methods
Limited availabilityThe
Document.parseHTMLUnsafe()
static method parses HTML into a DOM tree, while thesetHTMLUnsafe()
method ofElement
andShadowRoot
parses and inserts HTML into an existing tree. No sanitization applies to these methods, so never call them with user-provided HTML strings.- Chrome 124 Released on 2024-04-16
- Chrome Android 124 Released on 2024-04-16
- Edge 124 Released on 2024-04-18
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari 17.4 Released on 2024-03-05
- Safari on iOS 17.4 Released on 2024-03-05
-
Permissions
Newly available since 2022-09-12 (baseline low)The
navigator.permissions
API checks whether a permission, such as access to geolocation data, has been granted.- Chrome 44 Released on 2015-07-21
- Chrome Android 44 Released on 2015-07-29
- Edge 79 Released on 2020-01-15
- Firefox 46 Released on 2016-04-26
- Firefox for Android 46 Released on 2016-04-26
- Safari 16 Released on 2022-09-12
- Safari on iOS 16 Released on 2022-09-12
-
Picture-in-picture (video)
Limited availabilityThe picture-in-picture API allow websites to create a floating, always-on-top video window. Also known as PiP or pop-out video.
- Chrome 69 Released on 2018-09-04
- Chrome Android 105 Released on 2022-09-02
- Edge 79 Released on 2020-01-15
- Firefox ❌ See bugzil.la/1463402
- Firefox for Android ❌ See bugzil.la/1463402
- Safari 13.1 Released on 2020-03-24
- Safari on iOS 13.4 Released on 2020-03-24
-
Pointer lock
Limited availabilityProvides access to raw mouse movement by locking the target of mouse events to a single element and hiding the mouse cursor.
- Chrome 37 Released on 2014-08-26
- Chrome Android 37 Released on 2014-09-03
- Edge 13 Released on 2015-11-12
- Firefox 50 Released on 2016-11-15
- Firefox for Android 50 Released on 2016-11-15
- Safari 10.1 Released on 2017-03-27
- Safari on iOS ❌ Search for bugs Search for standards position
-
Popover
Newly available since 2024-04-16 (baseline low)The
popover
HTML attribute creates an overlay to display content on top of other page content. Popovers can be shown declaratively using HTML, or using theshowPopover()
method.- Chrome 114 Released on 2023-05-30
- Chrome Android 114 Released on 2023-05-30
- Edge 114 Released on 2023-06-02
- Firefox 125 Released on 2024-04-16
- Firefox for Android 125 Released on 2024-04-16
- Safari 17 Released on 2023-09-18
- Safari on iOS 17 Released on 2023-09-18
-
prefers-color-scheme
Widely available since 2022-07-15 (baseline high)The
prefers-color-scheme
CSS media query detects the requested color scheme, light or dark.- Chrome 76 Released on 2019-07-30
- Chrome Android 76 Released on 2019-07-30
- Edge 79 Released on 2020-01-15
- Firefox 67 Released on 2019-05-21
- Firefox for Android 67 Released on 2019-05-21
- Safari 12.1 Released on 2019-03-25
- Safari on iOS 13 Released on 2019-09-19
-
Preloading responsive images
Newly available since 2023-12-11 (baseline low)The
imagesrcset
andimagesizes
attributes with therel="preload"
attribute for the<link>
HTML element starts fetching responsive images before they're found in the body of the document.- Chrome 73 Released on 2019-03-12
- Chrome Android 73 Released on 2019-03-12
- Edge 79 Released on 2020-01-15
- Firefox 78 Released on 2020-06-30
- Firefox for Android 79 Released on 2020-07-28
- Safari 17.2 Released on 2023-12-11
- Safari on iOS 17.2 Released on 2023-12-11
-
preservesPitch
Newly available since 2023-12-11 (baseline low)The
preservesPitch
property for<audio>
or<video>
adjusts the pitch of audio to sound more natural when the playback rate is faster or slower than the default.- Chrome 86 Released on 2020-10-20
- Chrome Android 86 Released on 2020-10-20
- Edge 86 Released on 2020-10-09
- Firefox 101 Released on 2022-05-31
- Firefox for Android 101 Released on 2022-05-31
- Safari 17.2 Released on 2023-12-11
- Safari on iOS 17.2 Released on 2023-12-11
-
window.print()
Newly available since 2023-06-06 (baseline low)The
window.print()
method opens the browser's print dialog.- Chrome 1 Released on 2008-12-11
- Chrome Android 18 Released on 2012-06-27
- Edge 12 Released on 2015-07-29
- Firefox 1 Released on 2004-11-09
- Firefox for Android 114 Released on 2023-06-06
- Safari 1.1 Released on 2003-10-24
- Safari on iOS 1 Released on 2007-06-29
-
Print events
Widely available since 2022-03-19 (baseline high)An alternative to
@media print
queries, thebeforeprint
andafterprint
events allow you to change the page for printing and and restore the page after printing.- Chrome 63 Released on 2017-12-06
- Chrome Android 63 Released on 2017-12-05
- Edge 12 Released on 2015-07-29
- Firefox 6 Released on 2011-08-16
- Firefox for Android 6 Released on 2011-08-16
- Safari 13 Released on 2019-09-19
- Safari on iOS 13 Released on 2019-09-19
-
Promise (initial support)
Widely available since 2018-01-29 (baseline high)A promise represents an asynchronous operation which eventually succeeds or fails.
- Chrome 32 Released on 2014-01-14
- Chrome Android 32 Released on 2014-01-15
- Edge 12 Released on 2015-07-29
- Firefox 29 Released on 2014-04-29
- Firefox for Android 29 Released on 2014-04-29
- Safari 8 Released on 2014-10-16
- Safari on iOS 8 Released on 2014-09-17
-
Promise.allSettled()
Widely available since 2023-01-28 (baseline high)The
Promise.allSettled()
static method waits for an array of promises to settle (resolve or reject).- Chrome 76 Released on 2019-07-30
- Chrome Android 76 Released on 2019-07-30
- Edge 79 Released on 2020-01-15
- Firefox 71 Released on 2019-12-10
- Firefox for Android 79 Released on 2020-07-28
- Safari 13 Released on 2019-09-19
- Safari on iOS 13 Released on 2019-09-19
-
Promise.any()
Widely available since 2023-03-16 (baseline high)The
Promise.any()
static method returns a promise that fulfills as soon as the first of an iterable of promises fulfills, with that promise's value. Otherwise, it rejects with anAggregateError
when all of the promises have rejected.- Chrome 85 Released on 2020-08-25
- Chrome Android 85 Released on 2020-08-25
- Edge 85 Released on 2020-08-27
- Firefox 79 Released on 2020-07-28
- Firefox for Android 79 Released on 2020-07-28
- Safari 14 Released on 2020-09-16
- Safari on iOS 14 Released on 2020-09-16
-
Promise finally()
Widely available since 2021-04-02 (baseline high)The promise
finally()
method executes a function when the promise settles (resolves or rejects).- Chrome 63 Released on 2017-12-06
- Chrome Android 63 Released on 2017-12-05
- Edge 18 Released on 2018-10-02
- Firefox 58 Released on 2018-01-23
- Firefox for Android 58 Released on 2018-01-22
- Safari 11.1 Released on 2018-04-12
- Safari on iOS 11.3 Released on 2018-03-29
-
Promise.withResolvers()
Newly available since 2024-03-05 (baseline low)The
Promise.withResolvers()
static method is an alternative to thePromise()
constructor that returns both the promise and resolution functions. You can use this to accessresolve
andreject
outside the scope of the executor function.- Chrome 119 Released on 2023-10-31
- Chrome Android 119 Released on 2023-10-31
- Edge 119 Released on 2023-11-02
- Firefox 121 Released on 2023-12-19
- Firefox for Android 121 Released on 2023-12-19
- Safari 17.4 Released on 2024-03-05
- Safari on iOS 17.4 Released on 2024-03-05
-
Push messages
Newly available since 2023-03-27 (baseline low)The Push API subscribes to and receives server-initiated messages. Subscribers receive pushed messages in the background, even after periods inactive or offline.
- Chrome 50 Released on 2016-04-13
- Chrome Android 50 Released on 2016-04-13
- Edge 17 Released on 2018-04-30
- Firefox 44 Released on 2016-01-26
- Firefox for Android 48 Released on 2016-08-02
- Safari 16 Released on 2022-09-12
- Safari on iOS 16.4 Released on 2023-03-27
-
:read-only and :read-write
Widely available since 2023-01-28 (baseline high)The
:read-only
and:read-write
CSS pseudo-classes match elements that are read-only or read-write, respectively. For example,:read-only
matches<input>
and<textarea>
elements with thereadonly
attribute.- Chrome 1 Released on 2008-12-11
- Chrome Android 18 Released on 2012-06-27
- Edge 13 Released on 2015-11-12
- Firefox 78 Released on 2020-06-30
- Firefox for Android 79 Released on 2020-07-28
- Safari 4 Released on 2009-06-08
- Safari on iOS 3.2 Released on 2010-04-03
-
Registered custom properties
Limited availabilityThe
CSS.registerProperty()
static method and the@property
CSS at-rule register custom properties for which types and behaviors can be defined.- Chrome 85 Released on 2020-08-25
- Chrome Android 85 Released on 2020-08-25
- Edge 85 Released on 2020-08-27
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Relative colors
Limited availabilityThe
from
keyword for color functions (color()
,hsl()
,oklch()
, etc.) creates a new color based on a given color by modifying the values of the input color. Also known as relative color syntax (RCS).- Chrome 119 Released on 2023-10-31
- Chrome Android 119 Released on 2023-10-31
- Edge 119 Released on 2023-11-02
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
requestAnimationFrame()
Widely available since 2018-01-29 (baseline high)The
requestAnimationFrame()
method schedules a function that runs before the next repaint. You can use it to animate content with JavaScript.- Chrome 24 Released on 2013-01-10
- Chrome Android 25 Released on 2013-02-27
- Edge 12 Released on 2015-07-29
- Firefox 23 Released on 2013-08-06
- Firefox for Android 23 Released on 2013-08-06
- Safari 7 Released on 2013-10-22
- Safari on iOS 7 Released on 2013-09-18
-
requestAnimationFrame() in workers
Newly available since 2023-03-27 (baseline low)The
requestAnimationFrame()
method in workers schedules a function that runs before the next repaint. Together with offscreen canvas, you can animate content from a worker.- Chrome 69 Released on 2018-09-04
- Chrome Android 69 Released on 2018-09-04
- Edge 79 Released on 2020-01-15
- Firefox 99 Released on 2022-04-05
- Firefox for Android 99 Released on 2022-04-05
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
requestVideoFrameCallback()
Limited availabilityThe
requestVideoFrameCallback()
method for<video>
schedules a function that runs with the next video frame. It is similar torequestAnimationFrame()
, but for video.- Chrome 83 Released on 2020-05-19
- Chrome Android 83 Released on 2020-05-19
- Edge 83 Released on 2020-05-21
- Firefox ❌ See bugzil.la/1800882
- Firefox for Android ❌ See bugzil.la/1800882
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
Resizable ArrayBuffer
Limited availabilityThe
resize()
method of anArrayBuffer
, constructed with themaxByteLength
option, changes the size of the buffer in place.- Chrome 111 Released on 2023-03-07
- Chrome Android 111 Released on 2023-03-07
- Edge 111 Released on 2023-03-13
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Resource size
Newly available since 2023-03-27 (baseline low)The
decodedSize
,encodedSize
, andtransferSize
properties of thePerformanceResourceTiming
API reports the size of resources loaded.- Chrome 54 Released on 2016-10-12
- Chrome Android 54 Released on 2016-10-19
- Edge 17 Released on 2018-04-30
- Firefox 45 Released on 2016-03-08
- Firefox for Android 45 Released on 2016-03-08
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Resource timing (initial support)
Widely available since 2020-03-19 (baseline high)PerformanceResourceTiming
entries report when network events happen while loading a resource, such as when connections start and end. You can use this information to measure loading times.- Chrome 43 Released on 2015-05-19
- Chrome Android 43 Released on 2015-05-27
- Edge 12 Released on 2015-07-29
- Firefox 35 Released on 2015-01-13
- Firefox for Android 35 Released on 2015-01-13
- Safari 11 Released on 2017-09-19
- Safari on iOS 11 Released on 2017-09-19
-
round(), mod(), and rem()
Newly available since 2024-05-17 (baseline low)The
round()
,mod()
, andrem()
CSS functions compute rounded values and the remainder after division.- Chrome 125 Released on 2024-05-14
- Chrome Android 125 Released on 2024-05-14
- Edge 125 Released on 2024-05-17
- Firefox 118 Released on 2023-09-26
- Firefox for Android 118 Released on 2023-09-26
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
Scheduler API
Limited availabilityThe
scheduler
API provides a way to prioritize all tasks belonging to an application.- Chrome 94 Released on 2021-09-21
- Chrome Android 94 Released on 2021-09-21
- Edge 94 Released on 2021-09-24
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
@scope
Limited availabilityThe
@scope
CSS at-rule sets the scope for a group of rules.- Chrome 118 Released on 2023-10-10
- Chrome Android 118 Released on 2023-10-10
- Edge 118 Released on 2023-10-13
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari 17.4 Released on 2024-03-05
- Safari on iOS 17.4 Released on 2024-03-05
-
Screen orientation
Newly available since 2023-03-27 (baseline low)The
screen.orientation
API gets information about the orientation of the viewport, such as landscape or portrait. With this API, you can adapt an application's layout or behavior in response to changes in orientation.- Chrome 38 Released on 2014-10-07
- Chrome Android 39 Released on 2014-11-12
- Edge 79 Released on 2020-01-15
- Firefox 43 Released on 2015-12-15
- Firefox for Android 43 Released on 2015-12-15
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Screen orientation lock
Limited availabilityThe
screen.orientation.lock()
method prevents changes to the screen orientation, typically in fullscreen applications such as games. For example, while locked, rotating a phone to the side won't change the screen orientation from landscape to portrait.- Chrome ❌ Search for bugs Search for Chromestatus entry
- Chrome Android 38 Released on 2014-10-08
- Edge ❌ Search for bugs Search for Chromestatus entry
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Scroll-driven animations
Limited availabilityCSS scroll-driven animations are a type of CSS animations that don't run over time, but are instead driven by the user's scroll position.
- Chrome 115 Released on 2023-07-18
- Chrome Android 115 Released on 2023-07-21
- Edge 115 Released on 2023-07-21
- Firefox ❌ See bugzil.la/1676779
- Firefox for Android ❌ See bugzil.la/1676779
- Safari ❌ See webkit.org/b/222295
- Safari on iOS ❌ See webkit.org/b/222295
-
scrollIntoView()
Widely available since 2023-03-16 (baseline high)The
scrollIntoView()
method scrolls an element's ancestor containers such that the element is visible to the user.- Chrome 61 Released on 2017-09-05
- Chrome Android 61 Released on 2017-09-05
- Edge 79 Released on 2020-01-15
- Firefox 36 Released on 2015-02-24
- Firefox for Android 36 Released on 2015-02-27
- Safari 14 Released on 2020-09-16
- Safari on iOS 14 Released on 2020-09-16
-
Scroll snap
Widely available since 2022-01-09 (baseline high)CSS scroll snap controls the panning and scrolling behavior within a scroll container.
- Chrome 69 Released on 2018-09-04
- Chrome Android 69 Released on 2018-09-04
- Edge 79 Released on 2020-01-15
- Firefox 68 Released on 2019-07-09
- Firefox for Android 68 Released on 2019-07-09
- Safari 11 Released on 2017-09-19
- Safari on iOS 11 Released on 2017-09-19
-
Scroll to text fragment
Limited availabilityText fragments are URL fragments on the form
#:~:text=snippet
and link to a snippet of text within a page. The browser may scroll, highlight, or otherwise bring that text to the reader's attention.- Chrome 81 Released on 2020-04-07
- Chrome Android 81 Released on 2020-04-07
- Edge 83 Released on 2020-05-21
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari 16.1 Released on 2022-10-24
- Safari on iOS 16.1 Released on 2022-10-24
-
scrollbar-color
Limited availabilityThe
scrollbar-color
CSS property sets the color of the scrollbar track and thumb.- Chrome 121 Released on 2024-01-23
- Chrome Android 121 Released on 2024-01-23
- Edge 121 Released on 2024-01-25
- Firefox 64 Released on 2018-12-11
- Firefox for Android 64 Released on 2018-12-11
- Safari ❌ See webkit.org/b/231590
- Safari on iOS ❌ See webkit.org/b/231590
-
scrollbar-gutter
Limited availabilityThe
scrollbar-gutter
CSS property reserves space for the scrollbar, preventing unwanted layout changes as the scrollbar appears and disappears.- Chrome 94 Released on 2021-09-21
- Chrome Android 94 Released on 2021-09-21
- Edge 94 Released on 2021-09-24
- Firefox 97 Released on 2022-02-08
- Firefox for Android 97 Released on 2022-02-08
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
scrollbar-width
Limited availabilityThe
scrollbar-width
CSS property sets the width of the scrollbar.- Chrome 121 Released on 2024-01-23
- Chrome Android 121 Released on 2024-01-23
- Edge 121 Released on 2024-01-25
- Firefox 64 Released on 2018-12-11
- Firefox for Android 64 Released on 2018-12-11
- Safari ❌ See webkit.org/b/231588
- Safari on iOS ❌ See webkit.org/b/231588
-
scrollend
Limited availabilityThe
scrollend
event fires when an element or document has finished scrolling.- Chrome 114 Released on 2023-05-30
- Chrome Android 114 Released on 2023-05-30
- Edge 114 Released on 2023-06-02
- Firefox 109 Released on 2023-01-17
- Firefox for Android 109 Released on 2023-01-17
- Safari ❌ See webkit.org/b/201556
- Safari on iOS ❌ See webkit.org/b/201556
-
<search>
Newly available since 2023-10-13 (baseline low)The
<search>
HTML element is a container that represents the parts of the web page with search functionality.- Chrome 118 Released on 2023-10-10
- Chrome Android 118 Released on 2023-10-10
- Edge 118 Released on 2023-10-13
- Firefox 118 Released on 2023-09-26
- Firefox for Android 118 Released on 2023-09-26
- Safari 17 Released on 2023-09-18
- Safari on iOS 17 Released on 2023-09-18
-
<input type="search">
Widely available since 2018-01-29 (baseline high)The
<input>
HTML element with thetype="search"
attribute represents a text field for search queries, which might be styled differently by the browser.- Chrome 5 Released on 2010-05-25
- Chrome Android 18 Released on 2012-06-27
- Edge 12 Released on 2015-07-29
- Firefox 4 Released on 2011-03-22
- Firefox for Android 4 Released on 2011-03-29
- Safari 5 Released on 2010-06-07
- Safari on iOS 4.2 Released on 2010-11-22
-
Server timing
Newly available since 2023-03-27 (baseline low)The
serverTiming
property of thePerformanceResourceTiming
API contains server timing information about network requests.- Chrome 65 Released on 2018-03-06
- Chrome Android 65 Released on 2018-03-06
- Edge 79 Released on 2020-01-15
- Firefox 61 Released on 2018-06-26
- Firefox for Android 61 Released on 2018-06-26
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Set (initial support)
Widely available since 2018-01-29 (baseline high)Set objects store unique values of any type.
- Chrome 38 Released on 2014-10-07
- Chrome Android 38 Released on 2014-10-08
- Edge 12 Released on 2015-07-29
- Firefox 13 Released on 2012-06-05
- Firefox for Android 14 Released on 2012-06-26
- Safari 8 Released on 2014-10-16
- Safari on iOS 8 Released on 2014-09-17
-
Set methods
Newly available since 2024-06-11 (baseline low)The
difference()
,intersection()
,isDisjointFrom()
,isSubsetOf()
,isSupersetOf()
,symmetricDifference()
, andunion()
methods of the JavaScriptSet
object performs operations between two sets.- Chrome 122 Released on 2024-02-20
- Chrome Android 122 Released on 2024-02-20
- Edge 122 Released on 2024-02-23
- Firefox 127 Released on 2024-06-11
- Firefox for Android 127 Released on 2024-06-11
- Safari 17 Released on 2023-09-18
- Safari on iOS 17 Released on 2023-09-18
-
Shadow DOM
Widely available since 2022-07-15 (baseline high)Shadow DOM allows you to attach encapsulated "shadow" DOM trees to elements. A shadow DOM tree is a separate component, isolated from the scripts and styles in other parts of the document. This is a part of Web Components.
- Chrome 54 Released on 2016-10-12
- Chrome Android 54 Released on 2016-10-19
- Edge 79 Released on 2020-01-15
- Firefox 63 Released on 2018-10-23
- Firefox for Android 63 Released on 2018-10-23
- Safari 10.1 Released on 2017-03-27
- Safari on iOS 10.3 Released on 2017-03-27
-
showPicker() for <input>
Limited availabilityThe
showPicker()
method for<input>
elements shows the user interface for picking a value. For example, for<input type="date">
it shows the interface for picking a date.- Chrome 99 Released on 2022-03-01
- Chrome Android 99 Released on 2022-03-01
- Edge 99 Released on 2022-03-03
- Firefox 101 Released on 2022-05-31
- Firefox for Android 101 Released on 2022-05-31
- Safari 17.4 Released on 2024-03-05
- Safari on iOS ❌ See webkit.org/b/261703
-
showPicker() for <select>
Limited availabilityThe
showPicker()
method for<select>
elements shows the dropdown menu or other user interface for picking one of the options.- Chrome 121 Released on 2024-01-23
- Chrome Android 121 Released on 2024-01-23
- Edge 121 Released on 2024-01-25
- Firefox 122 Released on 2024-01-23
- Firefox for Android 122 Released on 2024-01-23
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
<slot>
Widely available since 2022-07-15 (baseline high)The
<slot>
HTML element is a placeholder inside a web component where consumers of the component can insert their own markup.- Chrome 53 Released on 2016-08-31
- Chrome Android 53 Released on 2016-09-07
- Edge 79 Released on 2020-01-15
- Firefox 63 Released on 2018-10-23
- Firefox for Android 63 Released on 2018-10-23
- Safari 10 Released on 2016-09-20
- Safari on iOS 10 Released on 2016-09-13
-
Imperative slot assignment
Newly available since 2023-03-27 (baseline low)The
assign()
method for<slot>
elements assigns nodes to the slot, as an alternative to using theslot
andname
HTML attributes. The nodes must be children of a shadow host and the shadow root must be created with theslotAssignment
set to "manual". Also known as manual slot assignment.- Chrome 86 Released on 2020-10-20
- Chrome Android 86 Released on 2020-10-20
- Edge 86 Released on 2020-10-09
- Firefox 92 Released on 2021-09-07
- Firefox for Android 92 Released on 2021-09-07
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Speech synthesis
Widely available since 2021-03-05 (baseline high)The
SpeechSynthesis
API converts text into audio using a synthetic voice.- Chrome 33 Released on 2014-02-20
- Chrome Android 33 Released on 2014-02-26
- Edge 14 Released on 2016-08-02
- Firefox 49 Released on 2016-09-20
- Firefox for Android 62 Released on 2018-09-05
- Safari 7 Released on 2013-10-22
- Safari on iOS 7 Released on 2013-09-18
-
::spelling-error and ::grammar-error
Limited availabilityThe
::spelling-error
and::grammar-error
CSS pseudo-elements match text that is highlighted as misspelled and grammatically incorrect, respectively.- Chrome 121 Released on 2024-01-23
- Chrome Android 121 Released on 2024-01-23
- Edge 121 Released on 2024-01-25
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari 17.4 Released on 2024-03-05
- Safari on iOS 17.4 Released on 2024-03-05
-
Stable array sort
Widely available since 2022-07-15 (baseline high)Stable array sort() function
- Chrome 70 Released on 2018-10-16
- Chrome Android 70 Released on 2018-10-17
- Edge 79 Released on 2020-01-15
- Firefox 3 Released on 2008-06-17
- Firefox for Android 4 Released on 2011-03-29
- Safari 10.1 Released on 2017-03-27
- Safari on iOS 10.3 Released on 2017-03-27
-
@starting-style
Limited availabilityThe
@starting-style
CSS at-rule defines the starting values for properties that are transitioning when the target element's style is first updated.- Chrome 117 Released on 2023-09-12
- Chrome Android 117 Released on 2023-09-12
- Edge 117 Released on 2023-09-15
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari 17.5 Released on 2024-05-13
- Safari on iOS 17.5 Released on 2024-05-13
-
Sticky positioning
Widely available since 2022-03-19 (baseline high)The
position: sticky
CSS declaration positions an element in the normal flow until it crosses a specified threshold, at which points it becomes fixed (stuck) at that position.- Chrome 56 Released on 2017-01-25
- Chrome Android 56 Released on 2017-02-01
- Edge 16 Released on 2017-10-17
- Firefox 59 Released on 2018-03-13
- Firefox for Android 59 Released on 2018-03-13
- Safari 13 Released on 2019-09-19
- Safari on iOS 13 Released on 2019-09-19
-
Storage access
Newly available since 2023-12-05 (baseline low)The
document.requestStorageAccess()
method allows content in iframes to request storing and reading cookies and other site data, while thedocument.hasStorageAccess()
method checks if such access is granted.- Chrome 119 Released on 2023-10-31
- Chrome Android 120 Released on 2023-12-05
- Edge 85 Released on 2020-08-27
- Firefox 65 Released on 2019-01-29
- Firefox for Android 65 Released on 2019-01-29
- Safari 11.1 Released on 2018-04-12
- Safari on iOS 11.3 Released on 2018-03-29
-
Storage buckets
Limited availabilityThe
navigator.storageBuckets
API allows you to organize locally stored data into groups called storage buckets. Each bucket can have different settings, allowing the browser to manage and delete buckets independently rather than applying the same treatment to all.- Chrome 122 Released on 2024-02-20
- Chrome Android 122 Released on 2024-02-20
- Edge 122 Released on 2024-02-23
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Streams
Newly available since 2022-06-28 (baseline low)The streams API creates, composes, and consumes continuously generated data.
- Chrome 59 Released on 2017-06-05
- Chrome Android 59 Released on 2017-06-06
- Edge 79 Released on 2020-01-15
- Firefox 102 Released on 2022-06-28
- Firefox for Android 102 Released on 2022-06-28
- Safari 14.1 Released on 2021-04-26
- Safari on iOS 14.5 Released on 2021-04-26
-
structuredClone()
Newly available since 2022-03-14 (baseline low)The
structuredClone()
global method creates a deep copy of an object. Values that cannot be cloned can instead be transferred, making the original value no longer usable.- Chrome 98 Released on 2022-02-01
- Chrome Android 98 Released on 2022-02-01
- Edge 98 Released on 2022-02-03
- Firefox 94 Released on 2021-11-02
- Firefox for Android 94 Released on 2021-11-02
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
Subgrid
Newly available since 2023-09-15 (baseline low)The
subgrid
value for thegrid-template-columns
andgrid-template-rows
properties allows a grid item to inherit the grid definition of its parent grid container.- Chrome 117 Released on 2023-09-12
- Chrome Android 117 Released on 2023-09-12
- Edge 117 Released on 2023-09-15
- Firefox 71 Released on 2019-12-10
- Firefox for Android 79 Released on 2020-07-28
- Safari 16 Released on 2022-09-12
- Safari on iOS 16 Released on 2022-09-12
-
tabindex
Widely available since 2021-04-02 (baseline high)The
tabindex
HTML attribute make an element focusable, and defines the element's relative ordering for sequential focus navigation.- Chrome 1 Released on 2008-12-11
- Chrome Android 18 Released on 2012-06-27
- Edge 18 Released on 2018-10-02
- Firefox 1.5 Released on 2005-11-29
- Firefox for Android 4 Released on 2011-03-29
- Safari 4 Released on 2009-06-08
- Safari on iOS 3.2 Released on 2010-04-03
-
::target-text
Limited availabilityThe
::target-text
pseudo-element allows you to style text highlighted by a URL text fragment such as#:~:text=snippet
.- Chrome 89 Released on 2021-03-02
- Chrome Android 89 Released on 2021-03-02
- Edge 89 Released on 2021-03-04
- Firefox ❌ See bugzil.la/1694053
- Firefox for Android ❌ See bugzil.la/1694053
- Safari ❌ See webkit.org/b/236817
- Safari on iOS ❌ See webkit.org/b/236817
-
<template>
Widely available since 2018-05-12 (baseline high)The
<template>
HTML element holds HTML fragments which you can clone and insert into the document using JavaScript.- Chrome 26 Released on 2013-03-26
- Chrome Android 26 Released on 2013-04-03
- Edge 13 Released on 2015-11-12
- Firefox 22 Released on 2013-06-25
- Firefox for Android 22 Released on 2013-06-25
- Safari 8 Released on 2014-10-16
- Safari on iOS 8 Released on 2014-09-17
-
Temporal
Limited availabilityThe
Temporal
API allows you to work with dates, times, time zones, and durations. It is more powerful than theDate
API.- Chrome ❌ See crbug.com/v8/11544
- Chrome Android ❌ See crbug.com/v8/11544
- Edge ❌ See crbug.com/v8/11544
- Firefox ❌ See bugzil.la/1519167
- Firefox for Android ❌ See bugzil.la/1519167
- Safari ❌ See webkit.org/b/223166
- Safari on iOS ❌ See webkit.org/b/223166
-
text-indent
Widely available since 2018-01-29 (baseline high)The
text-indent
CSS property sets the size of the empty space (indentation) at the beginning of lines in a text.- Chrome 1 Released on 2008-12-11
- Chrome Android 18 Released on 2012-06-27
- Edge 12 Released on 2015-07-29
- Firefox 1 Released on 2004-11-09
- Firefox for Android 4 Released on 2011-03-29
- Safari 1 Released on 2003-06-23
- Safari on iOS 1 Released on 2007-06-29
-
text-spacing-trim
Limited availabilityThe
text-spacing-trim
CSS property controls spacing around CJK characters, avoiding excessive whitespace when using full-width punctuation characters.- Chrome 123 Released on 2024-03-19
- Chrome Android 123 Released on 2024-03-19
- Edge 123 Released on 2024-03-22
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
text-wrap: balance
Newly available since 2024-05-13 (baseline low)The
text-wrap: balance
CSS declaration balances the length of each line when text is broken into multiple lines. Also known as headline balancing.- Chrome 114 Released on 2023-05-30
- Chrome Android 114 Released on 2023-05-30
- Edge 114 Released on 2023-06-02
- Firefox 121 Released on 2023-12-19
- Firefox for Android 121 Released on 2023-12-19
- Safari 17.5 Released on 2024-05-13
- Safari on iOS 17.5 Released on 2024-05-13
-
text-wrap: nowrap
Newly available since 2024-03-19 (baseline low)The
text-wrap: nowrap
CSS declaration prevents text breaking into multiple lines. Text that doesn't fit overflows instead.- Chrome 114 Released on 2023-05-30
- Chrome Android 114 Released on 2023-05-30
- Edge 114 Released on 2023-06-02
- Firefox 124 Released on 2024-03-19
- Firefox for Android 124 Released on 2024-03-19
- Safari 17.4 Released on 2024-03-05
- Safari on iOS 17.4 Released on 2024-03-05
-
text-wrap: pretty
Limited availabilityThe
text-wrap: pretty
CSS declaration prioritizes better layout over speed when text is broken into multiple lines.- Chrome 117 Released on 2023-09-12
- Chrome Android 117 Released on 2023-09-12
- Edge 117 Released on 2023-09-15
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Transferable ArrayBuffer
Newly available since 2024-03-05 (baseline low)The
transfer()
andtransferToFixedLength()
methods ofArrayBuffer
move a buffer from one context to another (for example, to a worker).- Chrome 114 Released on 2023-05-30
- Chrome Android 114 Released on 2023-05-30
- Edge 114 Released on 2023-06-02
- Firefox 122 Released on 2024-01-23
- Firefox for Android 122 Released on 2024-01-23
- Safari 17.4 Released on 2024-03-05
- Safari on iOS 17.4 Released on 2024-03-05
-
2D transforms
Widely available since 2018-03-30 (baseline high)The
transform
CSS property and its 2D transform functions allow rotating, scaling, skewing, and translating an element. Arbitrary 2D transforms are also possible using a transformation matrix.- Chrome 36 Released on 2014-07-16
- Chrome Android 36 Released on 2014-07-16
- Edge 12 Released on 2015-07-29
- Firefox 16 Released on 2012-10-09
- Firefox for Android 16 Released on 2012-10-09
- Safari 9 Released on 2015-09-30
- Safari on iOS 9 Released on 2015-09-16
-
3D transforms
Newly available since 2022-03-14 (baseline low)The
transform
CSS property and its 3D transform functions allow rotations and other transforms in three dimensions, including perspective transforms.- Chrome 36 Released on 2014-07-16
- Chrome Android 36 Released on 2014-07-16
- Edge 12 Released on 2015-07-29
- Firefox 16 Released on 2012-10-09
- Firefox for Android 16 Released on 2012-10-09
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
transition-behavior
Limited availabilityThe
transition-behavior: allow-discrete
CSS declaration allows transitions for properties whose animation behavior is discrete. Such properties can't be interpolated and swap from their start value to the end value at 50%.- Chrome 117 Released on 2023-09-12
- Chrome Android 117 Released on 2023-09-12
- Edge 117 Released on 2023-09-15
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ See bugzil.la/1805727
- Safari 17.4 Released on 2024-03-05
- Safari on iOS 17.4 Released on 2024-03-05
-
translate attribute
Newly available since 2023-03-14 (baseline low)The
translate
HTML attribute marks whether an element's text should be translated.- Chrome 19 Released on 2012-05-15
- Chrome Android 25 Released on 2013-02-27
- Edge 79 Released on 2020-01-15
- Firefox 111 Released on 2023-03-14
- Firefox for Android 111 Released on 2023-03-14
- Safari 6 Released on 2012-07-25
- Safari on iOS 6 Released on 2012-09-10
-
sin(), cos(), tan(), asin(), acos(), atan(), and atan2()
Newly available since 2023-03-13 (baseline low)The
sin()
,cos()
,tan()
,asin()
,acos()
,atan()
, andatan2()
CSS functions compute various trigonometric functions.- Chrome 111 Released on 2023-03-07
- Chrome Android 111 Released on 2023-03-07
- Edge 111 Released on 2023-03-13
- Firefox 108 Released on 2022-12-13
- Firefox for Android 108 Released on 2022-12-13
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
Trusted types
Limited availabilityTrusted types allow you to lock down insecure parts of the DOM API and prevent client-side cross-site scripting (XSS) attacks.
- Chrome 83 Released on 2020-05-19
- Chrome Android 83 Released on 2020-05-19
- Edge 83 Released on 2020-05-21
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Two-value display property
Newly available since 2023-07-21 (baseline low)The
display
CSS property accepts multiple keyword values, such asinline flex
orblock flow
, to explicitly set an element's inner and outer layout mode. Also known as 2-value, multi-keyword, or multiple value syntax.- Chrome 115 Released on 2023-07-18
- Chrome Android 115 Released on 2023-07-21
- Edge 115 Released on 2023-07-21
- Firefox 70 Released on 2019-10-22
- Firefox for Android 79 Released on 2020-07-28
- Safari 15 Released on 2021-09-20
- Safari on iOS 15 Released on 2021-09-20
-
Typed array iteration methods
Widely available since 2018-09-21 (baseline high)Typed array iteration methods
- Chrome 45 Released on 2015-09-01
- Chrome Android 45 Released on 2015-09-01
- Edge 12 Released on 2015-07-29
- Firefox 37 Released on 2015-03-31
- Firefox for Android 37 Released on 2015-03-31
- Safari 9.1 Released on 2016-03-21
- Safari on iOS 9.3 Released on 2016-03-21
-
Typed array iterators
Widely available since 2019-03-20 (baseline high)Typed arrays are iterable with the
for…of
statement and enumerable with the methodsentries()
,keys()
, andvalues()
.- Chrome 38 Released on 2014-10-07
- Chrome Android 38 Released on 2014-10-08
- Edge 12 Released on 2015-07-29
- Firefox 36 Released on 2015-02-24
- Firefox for Android 36 Released on 2015-02-27
- Safari 10 Released on 2016-09-20
- Safari on iOS 10 Released on 2016-09-13
-
Typed arrays (initial support)
Widely available since 2018-01-29 (baseline high)Typed arrays are ordered lists of JavaScript values, where all values are of the same numerical type, such as 8-bit integers or 32-bit floating point numbers.
- Chrome 7 Released on 2010-10-19
- Chrome Android 18 Released on 2012-06-27
- Edge 12 Released on 2015-07-29
- Firefox 4 Released on 2011-03-22
- Firefox for Android 4 Released on 2011-03-29
- Safari 5.1 Released on 2011-07-20
- Safari on iOS 4.2 Released on 2010-11-22
-
URL.canParse()
Newly available since 2023-12-07 (baseline low)The
URL.canParse()
static method checks whether a URL can be parsed into a validURL
object. It's an alternative to callingnew URL()
in atry…catch
statement.- Chrome 120 Released on 2023-12-05
- Chrome Android 120 Released on 2023-12-05
- Edge 120 Released on 2023-12-07
- Firefox 115 Released on 2023-07-04
- Firefox for Android 115 Released on 2023-07-04
- Safari 17 Released on 2023-09-18
- Safari on iOS 17 Released on 2023-09-18
-
User activation
Newly available since 2023-11-21 (baseline low)The
navigator.userActivation
API reveals whether the user has interacted with the page through an "activation" gesture such as a click, tap, or key press. User activation gated APIs (such as the fullscreen API) fail without user interaction, and this API allows you to predict such a failure.- Chrome 72 Released on 2019-01-29
- Chrome Android 72 Released on 2019-01-29
- Edge 79 Released on 2020-01-15
- Firefox 120 Released on 2023-11-21
- Firefox for Android 120 Released on 2023-11-21
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
:user-valid and :user-invalid
Newly available since 2023-11-02 (baseline low)The
:user-valid
and:user-invalid
pseudo-classes match form controls that have been marked as valid or invalid based on their validation constraints.- Chrome 119 Released on 2023-10-31
- Chrome Android 119 Released on 2023-10-31
- Edge 119 Released on 2023-11-02
- Firefox 88 Released on 2021-04-19
- Firefox for Android 88 Released on 2021-04-19
- Safari 16.5 Released on 2023-05-18
- Safari on iOS 16.5 Released on 2023-05-18
-
View transitions
Limited availabilityView transitions allow you to create animated visual transitions between different states of a document, or between different documents.
- Chrome 111 Released on 2023-03-07
- Chrome Android 111 Released on 2023-03-07
- Edge 111 Released on 2023-03-13
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Small, large, and dynamic viewport units
Newly available since 2022-12-05 (baseline low)The
sv*
,lv*
, anddv*
CSS viewport units are relative to the smallest, largest, and current (dynamic) viewport size. They are used to size elements in relation to the viewport's dimensions.- Chrome 108 Released on 2022-11-29
- Chrome Android 108 Released on 2022-11-29
- Edge 108 Released on 2022-12-05
- Firefox 101 Released on 2022-05-31
- Firefox for Android 101 Released on 2022-05-31
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
Viewport units
Widely available since 2020-04-17 (baseline high)The
vw
,vh
,vmin
, andvmax
CSS viewport units are relative to the size of the viewport, and are used to size elements in relation to the viewport's dimensions.- Chrome 26 Released on 2013-03-26
- Chrome Android 26 Released on 2013-04-03
- Edge 16 Released on 2017-10-17
- Firefox 19 Released on 2013-02-19
- Firefox for Android 19 Released on 2013-02-19
- Safari 7 Released on 2013-10-22
- Safari on iOS 7 Released on 2013-09-18
-
Visual viewport API
Widely available since 2024-02-10 (baseline high)The
visualViewport
API provides a way to query and modify the user-visible viewport of a web page.- Chrome 61 Released on 2017-09-05
- Chrome Android 61 Released on 2017-09-05
- Edge 79 Released on 2020-01-15
- Firefox 91 Released on 2021-08-10
- Firefox for Android 68 Released on 2019-07-09
- Safari 13 Released on 2019-09-19
- Safari on iOS 13 Released on 2019-09-19
-
WebAssembly SIMD
Newly available since 2023-03-27 (baseline low)The 128-bit SIMD (Single Instruction Multiple Data) extension to WebAssembly performs one instruction on multiple units of data, when running on hardware that supports such instructions. Also known as vector instructions.
- Chrome 91 Released on 2021-05-25
- Chrome Android 91 Released on 2021-05-25
- Edge 91 Released on 2021-05-27
- Firefox 89 Released on 2021-06-01
- Firefox for Android 89 Released on 2021-06-01
- Safari 16.4 Released on 2023-03-27
- Safari on iOS 16.4 Released on 2023-03-27
-
Web animations
Widely available since 2022-09-24 (baseline high)The web animations API allows you to animate and synchronize the animations of DOM elements.
- Chrome 36 Released on 2014-07-16
- Chrome Android 36 Released on 2014-07-16
- Edge 79 Released on 2020-01-15
- Firefox 48 Released on 2016-08-02
- Firefox for Android 48 Released on 2016-08-02
- Safari 13.1 Released on 2020-03-24
- Safari on iOS 13.4 Released on 2020-03-24
-
Web Bluetooth
Limited availabilityThe Web Bluetooth API enables selecting and communicating with nearby Bluetooth devices.
- Chrome 70 Released on 2018-10-16
- Chrome Android 56 Released on 2017-02-01
- Edge 79 Released on 2020-01-15
- Firefox ❌ See bugzil.la/674737
- Firefox for Android ❌ See bugzil.la/674737
- Safari ❌ See webkit.org/b/101034
- Safari on iOS ❌ See webkit.org/b/101034
-
Locks
Newly available since 2022-03-14 (baseline low)The
navigator.locks
API coordinates work with shared resources through mutually exclusive ownership of a resource's name. Also known as web locks.- Chrome 69 Released on 2018-09-04
- Chrome Android 69 Released on 2018-09-04
- Edge 79 Released on 2020-01-15
- Firefox 96 Released on 2022-01-11
- Firefox for Android 96 Released on 2022-01-11
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
Web MIDI
Limited availabilityThe Web MIDI API enables selecting MIDI input and output devices and sending and receiving MIDI messages.
- Chrome 43 Released on 2015-05-19
- Chrome Android 43 Released on 2015-05-27
- Edge 79 Released on 2020-01-15
- Firefox 108 Released on 2022-12-13
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ See webkit.org/b/107250
- Safari on iOS ❌ See webkit.org/b/107250
-
Web NFC
Limited availabilityThe
NDEFReader
API reads and writes messages to near-field communication (NFC) tags.- Chrome ❌ Search for bugs Search for Chromestatus entry
- Chrome Android 89 Released on 2021-03-02
- Edge ❌ Search for bugs Search for Chromestatus entry
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
Web authentication easy public key access
Newly available since 2023-10-24 (baseline low)The
getAuthenticatorData()
,getPublicKey()
, andgetPublicKeyAlgorithm()
methods ofAuthenticatorAttestationResponse
access credential data insideattestationObject
without the need to parse it.- Chrome 85 Released on 2020-08-25
- Chrome Android 85 Released on 2020-08-25
- Edge 85 Released on 2020-08-27
- Firefox 119 Released on 2023-10-24
- Firefox for Android 119 Released on 2023-10-24
- Safari 16 Released on 2022-09-12
- Safari on iOS 16 Released on 2022-09-12
-
WebCodecs
Limited availabilityThe WebCodecs API provides low-level access to individual video frames and chunks of audio samples, for full control over the way media is processed.
- Chrome 94 Released on 2021-09-21
- Chrome Android 94 Released on 2021-09-21
- Edge 94 Released on 2021-09-24
- Firefox ❌ See bugzil.la/1749044 bugzil.la/1749046 bugzil.la/1749048
- Firefox for Android ❌ See bugzil.la/1749045 bugzil.la/1872733 bugzil.la/1749539 bugzil.la/1749044 bugzil.la/1749046 bugzil.la/1749048
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
WebDriver BiDi
Limited availabilityWebDriver BiDi is a bidirectional protocol that allows a WebDriver client and a browser to communicate with each other.
- Chrome 106 Released on 2022-09-27
- Chrome Android 106 Released on 2022-09-27
- Edge 106 Released on 2022-10-03
- Firefox 102 Released on 2022-06-28
- Firefox for Android 102 Released on 2022-06-28
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
WebGL OES_draw_buffers_indexed extension
Newly available since 2022-12-13 (baseline low)The
OES_draw_buffers_indexed
extension to WebGL allows you to control blending on a per-color basis when writing to multiple color buffers simultaneously.- Chrome 100 Released on 2022-03-29
- Chrome Android 100 Released on 2022-03-29
- Edge 100 Released on 2022-04-01
- Firefox 108 Released on 2022-12-13
- Firefox for Android 108 Released on 2022-12-13
- Safari 16 Released on 2022-09-12
- Safari on iOS 16 Released on 2022-09-12
-
WebHID
Limited availabilityThe WebHID API provides access to Human Interface Devices (HID) that are connected to the user's device.
- Chrome 89 Released on 2021-03-02
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge 89 Released on 2021-03-04
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
WebNN
Limited availabilityThe WebNN API constructs and executes computational graphs of neural networks by making use of the various machine learning capabilities and hardware accelerators available on the device. Also known as Web Neural Network API.
- Chrome ❌ Search for bugs Search for Chromestatus entry
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge ❌ Search for bugs Search for Chromestatus entry
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
WebP
Widely available since 2023-03-16 (baseline high)The WebP image format is a raster graphics file format that supports animation, alpha transparency, and lossy as well as lossless compression.
- Chrome 9 Released on 2011-02-03
- Chrome Android 18 Released on 2012-06-27
- Edge 18 Released on 2018-10-02
- Firefox 65 Released on 2019-01-29
- Firefox for Android 65 Released on 2019-01-29
- Safari 14 Released on 2020-09-16
- Safari on iOS 14 Released on 2020-09-16
-
WebRTC
Widely available since 2022-07-15 (baseline high)The WebRTC API establishes real-time communication channels directly between browsers. It is commonly used in video conferencing applications.
- Chrome 56 Released on 2017-01-25
- Chrome Android 56 Released on 2017-02-01
- Edge 79 Released on 2020-01-15
- Firefox 44 Released on 2016-01-26
- Firefox for Android 44 Released on 2016-01-26
- Safari 11 Released on 2017-09-19
- Safari on iOS 11 Released on 2017-09-19
-
WebRTC encoded transform
Limited availabilityThe WebRTC encoded transform API allows you to modify audio and video streams in WebRTC connections. For example, it can be used for visual effects or custom codecs.
- Chrome ❌ Search for bugs Search for Chromestatus entry
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge ❌ Search for bugs Search for Chromestatus entry
- Firefox 117 Released on 2023-08-29
- Firefox for Android 117 Released on 2023-08-29
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
WebRTC SCTP information
Newly available since 2023-05-09 (baseline low)The
sctp
object onRTCPeerConnection
represents the negotiated SCTP transport. SCTP (Stream Control Transmission Protocol) is the protocol thatRTCDataChannel
uses.- Chrome 76 Released on 2019-07-30
- Chrome Android 76 Released on 2019-07-30
- Edge 79 Released on 2020-01-15
- Firefox 113 Released on 2023-05-09
- Firefox for Android 113 Released on 2023-05-09
- Safari 15.4 Released on 2022-03-14
- Safari on iOS 15.4 Released on 2022-03-14
-
WebTransport
Limited availabilityThe
WebTransport
API transmits data between a client and a server, by using the HTTP/3 protocol.- Chrome 97 Released on 2022-01-04
- Chrome Android 97 Released on 2022-01-04
- Edge 97 Released on 2022-01-06
- Firefox 114 Released on 2023-06-06
- Firefox for Android 114 Released on 2023-06-06
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
WebUSB
Limited availabilityThe WebUSB API exposes USB compatible devices to web pages.
- Chrome 61 Released on 2017-09-05
- Chrome Android 61 Released on 2017-09-05
- Edge 79 Released on 2020-01-15
- Firefox ❌ Search for bugs Search for standards position
- Firefox for Android ❌ Search for bugs Search for standards position
- Safari ❌ Search for bugs Search for standards position
- Safari on iOS ❌ Search for bugs Search for standards position
-
WebVTT
Widely available since 2018-01-29 (baseline high)WebVTT is a captions and subtitles format. WebVTT files are loaded using the
<track>
element, and theVTTCue
API can be used to create or update cues dynamically.- Chrome 23 Released on 2012-11-06
- Chrome Android 25 Released on 2013-02-27
- Edge 12 Released on 2015-07-29
- Firefox 31 Released on 2014-07-22
- Firefox for Android 31 Released on 2014-07-22
- Safari 6 Released on 2012-07-25
- Safari on iOS 8 Released on 2014-09-17
-
WebVTT cue alignment
Limited availabilityThe WebVTT cue alignment settings control which part of the cue is aligned with the given line and position. Cue alignment is set using
line
andposition
settings in WebVTT files or thelineAlign
andpositionAlign
properties ofVTTCue
using JavaScript.- Chrome ❌ See crbug.com/633690
- Chrome Android ❌ See crbug.com/633690
- Edge ❌ See crbug.com/633690
- Firefox 31 Released on 2014-07-22
- Firefox for Android 31 Released on 2014-07-22
- Safari 14.1 Released on 2021-04-26
- Safari on iOS 14.5 Released on 2021-04-26
-
WebVTT regions
Limited availabilityWebVTT regions set the areas of the video where captions or subtitles should be rendered, such as placing roll-up captions used for live captions.
- Chrome ❌ Search for bugs Search for Chromestatus entry
- Chrome Android ❌ Search for bugs Search for Chromestatus entry
- Edge ❌ Search for bugs Search for Chromestatus entry
- Firefox 59 Released on 2018-03-13
- Firefox for Android 59 Released on 2018-03-13
- Safari 7 Released on 2013-10-22
- Safari on iOS 7 Released on 2013-09-18
-
:where()
Widely available since 2023-07-21 (baseline high)The
:where()
CSS functional pseudo-class takes a selector list as its argument, and matches any element that can be selected by one of the selectors in that list. It is functionally equivalent to the selectors in the list, but doesn't affect the CSS rule specificity.- Chrome 88 Released on 2021-01-19
- Chrome Android 88 Released on 2021-01-19
- Edge 88 Released on 2021-01-21
- Firefox 82 Released on 2020-10-20
- Firefox for Android 82 Released on 2020-10-20
- Safari 14 Released on 2020-09-16
- Safari on iOS 14 Released on 2020-09-16
-
will-change
Widely available since 2022-07-15 (baseline high)The
will-change
CSS property gives hints to the browser about expected changes to an element's scroll position, contents, or style. These hints allow browsers to optimize for upcoming style changes.- Chrome 36 Released on 2014-07-16
- Chrome Android 36 Released on 2014-07-16
- Edge 79 Released on 2020-01-15
- Firefox 36 Released on 2015-02-24
- Firefox for Android 36 Released on 2015-02-27
- Safari 9.1 Released on 2016-03-21
- Safari on iOS 9.3 Released on 2016-03-21
-
zoom
Newly available since 2024-05-14 (baseline low)The
zoom
CSS property scales the size of an element. Unlike thetransform
property, a zoomed element affects page layout.- Chrome 1 Released on 2008-12-11
- Chrome Android 18 Released on 2012-06-27
- Edge 12 Released on 2015-07-29
- Firefox 126 Released on 2024-05-14
- Firefox for Android 126 Released on 2024-05-14
- Safari 3.1 Released on 2008-03-18
- Safari on iOS 3 Released on 2009-06-17