Time to Stable

For a given set of browsers, what APIs are in all of them and how many days it take for the API to land in the first browser to the last.

Example Comparisons
Browsers
Features

Summary

A count of the number of APIs that landed in A first and B last.
Last in Chrome AndroidLast in Safari
First in Chrome Android 1583
First in Safari 2075

Average time for an API to become available across Chrome Android and Safari

3658 APIs took an average of 1270.09 days to become available to use.

API breakdown:

Average time to landing by year of first landing

If a feature landed in the earliest browser in 20XX it took Y days on average to become available in the last browser (when considering Chrome Android and Safari). TTA (time to available).
CSS APIsCSS TTAHTML APIsHTML TTA
2003 4253313.141133292.00
2004 653075.77123068.00
2005 392637.9032616.00
2007 1501725.74961706.00
2008 671562.00211644.05
2009 1691158.441281115.00
2010 1011759.7538832.79
2011 641042.8814432.50
2012 801458.0847297.09
2013 187892.4691980.67
2014 105858.55341691.18
2015 1171048.117890.43
2016 145921.7724722.13
2017 191578.1415521.20
2018 212406.4514939.64
2019 47710.8514772.21
2020 139455.1441018.75
2021 77534.994284.25
2022 163322.1513764.38
2023 127444.9412281.08
2024 241340.248386.00
2025 107114.9010196.10

The Tortoise and the Hare

There is a natural tension on the web with respect to browser engines. Every engine has their own set of priorities which define the level of investment that they choose to make and on which areas they choose to make it.

A developer naturally wants their experiences to be available to the widest audience possible and these differing priorities create an unevenness on the platform (a lumpiness) making it harder for developers to build experiences that work everywhere.

This section highlights where browsers are pushing and pulling on the platform.

Sprinters

This table is designed to show which browsers are pushing on the platform the most.

Adding features to quickly is not always desired because developers are unlikely to adopt those features in their sites or apps.

For a given year, if a feature landed in Browser X first, how many days it take on average to be available in Chrome Android and Safari. TTA (time to available).
Year CSSCSS TTAHTMLHTML TTA
2003
  Safari 4253313.141133292.00
2004
  Safari 653075.77123068.00
2005
  Safari 392637.9032616.00
2007
  Safari 1501725.74961706.00
2008
  Safari 671562.00211644.05
2009
  Safari 1691158.441281115.00
2010
  Safari 1011759.7538832.79
2011
  Safari 641042.8814432.50
2012
  Chrome Android 491497.4136321.56
  Safari 311395.9011217.00
2013
  Chrome Android 148607.8972128.57
  Safari 391972.3821463.00
2014
  Chrome Android 711015.87331729.94
  Safari 34530.031412.00
2015
  Chrome Android 741107.187890.43
  Safari 43946.470NaN
2016
  Chrome Android 77749.9119738.53
  Safari 681116.375659.80
2017
  Chrome Android 156590.0210731.70
  Safari 35525.205100.20
2018
  Chrome Android 207396.8910748.20
  Safari 5802.2041418.25
2019
  Safari 17692.654611.00
  Chrome Android 30721.1710836.70
2020
  Safari 17622.711892.00
  Chrome Android 122431.8031061.00
2021
  Chrome Android 52501.714284.25
  Safari 25604.200NaN
2022
  Chrome Android 45224.0711879.00
  Safari 118359.562134.00
2023
  Chrome Android 111474.149295.44
  Safari 16242.383238.00
2024
  Chrome Android 206382.768386.00
  Safari 3589.970NaN
2025
  Chrome Android 59149.519205.00
  Safari 4872.351116.00

Plodders

This table is designed to show which browsers are pulling on the platform the most.

For a feature that first landed in year X, how many days did it take on average for the last browser to catch up across Chrome Android and Safari. TTA (time to available).
Year CSS countCSS TTAHTML countHTML TTA
2003
  Chrome Android 4253313.141133292.00
2004
  Chrome Android 653075.77123068.00
2005
  Chrome Android 392637.9032616.00
2007
  Chrome Android 1501725.74961706.00
2008
  Chrome Android 671562.00211644.05
2009
  Chrome Android 1691158.441281115.00
2010
  Chrome Android 1011759.7538832.79
2011
  Chrome Android 641042.8814432.50
2012
  Safari 491497.4136321.56
  Chrome Android 311395.9011217.00
2013
  Safari 148607.8972128.57
  Chrome Android 391972.3821463.00
2014
  Safari 711015.87331729.94
  Chrome Android 34530.031412.00
2015
  Safari 741107.187890.43
  Chrome Android 43946.470NaN
2016
  Safari 77749.9119738.53
  Chrome Android 681116.375659.80
2017
  Safari 156590.0210731.70
  Chrome Android 35525.205100.20
2018
  Safari 207396.8910748.20
  Chrome Android 5802.2041418.25
2019
  Chrome Android 17692.654611.00
  Safari 30721.1710836.70
2020
  Chrome Android 17622.711892.00
  Safari 122431.8031061.00
2021
  Safari 52501.714284.25
  Chrome Android 25604.200NaN
2022
  Safari 45224.0711879.00
  Chrome Android 118359.562134.00
2023
  Safari 111474.149295.44
  Chrome Android 16242.383238.00
2024
  Safari 206382.768386.00
  Chrome Android 3589.970NaN
2025
  Safari 59149.519205.00
  Chrome Android 4872.351116.00

Stable APIs

Below is a list of features that are in Chrome Android and Safari

Raw Data

Quick Links:

CSS Data

API First Browser Date Last Browser Date Days Notes
css.at-rules.charset 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Firefox 1 supported an invalid syntax where the character encoding is not between single or double quotes.Internet Explorer: From Internet Explorer 5.5 to IE 7 (inclusive), Internet Explorer supported an invalid syntax where the character encoding is not between single or double quotes.
css.at-rules.container 📋Chrome Android9/2/2022 Safari9/12/202210
css.at-rules.container.style_queries_for_custom_properties 📋Chrome Android3/7/2023 Safari9/16/2024559
Safari: The document element cannot be a container. See bug 271040.Safari on iOS: The document element cannot be a container. See bug 271040.WebView on iOS: The document element cannot be a container. See bug 271040.
css.at-rules.counter-style 📋Chrome Android5/25/2021 Safari9/18/2023846
css.at-rules.counter-style.additive-symbols 📋Chrome Android5/25/2021 Safari9/18/2023846
css.at-rules.counter-style.fallback 📋Chrome Android5/25/2021 Safari9/18/2023846
css.at-rules.counter-style.negative 📋Chrome Android5/25/2021 Safari9/18/2023846
css.at-rules.counter-style.pad 📋Chrome Android5/25/2021 Safari9/18/2023846
css.at-rules.counter-style.prefix 📋Chrome Android5/25/2021 Safari9/18/2023846
css.at-rules.counter-style.range 📋Chrome Android5/25/2021 Safari9/18/2023846
css.at-rules.counter-style.suffix 📋Chrome Android5/25/2021 Safari9/18/2023846
css.at-rules.counter-style.symbols 📋Chrome Android5/25/2021 Safari9/18/2023846
Chrome: Does not support <image> as a value for the symbols descriptor.Chrome Android: Does not support <image> as a value for the symbols descriptor.Edge: Does not support <image> as a value for the symbols descriptor.Firefox: Does not support <image> as a value for the symbols descriptor.Firefox for Android: Does not support <image> as a value for the symbols descriptor.Quest Browser: Does not support <image> as a value for the symbols descriptor.Opera: Does not support <image> as a value for the symbols descriptor.Opera Android: Does not support <image> as a value for the symbols descriptor.Samsung Internet: Does not support <image> as a value for the symbols descriptor.WebView Android: Does not support <image> as a value for the symbols descriptor.
css.at-rules.counter-style.system 📋Chrome Android5/25/2021 Safari9/18/2023846
css.at-rules.font-face 📋Safari3/18/2008 Chrome Android6/27/20121562
css.at-rules.font-face.OpenType_COLRv0 Chrome Android9/7/2016 Safari4/12/2018582
css.at-rules.font-face.OpenType_SBIX Safari3/21/2016 Chrome Android4/17/2018757
css.at-rules.font-face.WOFF 📋Safari7/20/2011 Chrome Android6/27/2012343
css.at-rules.font-face.WOFF_2 📋Chrome Android7/16/2014 Safari9/20/2016797
Safari: Supported only on macOS 10.12 (Sierra) and later.
css.at-rules.font-face.font-display 📋Chrome Android8/1/2017 Safari4/12/2018254
css.at-rules.font-face.font-family 📋Safari3/18/2008 Chrome Android6/27/20121562
css.at-rules.font-face.font-feature-settings 📋Safari9/20/2016 Chrome Android9/2/20253269
Firefox: The ISO/IEC CD 14496-22 3rd edition suggests using the ssty feature to provide glyph variants more suitable for use in scripts (for example primes used as superscripts). Starting with Firefox 29, this is done automatically by the MathML rendering engine. The ISO/IEC CD 14496-22 3rd edition also suggests applying the dtls feature to letters when placing mathematical accents to get dotless forms (for example dotless i, j with a hat). Starting with Firefox 35, this is done automatically by the MathML rendering engine. You can override the default values determined by the MathML rendering engine with CSS.Firefox: From Firefox 4 to Firefox 14 (inclusive), Firefox supported an older, slightly different syntax. See OpenType Font Feature support in Firefox 4.Firefox for Android: The ISO/IEC CD 14496-22 3rd edition suggests using the ssty feature to provide glyph variants more suitable for use in scripts (for example primes used as superscripts). Starting with Firefox for Android 29, this is done automatically by the MathML rendering engine. The ISO/IEC CD 14496-22 3rd edition also suggests applying the dtls feature to letters when placing mathematical accents to get dotless forms (for example dotless i, j with a hat). Starting with Firefox for Android 35, this is done automatically by the MathML rendering engine. You can override the default values determined by the MathML rendering engine with CSS.Firefox for Android: From Firefox for Android 4 to Firefox for Android 14 (inclusive), Firefox for Android supported an older, slightly different syntax. See OpenType Font Feature support in Firefox for Android 4.
css.at-rules.font-face.font-stretch 📋Safari3/27/2017 Chrome Android10/24/2017211
css.at-rules.font-face.font-style 📋Safari3/18/2008 Chrome Android6/27/20121562
css.at-rules.font-face.font-variant Safari3/18/2008 Chrome Android6/27/20121562
css.at-rules.font-face.font-weight 📋Safari3/18/2008 Chrome Android6/27/20121562
css.at-rules.font-face.size-adjust 📋Chrome Android7/20/2021 Safari9/18/2023790
css.at-rules.font-face.src 📋Safari3/18/2008 Chrome Android6/27/20121562
css.at-rules.font-face.src.format_keyword Safari6/8/2009 Chrome Android11/29/20224922
css.at-rules.font-face.src.format_variations Safari9/19/2017 Chrome Android4/17/2018210
css.at-rules.font-face.src.tech_keyword Chrome Android11/29/2022 Safari9/18/2023293
css.at-rules.font-face.unicode-range 📋Safari3/18/2008 Chrome Android6/27/20121562
css.at-rules.font-feature-values 📋Safari3/21/2016 Chrome Android3/7/20232542
css.at-rules.font-feature-values.annotation Safari3/21/2016 Chrome Android3/7/20232542
css.at-rules.font-feature-values.character-variant Safari3/21/2016 Chrome Android3/7/20232542
css.at-rules.font-feature-values.historical-forms Safari3/21/2016 Chrome Android3/7/20232542
css.at-rules.font-feature-values.ornaments Safari3/21/2016 Chrome Android3/7/20232542
css.at-rules.font-feature-values.styleset Safari3/21/2016 Chrome Android3/7/20232542
css.at-rules.font-feature-values.stylistic Safari3/21/2016 Chrome Android3/7/20232542
css.at-rules.font-feature-values.swash Safari3/21/2016 Chrome Android3/7/20232542
css.at-rules.font-palette-values 📋Safari3/14/2022 Chrome Android4/26/202243
css.at-rules.font-palette-values.base-palette 📋Safari3/14/2022 Chrome Android4/26/202243
css.at-rules.font-palette-values.font-family 📋Safari3/14/2022 Chrome Android4/26/202243
css.at-rules.font-palette-values.override-colors 📋Safari3/14/2022 Chrome Android4/26/202243
css.at-rules.import 📋Safari6/23/2003 Chrome Android6/27/20123292
css.at-rules.import.layer 📋Chrome Android3/1/2022 Safari3/14/202213
css.at-rules.import.supports 📋Chrome Android2/20/2024 Safari5/13/202483
css.at-rules.keyframes 📋Chrome Android5/27/2015 Safari9/30/2015126
css.at-rules.keyframes.ignore_important_declarations Chrome Android9/1/2015 Safari3/27/2017573
css.at-rules.keyframes.named_range_keyframes 📋Chrome Android7/21/2023 Safari9/15/2025787
css.at-rules.layer 📋Chrome Android3/1/2022 Safari3/14/202213
css.at-rules.media 📋Safari10/26/2007 Chrome Android6/27/20121706
css.at-rules.media.-webkit-device-pixel-ratio 📋Safari10/26/2007 Chrome Android6/27/20121706
Firefox: Implemented as an alias for -moz-device-pixel-ratio.Firefox for Android: Implemented as an alias for -moz-device-pixel-ratio.
css.at-rules.media.-webkit-max-device-pixel-ratio 📋Safari10/26/2007 Chrome Android6/27/20121706
Firefox: Implemented as an alias for max--moz-device-pixel-ratio.Firefox for Android: Implemented as an alias for max--moz-device-pixel-ratio.
css.at-rules.media.-webkit-min-device-pixel-ratio 📋Safari10/26/2007 Chrome Android6/27/20121706
Firefox: Implemented as an alias for min--moz-device-pixel-ratio.Firefox for Android: Implemented as an alias for min--moz-device-pixel-ratio.
css.at-rules.media.-webkit-transform-3d 📋Safari6/8/2009 Chrome Android6/27/20121115
css.at-rules.media.any-hover 📋Chrome Android3/11/2015 Safari9/30/2015203
css.at-rules.media.any-pointer 📋Chrome Android3/11/2015 Safari9/30/2015203
css.at-rules.media.aspect-ratio 📋Safari6/7/2010 Chrome Android6/27/2012751
css.at-rules.media.calc 📋Chrome Android4/17/2018 Safari9/17/2018153
css.at-rules.media.color 📋Safari10/26/2007 Chrome Android6/27/20121706
css.at-rules.media.color-gamut 📋Safari9/20/2016 Chrome Android4/25/2017217
css.at-rules.media.color-gamut.p3 📋Safari9/20/2016 Chrome Android4/25/2017217
Firefox: color-gamut: p3 is always false because Firefox does not support wide-gamut color. See bug 1626624.Firefox for Android: color-gamut: p3 is always false because Firefox for Android does not support wide-gamut color. See bug 1626624.
css.at-rules.media.color-gamut.rec2020 📋Safari9/20/2016 Chrome Android4/25/2017217
Firefox: color-gamut: rec2020 is always false because Firefox does not support wide-gamut color. See bug 1626624.Firefox for Android: color-gamut: rec2020 is always false because Firefox for Android does not support wide-gamut color. See bug 1626624.
css.at-rules.media.color-gamut.srgb 📋Safari9/20/2016 Chrome Android4/25/2017217
Firefox: color-gamut: srgb is always true because Firefox does not support wide-gamut color. See bug 1626624.Firefox for Android: color-gamut: srgb is always true because Firefox for Android does not support wide-gamut color. See bug 1626624.
css.at-rules.media.color-index 📋Chrome Android8/21/2013 Safari10/16/2014421
css.at-rules.media.device-aspect-ratio 📋Safari10/26/2007 Chrome Android6/27/20121706
css.at-rules.media.device-height 📋Safari10/26/2007 Chrome Android6/27/20121706
css.at-rules.media.device-width 📋Safari10/26/2007 Chrome Android6/27/20121706
css.at-rules.media.display-mode 📋Chrome Android4/15/2015 Safari9/19/20191618
css.at-rules.media.display-mode.browser 📋Chrome Android4/15/2015 Safari9/19/20191618
Firefox for Android: display-mode: browser is always true.Safari: In a Safari browser window, display-mode: browser is always true, even in a macOS Full Screen window or when using the Fullscreen API. In an installed web application, other display-mode values are true only when given by a supported manifest display member value. See mdn/browser-compat-data#18807 (comment).Safari on iOS: In the Safari app, display-mode: browser is always true, even when using the Fullscreen API. In an installed web application, other display-mode values are true only when given by a supported manifest display member value. See mdn/browser-compat-data#18807 (comment).WebView on iOS: In the Safari app, display-mode: browser is always true, even when using the Fullscreen API. In an installed web application, other display-mode values are true only when given by a supported manifest display member value. See mdn/browser-compat-data#18807 (comment).
css.at-rules.media.display-mode.minimal-ui 📋Chrome Android4/15/2015 Safari9/19/20191618
Firefox: display-mode: minimal-ui is never true.Safari: display-mode: minimal-ui is never true.Safari on iOS: display-mode: minimal-ui is never true.WebView on iOS: display-mode: minimal-ui is never true.
css.at-rules.media.display-mode.standalone 📋Chrome Android4/15/2015 Safari9/19/20191618
Firefox: display-mode: standalone is never true.Safari on iOS: In an installed web application with the display manifest member set to standalone, display-mode: standalone is false and display-mode: fullscreen is true. See bug 264218.WebView on iOS: In an installed web application with the display manifest member set to standalone, display-mode: standalone is false and display-mode: fullscreen is true. See bug 264218.
css.at-rules.media.dynamic-range 📋Safari3/24/2020 Chrome Android2/1/2022679
css.at-rules.media.forced-colors 📋Chrome Android3/2/2021 Safari9/12/2022559
css.at-rules.media.grid 📋Safari10/26/2007 Chrome Android6/27/20121706
css.at-rules.media.height 📋Safari10/26/2007 Chrome Android6/27/20121706
css.at-rules.media.hover 📋Safari9/30/2015 Chrome Android4/13/2016196
Chrome: Before Chrome 41, the implementation was buggy and reported (hover: none) on non-touch-based computers with a mouse/trackpad. See bug 40397980.Chrome Android: On some Android devices, such as certain Samsung models, the (hover: hover) media query may incorrectly match. See bug 41445959.Quest Browser: On some Android devices, such as certain Samsung models, the (hover: hover) media query may incorrectly match. See bug 41445959.Opera: Before Opera 28, the implementation was buggy and reported (hover: none) on non-touch-based computers with a mouse/trackpad. See bug 40397980.Opera Android: On some Android devices, such as certain Samsung models, the (hover: hover) media query may incorrectly match. See bug 41445959.Samsung Internet: On some Android devices, such as certain Samsung models, the (hover: hover) media query may incorrectly match. See bug 41445959.WebView Android: On some Android devices, such as certain Samsung models, the (hover: hover) media query may incorrectly match. See bug 41445959.
css.at-rules.media.media_features Safari10/26/2007 Chrome Android6/27/20121706
css.at-rules.media.monochrome 📋Safari10/26/2007 Chrome Android6/27/20121706
css.at-rules.media.nested-queries Chrome Android4/3/2013 Safari10/22/2013202
css.at-rules.media.or_syntax Chrome Android8/2/2022 Safari3/27/2023237
css.at-rules.media.orientation 📋Safari6/7/2010 Chrome Android6/27/2012751
css.at-rules.media.overflow-block 📋Chrome Android5/2/2023 Safari9/18/2023139
css.at-rules.media.overflow-inline 📋Chrome Android5/2/2023 Safari9/18/2023139
css.at-rules.media.pointer 📋Safari9/30/2015 Chrome Android4/13/2016196
css.at-rules.media.prefers-color-scheme 📋Safari3/25/2019 Chrome Android7/30/2019127
css.at-rules.media.prefers-contrast 📋Safari4/26/2021 Chrome Android11/15/2021203
css.at-rules.media.prefers-reduced-motion 📋Safari3/27/2017 Chrome Android4/24/2019758
css.at-rules.media.range_syntax Chrome Android8/2/2022 Safari3/27/2023237
Firefox: Only supports range notations where the feature name comes before any value (width > 500px)Firefox for Android: Only supports range notations where the feature name comes before any value (width > 500px)
css.at-rules.media.resolution 📋Chrome Android8/21/2013 Safari9/12/20223309
Firefox: Supports <integer> values only.Firefox for Android: Supports <integer> values only.
css.at-rules.media.scan 📋Chrome Android8/2/2022 Safari3/27/2023237
css.at-rules.media.scripting 📋Safari9/18/2023 Chrome Android12/5/202378
css.at-rules.media.update 📋Chrome Android5/2/2023 Safari9/18/2023139
css.at-rules.media.width 📋Safari10/26/2007 Chrome Android6/27/20121706
css.at-rules.namespace 📋Safari6/23/2003 Chrome Android6/27/20123292
css.at-rules.page 📋Chrome Android6/27/2012 Safari12/11/20244550
css.at-rules.page.size 📋Chrome Android6/27/2012 Safari12/11/20244550
css.at-rules.page.size.jis-b4 📋Chrome Android5/19/2020 Safari12/11/20241667
css.at-rules.page.size.jis-b5 📋Chrome Android5/19/2020 Safari12/11/20241667
css.at-rules.position-try 📋Chrome Android5/14/2024 Safari9/15/2025489
css.at-rules.property 📋Chrome Android8/25/2020 Safari3/27/2023944
css.at-rules.property.inherits 📋Chrome Android8/25/2020 Safari3/27/2023944
css.at-rules.property.initial-value 📋Chrome Android8/25/2020 Safari3/27/2023944
css.at-rules.property.syntax 📋Chrome Android8/25/2020 Safari3/27/2023944
css.at-rules.scope 📋Chrome Android10/10/2023 Safari3/5/2024147
css.at-rules.starting-style 📋Chrome Android9/12/2023 Safari5/13/2024244
css.at-rules.supports 📋Chrome Android7/10/2013 Safari9/30/2015812
css.at-rules.supports.font-format Chrome Android11/29/2022 Safari9/18/2023293
css.at-rules.supports.font-tech Chrome Android11/29/2022 Safari9/18/2023293
css.at-rules.supports.selector Chrome Android5/19/2020 Safari4/26/2021342
css.at-rules.view-transition 📋Chrome Android6/11/2024 Safari12/11/2024183
css.properties.-webkit-border-before Safari7/20/2011 Chrome Android6/27/2012343
css.properties.-webkit-border-horizontal-spacing Safari6/8/2009 Chrome Android6/27/20121115
css.properties.-webkit-border-vertical-spacing Safari6/8/2009 Chrome Android6/27/20121115
css.properties.-webkit-box-reflect Safari6/8/2009 Chrome Android6/27/20121115
css.properties.-webkit-column-break-after Safari6/8/2009 Chrome Android6/27/20121115
css.properties.-webkit-column-break-before Safari6/8/2009 Chrome Android6/27/20121115
css.properties.-webkit-column-break-inside Safari6/8/2009 Chrome Android6/27/20121115
css.properties.-webkit-locale Safari7/20/2011 Chrome Android6/27/2012343
css.properties.-webkit-logical-height Safari7/20/2011 Chrome Android6/27/2012343
css.properties.-webkit-logical-width Safari7/20/2011 Chrome Android6/27/2012343
css.properties.-webkit-margin-after Safari7/20/2011 Chrome Android6/27/2012343
css.properties.-webkit-margin-before Safari7/20/2011 Chrome Android6/27/2012343
css.properties.-webkit-mask-box-image Safari3/18/2008 Chrome Android6/27/20121562
css.properties.-webkit-mask-composite Safari3/18/2008 Chrome Android6/27/20121562
css.properties.-webkit-mask-position-x Safari3/18/2008 Chrome Android6/27/20121562
css.properties.-webkit-mask-position-y Safari3/18/2008 Chrome Android6/27/20121562
css.properties.-webkit-max-logical-height Safari7/20/2011 Chrome Android6/27/2012343
css.properties.-webkit-max-logical-width Safari7/20/2011 Chrome Android6/27/2012343
css.properties.-webkit-min-logical-height Safari7/20/2011 Chrome Android6/27/2012343
css.properties.-webkit-min-logical-width Safari7/20/2011 Chrome Android6/27/2012343
css.properties.-webkit-perspective-origin-x Safari6/8/2009 Chrome Android6/27/20121115
css.properties.-webkit-perspective-origin-y Safari6/8/2009 Chrome Android6/27/20121115
css.properties.-webkit-rtl-ordering Safari6/8/2009 Chrome Android6/27/20121115
css.properties.-webkit-text-combine Safari7/20/2011 Chrome Android6/27/2012343
css.properties.-webkit-text-fill-color 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.-webkit-text-security Safari10/26/2007 Chrome Android6/27/20121706
css.properties.-webkit-text-stroke 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.-webkit-text-stroke-color 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.-webkit-text-stroke-width 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.-webkit-transform-origin-x Safari6/8/2009 Chrome Android6/27/20121115
css.properties.-webkit-transform-origin-y Safari6/8/2009 Chrome Android6/27/20121115
css.properties.-webkit-transform-origin-z Safari6/8/2009 Chrome Android6/27/20121115
css.properties.-webkit-user-drag Safari6/8/2009 Chrome Android6/27/20121115
css.properties.accent-color 📋Chrome Android8/31/2021 Safari3/14/2022195
Chrome Android: Chrome for Android does not maintain minimum contrast for legibility of the control. See bug 343503163.Quest Browser: Chrome for Android does not maintain minimum contrast for legibility of the control. See bug 343503163.Opera Android: Chrome for Android does not maintain minimum contrast for legibility of the control. See bug 343503163.Safari: Safari does not maintain minimum contrast for legibility of the control. See bug 244233.Safari on iOS: Safari on iOS does not maintain minimum contrast for legibility of the control. See bug 244233.Samsung Internet: Chrome for Android does not maintain minimum contrast for legibility of the control. See bug 343503163.WebView Android: Chrome for Android does not maintain minimum contrast for legibility of the control. See bug 343503163.WebView on iOS: WebView on iOS does not maintain minimum contrast for legibility of the control. See bug 244233.
css.properties.accent-color.auto Chrome Android8/31/2021 Safari3/14/2022195
css.properties.align-content 📋Chrome Android8/21/2013 Safari9/30/2015770
css.properties.align-content.block_context 📋Safari3/5/2024 Chrome Android3/19/202414
css.properties.align-content.flex_context 📋Chrome Android2/27/2013 Safari9/30/2015945
css.properties.align-content.flex_context.baseline Safari9/30/2015 Chrome Android3/16/2017533
css.properties.align-content.flex_context.first_baseline Chrome Android6/6/2017 Safari9/19/2017105
css.properties.align-content.flex_context.safe_unsafe Chrome Android7/21/2023 Safari7/29/2024374
Chrome: Before version 115, this value is recognized, but has no effect.Chrome Android: Before version 115, this value is recognized, but has no effect.Edge: Before version 115, this value is recognized, but has no effect.Opera: Before version 101, this value is recognized, but has no effect.Opera Android: Before version 77, this value is recognized, but has no effect.Samsung Internet: Before version 23.0, this value is recognized, but has no effect.WebView Android: Before version 115, this value is recognized, but has no effect.
css.properties.align-content.flex_context.space-evenly Chrome Android8/1/2017 Safari9/19/201749
css.properties.align-content.flex_context.start_end Chrome Android8/31/2021 Safari7/20/2022323
Opera: Before version 79, this value is recognized, but has no effect.Opera Android: This value is recognized, but has no effect.
css.properties.align-content.flex_context.stretch Safari9/30/2015 Chrome Android3/16/2017533
css.properties.align-content.grid_context 📋Chrome Android7/27/2016 Safari3/27/2017243
css.properties.align-content.multicol_context 📋Safari3/5/2024 Chrome Android3/19/202414
css.properties.align-content.normal 📋Chrome Android8/21/2013 Safari9/30/2015770
css.properties.align-items 📋Chrome Android8/21/2013 Safari9/30/2015770
css.properties.align-items.anchor-center 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.align-items.flex_context 📋Safari10/22/2013 Chrome Android7/27/20161009
Chrome: Older versions of the specification treat absolute positioned children as though they are a 0 by 0 flex item. Later specification versions take the children out of the flow and set their positions based on align and justify properties. Chrome implements the new behavior beginning with Chrome 52.Chrome Android: Older versions of the specification treat absolute positioned children as though they are a 0 by 0 flex item. Later specification versions take the children out of the flow and set their positions based on align and justify properties. Chrome Android implements the new behavior beginning with Chrome Android 52.Firefox: Multi-line flexbox has been supported since Firefox 28.Firefox for Android: Multi-line flexbox has been supported since Firefox for Android 28.Internet Explorer: In Internet Explorer 10 and 11, if column flex items have align-items: center; set on them and their content is too large, then they will overflow the bounds of their container. See Flexbug #2.Opera: Older versions of the specification treat absolute positioned children as though they are a 0 by 0 flex item. Later specification versions take the children out of the flow and set their positions based on align and justify properties. Opera implements the new behavior beginning with Opera 39.Opera Android: Older versions of the specification treat absolute positioned children as though they are a 0 by 0 flex item. Later specification versions take the children out of the flow and set their positions based on align and justify properties. Opera Android implements the new behavior beginning with Opera Android 41.Samsung Internet: Older versions of the specification treat absolute positioned children as though they are a 0 by 0 flex item. Later specification versions take the children out of the flow and set their positions based on align and justify properties. Samsung Internet implements the new behavior beginning with Samsung Internet 6.0.WebView Android: Older versions of the specification treat absolute positioned children as though they are a 0 by 0 flex item. Later specification versions take the children out of the flow and set their positions based on align and justify properties. WebView Android implements the new behavior beginning with WebView Android 52.
css.properties.align-items.flex_context.baseline Chrome Android2/27/2013 Safari10/22/2013237
css.properties.align-items.flex_context.first_baseline Chrome Android6/6/2017 Safari9/19/2017105
css.properties.align-items.flex_context.last_baseline Chrome Android11/29/2022 Safari12/13/202214
css.properties.align-items.flex_context.safe_unsafe Chrome Android7/21/2023 Safari7/29/2024374
Chrome: Before version 115, this value is recognized, but has no effect.Chrome Android: Before version 115, this value is recognized, but has no effect.Edge: Before version 115, this value is recognized, but has no effect.Opera: Before version 101, this value is recognized, but has no effect.Opera Android: Before version 77, this value is recognized, but has no effect.Samsung Internet: Before version 23.0, this value is recognized, but has no effect.WebView Android: Before version 115, this value is recognized, but has no effect.
css.properties.align-items.flex_context.start_end Chrome Android8/31/2021 Safari3/14/2022195
css.properties.align-items.grid_context 📋Chrome Android7/27/2016 Safari3/27/2017243
css.properties.align-items.grid_context.start_end Chrome Android3/16/2017 Safari9/19/2017187
css.properties.align-self 📋Chrome Android8/21/2013 Safari9/30/2015770
css.properties.align-self.anchor-center 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.align-self.auto 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.align-self.flex_context 📋Safari10/22/2013 Chrome Android7/16/2014267
Chrome: Older versions of the specification treat absolute positioned children as though they are a 0 by 0 flex item. Later specification versions take the children out of the flow and set their positions based on align and justify properties. Chrome implements the new behavior beginning with Chrome 52.Chrome Android: Older versions of the specification treat absolute positioned children as though they are a 0 by 0 flex item. Later specification versions take the children out of the flow and set their positions based on align and justify properties. Chrome Android implements the new behavior beginning with Chrome Android 52.Firefox: Before Firefox 27, only single-line flexbox is supported.Firefox for Android: Before Firefox for Android 27, only single-line flexbox is supported.Samsung Internet: Older versions of the specification treat absolute positioned children as though they are a 0 by 0 flex item. Later specification versions take the children out of the flow and set their positions based on align and justify properties. Samsung Internet implements the new behavior beginning with Samsung Internet 6.0.WebView Android: Older versions of the specification treat absolute positioned children as though they are a 0 by 0 flex item. Later specification versions take the children out of the flow and set their positions based on align and justify properties. WebView Android implements the new behavior beginning with WebView Android 52.
css.properties.align-self.flex_context.baseline 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.align-self.flex_context.first_baseline Chrome Android6/6/2017 Safari9/19/2017105
css.properties.align-self.flex_context.last_baseline Chrome Android11/29/2022 Safari12/13/202214
css.properties.align-self.flex_context.safe_unsafe Chrome Android7/21/2023 Safari7/29/2024374
Chrome: Before version 115, this value is recognized, but has no effect.Chrome Android: Before version 115, this value is recognized, but has no effect.Edge: Before version 115, this value is recognized, but has no effect.Opera: Before version 101, this value is recognized, but has no effect.Opera Android: Before version 77, this value is recognized, but has no effect.Samsung Internet: Before version 23.0, this value is recognized, but has no effect.WebView Android: Before version 115, this value is recognized, but has no effect.
css.properties.align-self.flex_context.start_end Chrome Android8/31/2021 Safari3/14/2022195
Opera: Before version 79, this value is recognized, but has no effect.
css.properties.align-self.flex_context.stretch 📋Safari9/30/2015 Chrome Android3/16/2017533
css.properties.align-self.grid_context 📋Chrome Android7/27/2016 Safari3/27/2017243
Internet Explorer: Internet Explorer 10 and 11 have the property -ms-grid-row-align, which acts in a similar way to align-self.
css.properties.align-self.normal 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.align-self.stretch 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.alignment-baseline 📋Safari7/20/2011 Chrome Android6/27/2012343
css.properties.alignment-baseline.alphabetic Safari7/20/2011 Chrome Android6/27/2012343
css.properties.alignment-baseline.baseline Safari7/20/2011 Chrome Android6/27/2012343
css.properties.alignment-baseline.central Safari7/20/2011 Chrome Android6/27/2012343
css.properties.alignment-baseline.ideographic Safari7/20/2011 Chrome Android6/27/2012343
css.properties.alignment-baseline.mathematical Safari7/20/2011 Chrome Android6/27/2012343
css.properties.alignment-baseline.middle Safari7/20/2011 Chrome Android6/27/2012343
css.properties.alignment-baseline.text-after-edge Safari7/20/2011 Chrome Android6/27/2012343
css.properties.alignment-baseline.text-before-edge Safari7/20/2011 Chrome Android6/27/2012343
css.properties.all 📋Chrome Android9/3/2014 Safari3/21/2016565
css.properties.anchor-name 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.anchor-name.none 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.anchor-scope 📋Chrome Android11/12/2024 Safari9/15/2025307
css.properties.anchor-scope.all 📋Chrome Android11/12/2024 Safari9/15/2025307
css.properties.anchor-scope.none 📋Chrome Android11/12/2024 Safari9/15/2025307
css.properties.animation 📋Chrome Android5/27/2015 Safari9/30/2015126
WebView Android: The animation-fill-mode property is not supported in Android browsers below 2.3.
css.properties.animation.alternate 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.alternate-reverse 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.auto 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.backwards 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.both 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.ease 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.ease-in 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.ease-in-out 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.ease-out 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.forwards 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.infinite 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.linear 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.none 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.normal 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.paused 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.reverse 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.running 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.step-end 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation.step-start 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation-composition 📋Safari9/12/2022 Chrome Android4/4/2023204
css.properties.animation-composition.accumulate 📋Safari9/12/2022 Chrome Android4/4/2023204
css.properties.animation-composition.add 📋Safari9/12/2022 Chrome Android4/4/2023204
css.properties.animation-composition.replace 📋Safari9/12/2022 Chrome Android4/4/2023204
css.properties.animation-delay 📋Chrome Android5/27/2015 Safari9/30/2015126
Firefox: Before Firefox 57, Firefox does not repaint elements outside the viewport that are animated into the viewport with a delay. This bug affects only some platforms, such as Windows.
css.properties.animation-direction 📋Chrome Android5/27/2015 Safari9/30/2015126
css.properties.animation-direction.alternate 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation-direction.alternate-reverse 📋Safari7/25/2012 Chrome Android2/27/2013217
css.properties.animation-direction.normal 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation-direction.reverse 📋Safari7/25/2012 Chrome Android2/27/2013217
css.properties.animation-duration 📋Chrome Android5/27/2015 Safari9/30/2015126
Internet Explorer: Once the element has loaded, changing the value of this property has no effect.
css.properties.animation-duration.auto 📋Chrome Android7/21/2023 Safari3/31/2025619
Firefox: Firefox does not currently support the auto value and only accepts values in seconds or milliseconds. It's recommended that 1ms is used until auto is supported.Firefox for Android: Firefox for Android does not currently support the auto value and only accepts values in seconds or milliseconds. It's recommended that 1ms is used until auto is supported.
css.properties.animation-fill-mode 📋Chrome Android5/27/2015 Safari9/30/2015126
css.properties.animation-fill-mode.backwards 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.animation-fill-mode.both 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.animation-fill-mode.forwards 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.animation-fill-mode.none 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.animation-iteration-count 📋Chrome Android5/27/2015 Safari9/30/2015126
css.properties.animation-iteration-count.infinite 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation-name 📋Chrome Android5/27/2015 Safari9/30/2015126
css.properties.animation-name.none 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation-play-state 📋Chrome Android5/27/2015 Safari9/30/2015126
css.properties.animation-play-state.paused 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation-play-state.running 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation-range 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.animation-range.normal 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.animation-range-end 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.animation-range-end.normal 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.animation-range-start 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.animation-range-start.normal 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.animation-timeline 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.animation-timeline.auto 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.animation-timeline.none 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.animation-timeline.scroll 📋Chrome Android7/21/2023 Safari9/15/2025787
Firefox: Zero scroll range is treated as 100% but should be 0% (see bug 1780865).Firefox: Supports the deprecated horizontal and vertical axis values, and not the x and y values.
css.properties.animation-timeline.view 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.animation-timing-function 📋Chrome Android5/27/2015 Safari9/30/2015126
css.properties.animation-timing-function.ease 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation-timing-function.ease-in 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation-timing-function.ease-in-out 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation-timing-function.ease-out 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation-timing-function.jump Chrome Android9/10/2019 Safari9/16/2020372
css.properties.animation-timing-function.linear 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation-timing-function.step-end 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.animation-timing-function.step-start 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.appearance 📋Chrome Android7/27/2020 Safari3/14/2022595
css.properties.appearance.auto 📋Chrome Android5/19/2020 Safari3/14/2022664
css.properties.appearance.button 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.appearance.checkbox 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.appearance.listbox 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.appearance.menulist 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.appearance.menulist-button 📋Safari10/26/2007 Chrome Android6/27/20121706
Firefox: See bug 1481615.Firefox for Android: See bug 1481615.
css.properties.appearance.meter 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.appearance.none 📋Safari10/26/2007 Chrome Android6/27/20121706
Firefox: Doesn't work with <input type="checkbox"> and <input type="radio">.Firefox for Android: Doesn't work with <input type="checkbox"> and <input type="radio">.
css.properties.appearance.progress-bar 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.appearance.radio 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.appearance.searchfield 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.appearance.textarea 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.appearance.textfield 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.aspect-ratio 📋Chrome Android1/19/2021 Safari9/20/2021244
css.properties.aspect-ratio.auto 📋Chrome Android1/19/2021 Safari9/20/2021244
css.properties.backdrop-filter 📋Chrome Android7/30/2019 Safari9/16/20241875
Firefox: Before Firefox 123, the property was not supported on systems with unknown GPU vendor (see bug 1868737).Firefox for Android: Before Firefox for Android 123, the property was not supported on systems with unknown GPU vendor (see bug 1868737).
css.properties.backdrop-filter.none 📋Safari9/30/2015 Chrome Android7/30/20191399
css.properties.backface-visibility 📋Chrome Android7/16/2014 Safari3/14/20222798
css.properties.backface-visibility.hidden 📋Safari7/20/2011 Chrome Android6/27/2012343
css.properties.backface-visibility.visible 📋Safari7/20/2011 Chrome Android6/27/2012343
css.properties.background 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background.SVG_image_as_background Safari3/18/2008 Chrome Android6/27/20121562
css.properties.background.background-clip Safari7/20/2011 Chrome Android2/27/2013588
css.properties.background.background-origin Safari7/20/2011 Chrome Android2/27/2013588
css.properties.background.background-size Safari7/20/2011 Chrome Android2/27/2013588
css.properties.background.border-box 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.background.bottom 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.background.center 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.background.content-box 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.background.currentColor 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.background.fixed 📋Chrome Android6/27/2012 Safari3/21/20161363
css.properties.background.left 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.background.local 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background.multiple_backgrounds Safari4/15/2005 Chrome Android6/27/20122630
css.properties.background.no-repeat 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background.padding-box 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.background.repeat 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background.repeat-x 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background.repeat-y 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background.right 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.background.round 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background.scroll 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background.space 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background.top 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.background.transparent 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-attachment 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-attachment.fixed 📋Chrome Android6/27/2012 Safari3/14/20223547
Safari: fixed is recognized but has no effect. See related bug 219324.Safari on iOS: fixed is recognized but has no effect. See bug 275247.WebView on iOS: fixed is recognized but has no effect. See bug 275247.
css.properties.background-attachment.local 📋Chrome Android6/27/2012 Safari3/14/20223547
Safari: local is recognized but has no effect. See bug 219324.Safari on iOS: local is recognized but has no effect. See bug 219324.Safari on iOS: If -webkit-overflow-scrolling: touch is set, then local has no effect.WebView on iOS: local is recognized but has no effect. See bug 219324.WebView on iOS: If -webkit-overflow-scrolling: touch is set, then local has no effect.
css.properties.background-attachment.multiple_backgrounds Safari4/15/2005 Chrome Android6/27/20122630
css.properties.background-attachment.scroll 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-blend-mode 📋Chrome Android5/20/2014 Safari10/16/2014149
css.properties.background-clip 📋Safari6/7/2010 Chrome Android6/27/2012751
Chrome: Chrome accepts alternate synonyms to its values: padding, border, and content.Chrome Android: Chrome Android accepts alternate synonyms to its values: padding, border, and content.Edge: Since Edge 79, accepts alternate synonyms to its values: padding, border, and content.Firefox: Used the -moz-background-clip: padding | border syntax.Internet Explorer: In IE 7 and IE 8 of Internet Explorer, this property always behaved like background-clip: padding-box when overflow was hidden, auto, or scroll.Quest Browser: Quest Browser accepts alternate synonyms to its values: padding, border, and content.Opera: Opera accepts alternate synonyms to its values: padding, border, and content.Opera Android: Opera accepts alternate synonyms to its values: padding, border, and content.Safari: Safari accepts alternate synonyms to its values: padding, border, and content.Safari on iOS: Safari accepts alternate synonyms to its values: padding, border, and content.Samsung Internet: Samsung Internet accepts alternate synonyms to its values: padding, border, and content.WebView Android: WebView Android accepts alternate synonyms to its values: padding, border, and content.WebView on iOS: Safari accepts alternate synonyms to its values: padding, border, and content.
css.properties.background-clip.border-box 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.background-clip.content-box 📋Safari10/26/2007 Chrome Android6/27/20121706
Internet Explorer: In IE 7 and IE 9 of Internet Explorer, it always behaved like background-clip: padding-box if overflow: hidden | auto | scroll
css.properties.background-clip.padding-box 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.background-clip.text 📋Safari9/16/2020 Chrome Android12/5/20231175
Chrome: The text value is only supported by -webkit-background-clip (and not by background-clip; see bug 40229927).Chrome Android: The text value is only supported by -webkit-background-clip (and not by background-clip; see bug 40229927).Edge: The text value is only supported by -webkit-background-clip (and not by background-clip; see bug 40229927).Edge: Before Edge 15, this value was supported with the prefixed version of the property only.Firefox: Does not work with background-attachment: fixed (bug 1313757), in multi-layer backgrounds with other values (bug 1481498), and in some other special cases (see bug 1656784).Firefox for Android: Does not work with background-attachment: fixed (bug 1313757), in multi-layer backgrounds with other values (bug 1481498), and in some other special cases (see bug 1656784).Quest Browser: The text value is only supported by -webkit-background-clip (and not by background-clip; see bug 40229927).Opera: The text value is only supported by -webkit-background-clip (and not by background-clip; see bug 40229927).Opera Android: The text value is only supported by -webkit-background-clip (and not by background-clip; see bug 40229927).Safari: The text value is only supported by -webkit-background-clip (and not by background-clip).Safari on iOS: The text value is only supported by -webkit-background-clip (and not by background-clip).Samsung Internet: The text value is only supported by -webkit-background-clip (and not by background-clip; see bug 40229927).WebView Android: The text value is only supported by -webkit-background-clip (and not by background-clip; see bug 40229927).WebView on iOS: The text value is only supported by -webkit-background-clip (and not by background-clip).
css.properties.background-color 📋Safari6/23/2003 Chrome Android6/27/20123292
Internet Explorer: In Internet Explorer 8 and 9, there is a bug where a computed background-color of transparent causes click events to not get fired on overlaid elements.
css.properties.background-color.currentColor 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.background-color.transparent 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-image 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: If the browser.display.use_document_colors user preference in about:config is set to false, background images will not be displayed.Firefox for Android: If the browser.display.use_document_colors user preference in about:config is set to false, background images will not be displayed.
css.properties.background-image.gradients 📋Safari6/8/2009 Chrome Android6/27/20121115
Chrome: Some versions support only experimental gradients prefixed with -webkit.Chrome Android: Some versions support only experimental gradients prefixed with -webkit.Firefox: Some versions support only experimental gradients prefixed with -moz.Firefox for Android: Some versions support only experimental gradients prefixed with -moz.Quest Browser: Some versions support only experimental gradients prefixed with -webkit.Opera: Some versions support only experimental gradients prefixed with -o.Opera Android: Some versions support only experimental gradients prefixed with -webkit.Safari: Some versions support only experimental gradients prefixed with -webkit.Safari on iOS: Some versions support only experimental gradients prefixed with -webkit.Samsung Internet: Some versions support only experimental gradients prefixed with -webkit.WebView Android: Some versions support only experimental gradients prefixed with -webkit.WebView on iOS: Some versions support only experimental gradients prefixed with -webkit.
css.properties.background-image.image-set 📋Chrome Android5/2/2023 Safari9/18/2023139
Chrome: Support for url images only and x is the only supported resolution unit.Chrome Android: Support for url images only and x is the only supported resolution unit.Edge: Support for url images only and x is the only supported resolution unit.Firefox: The type() function is not supported as an argument to image-set().Firefox for Android: The type() function is not supported as an argument to image-set().Quest Browser: Support for url images only and x is the only supported resolution unit.Opera: Support for url images only and x is the only supported resolution unit.Opera Android: Support for url images only and x is the only supported resolution unit.Safari: The type() function is not supported as an argument to image-set().Safari: The type() function is not supported as an argument to image-set().Safari: Support for url images only and x is the only supported resolution unit.Safari: Support for url images only and x is the only supported resolution unit.Safari on iOS: The type() function is not supported as an argument to image-set().Safari on iOS: The type() function is not supported as an argument to image-set().Safari on iOS: Support for url images only and x is the only supported resolution unit.Safari on iOS: Support for url images only and x is the only supported resolution unit.Samsung Internet: Support for url images only and x is the only supported resolution unit.WebView Android: Support for url images only and x is the only supported resolution unit.WebView on iOS: The type() function is not supported as an argument to image-set().WebView on iOS: The type() function is not supported as an argument to image-set().WebView on iOS: Support for url images only and x is the only supported resolution unit.WebView on iOS: Support for url images only and x is the only supported resolution unit.
css.properties.background-image.multiple_backgrounds Safari4/15/2005 Chrome Android6/27/20122630
css.properties.background-image.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-image.svg_images Safari6/7/2010 Chrome Android6/27/2012751
Safari: Support of SVG in CSS background is incomplete.Safari on iOS: Support of SVG in CSS background is incomplete.WebView on iOS: Support of SVG in CSS background is incomplete.
css.properties.background-origin 📋Safari10/26/2007 Chrome Android6/27/20121706
Chrome: Chrome accepts alternate synonyms to its values: padding, border, and content.Chrome Android: Chrome Android accepts alternate synonyms to its values: padding, border, and content.Edge: Since Edge 79, accepts alternate synonyms to its values: padding, border, and content.Firefox: Used the -moz-background-clip: padding | border syntax.Internet Explorer: In IE 7 and before, Internet explorer was behaving as if background-origin: border-box was set. In Internet Explorer 8, as if background-origin: padding-box, the regular default value, was set.Quest Browser: Quest Browser accepts alternate synonyms to its values: padding, border, and content.Opera: Opera accepts alternate synonyms to its values: padding, border, and content.Opera Android: Opera accepts alternate synonyms to its values: padding, border, and content.Safari: Webkit accepts alternate synonyms to its values: padding, border, and content.Safari on iOS: Webkit accepts alternate synonyms to its values: padding, border, and content.Samsung Internet: Samsung Internet accepts alternate synonyms to its values: padding, border, and content.WebView Android: WebView accepts alternate synonyms to its values: padding, border, and content.WebView on iOS: Webkit accepts alternate synonyms to its values: padding, border, and content.
css.properties.background-origin.border-box 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.background-origin.content-box 📋Safari10/26/2007 Chrome Android6/27/20121706
Internet Explorer: In IE 7 and IE 9 of Internet Explorer, it always behaved like background-clip: padding if overflow: hidden | auto | scroll.
css.properties.background-origin.padding-box 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.background-position 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-position.bottom 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-position.center 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-position.left 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-position.multiple_backgrounds Safari4/15/2005 Chrome Android6/27/20122630
css.properties.background-position.right 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-position.side-relative_values Chrome Android2/27/2013 Safari10/22/2013237
css.properties.background-position.top 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-position-x 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-position-x.side-relative_values Safari3/14/2022 Chrome Android1/13/20261401
css.properties.background-position-y 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-position-y.side-relative_values Safari3/14/2022 Chrome Android1/13/20261401
css.properties.background-repeat 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-repeat.2-value Safari6/7/2010 Chrome Android6/27/2012751
css.properties.background-repeat.multiple_backgrounds Safari4/15/2005 Chrome Android6/27/20122630
css.properties.background-repeat.no-repeat 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-repeat.repeat 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-repeat.repeat-x 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-repeat.repeat-y 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.background-repeat.round 📋Chrome Android10/2/2013 Safari10/16/2014379
css.properties.background-repeat.space 📋Chrome Android10/2/2013 Safari10/16/2014379
css.properties.background-size 📋Safari6/7/2010 Chrome Android6/27/2012751
Chrome: WebKit-based browsers originally implemented an older draft of CSS3 background-size in which an omitted second value is treated as duplicating the first value; this draft does not include the contain or cover keywords.Chrome Android: WebKit-based browsers originally implemented an older draft of CSS3 background-size in which an omitted second value is treated as duplicating the first value; this draft does not include the contain or cover keywords.Quest Browser: WebKit-based browsers originally implemented an older draft of CSS3 background-size in which an omitted second value is treated as duplicating the first value; this draft does not include the contain or cover keywords.Opera: WebKit-based browsers originally implemented an older draft of CSS3 background-size in which an omitted second value is treated as duplicating the first value; this draft does not include the contain or cover keywords.Opera: Opera 9.5's computation of the background positioning area is incorrect for fixed backgrounds. Opera 9.5 also interprets the two-value form as a horizontal scaling factor and, from appearances, a vertical clipping dimension. This has been fixed in Opera 10.Opera Android: WebKit-based browsers originally implemented an older draft of CSS3 background-size in which an omitted second value is treated as duplicating the first value; this draft does not include the contain or cover keywords.Opera Android: Opera 9.5's computation of the background positioning area is incorrect for fixed backgrounds. Opera 9.5 also interprets the two-value form as a horizontal scaling factor and, from appearances, a vertical clipping dimension. This has been fixed in Opera 10.Safari: WebKit-based browsers originally implemented an older draft of CSS3 background-size in which an omitted second value is treated as duplicating the first value; this draft does not include the contain or cover keywords.Safari on iOS: WebKit-based browsers originally implemented an older draft of CSS3 background-size in which an omitted second value is treated as duplicating the first value; this draft does not include the contain or cover keywords.Samsung Internet: WebKit-based browsers originally implemented an older draft of CSS3 background-size in which an omitted second value is treated as duplicating the first value; this draft does not include the contain or cover keywords.WebView Android: WebKit-based browsers originally implemented an older draft of CSS3 background-size in which an omitted second value is treated as duplicating the first value; this draft does not include the contain or cover keywords.WebView on iOS: WebKit-based browsers originally implemented an older draft of CSS3 background-size in which an omitted second value is treated as duplicating the first value; this draft does not include the contain or cover keywords.
css.properties.background-size.auto 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.background-size.contain 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.background-size.cover 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.baseline-shift 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.baseline-shift.baseline 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.baseline-shift.sub 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.baseline-shift.super 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.block-size 📋Chrome Android3/16/2017 Safari3/25/2019739
css.properties.block-size.anchor-size 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.block-size.auto 📋Safari7/20/2011 Chrome Android6/27/2012343
css.properties.block-size.fit-content 📋Chrome Android3/16/2017 Safari3/25/2019739
css.properties.block-size.max-content Chrome Android3/16/2017 Safari3/25/2019739
css.properties.block-size.min-content Chrome Android3/16/2017 Safari3/25/2019739
css.properties.border 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border.currentColor 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.border.dashed 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border.dotted 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border.double 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border.groove 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border.hidden 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border.inset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border.medium 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border.outset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border.ridge 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border.solid 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border.thick 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border.thin 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border.transparent 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-block 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block.currentColor 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block.dashed 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block.dotted 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block.double 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block.groove 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block.hidden 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block.inset 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block.medium 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block.none 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block.outset 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block.ridge 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block.solid 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block.thick 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block.thin 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block.transparent 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-color 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-color.currentColor 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-color.transparent 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-end 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end.currentColor 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end.dashed 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end.dotted 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end.double 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end.groove 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end.hidden 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end.inset 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end.medium 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end.none 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end.outset 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end.ridge 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end.solid 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end.thick 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end.thin 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end.transparent 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-color 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-color.currentColor 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-color.transparent 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-style 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-style.dashed 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-style.dotted 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-style.double 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-style.groove 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-style.hidden 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-style.inset 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-style.none 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-style.outset 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-style.ridge 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-style.solid 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-width 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-width.medium 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-width.thick 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-end-width.thin 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start.currentColor 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start.dashed 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start.dotted 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start.double 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start.groove 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start.hidden 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start.inset 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start.medium 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start.none 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start.outset 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start.ridge 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start.solid 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start.thick 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start.thin 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start.transparent 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-color 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-color.currentColor 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-color.transparent 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-style 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-style.dashed 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-style.dotted 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-style.double 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-style.groove 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-style.hidden 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-style.inset 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-style.none 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-style.outset 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-style.ridge 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-style.solid 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-width 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-width.medium 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-width.thick 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-start-width.thin 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-block-style 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-style.dashed 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-style.dotted 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-style.double 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-style.groove 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-style.hidden 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-style.inset 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-style.none 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-style.outset 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-style.ridge 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-style.solid 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-width 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-width.medium 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-width.thick 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-block-width.thin 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-bottom 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom.currentColor 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.border-bottom.dashed 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom.dotted 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom.double 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom.groove 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom.hidden 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom.inset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom.medium 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom.outset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom.ridge 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom.solid 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom.thick 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom.thin 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom.transparent 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom-color 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom-color.currentColor 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.border-bottom-color.transparent 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom-left-radius 📋Safari6/7/2010 Chrome Android6/27/2012751
Firefox: Before Firefox 50, border styles of rounded corners were always rendered as if border-style was solid. This has been fixed in Firefox 50.Firefox for Android: Before Firefox for Android 50, border styles of rounded corners were always rendered as if border-style was solid. This has been fixed in Firefox for Android 50.
css.properties.border-bottom-left-radius.elliptical_corners Safari10/26/2007 Chrome Android6/27/20121706
css.properties.border-bottom-left-radius.percentages Safari6/7/2010 Chrome Android6/27/2012751
Firefox: Before Firefox 4, the <percentage> was relative to the width of the box even when specifying the radius for a height. This implied that -moz-border-radius-bottomright was always drawing an arc of circle, and never an ellipse, when followed by a single value.
css.properties.border-bottom-right-radius 📋Safari6/7/2010 Chrome Android6/27/2012751
Firefox: Before Firefox 50, border styles of rounded corners were always rendered as if border-style was solid. This has been fixed in Firefox 50.Firefox for Android: Before Firefox for Android 50, border styles of rounded corners were always rendered as if border-style was solid. This has been fixed in Firefox for Android 50.
css.properties.border-bottom-right-radius.elliptical_corners Safari10/26/2007 Chrome Android6/27/20121706
css.properties.border-bottom-right-radius.percentages Safari6/7/2010 Chrome Android6/27/2012751
Firefox: Before Firefox 4, the <percentage> was relative to the width of the box even when specifying the radius for a height. This implied that -moz-border-radius-bottomright was always drawing an arc of circle, and never an ellipse, when followed by a single value.
css.properties.border-bottom-style 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Before Firefox 50, border styles of rounded corners (with border-radius) were always rendered as if border-bottom-style was solid. This has been fixed in Firefox 50.Firefox for Android: Before Firefox for Android 50, border styles of rounded corners (with border-radius) were always rendered as if border-bottom-style was solid. This has been fixed in Firefox for Android 50.
css.properties.border-bottom-style.dashed 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom-style.dotted 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom-style.double 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom-style.groove 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom-style.hidden 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom-style.inset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom-style.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom-style.outset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom-style.ridge 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom-style.solid 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom-width 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom-width.medium 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom-width.thick 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-bottom-width.thin 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-collapse 📋Safari10/24/2003 Chrome Android6/27/20123169
css.properties.border-collapse.collapse Safari10/24/2003 Chrome Android6/27/20123169
css.properties.border-collapse.separate Safari10/24/2003 Chrome Android6/27/20123169
css.properties.border-color 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-color.currentColor 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.border-color.transparent 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-end-end-radius 📋Chrome Android3/2/2021 Safari9/20/2021202
css.properties.border-end-start-radius 📋Chrome Android3/2/2021 Safari9/20/2021202
css.properties.border-image 📋Chrome Android6/27/2012 Safari7/25/201228
Chrome: Before Chrome 112, a border image's absolute or percentage length width may not take precedence over a narrower border-width (bug 40541033).Chrome Android: Before Chrome Android 112, a border image's absolute or percentage length width may not take precedence over a narrower border-width (bug 40541033).Edge: Before Edge 112, a border image's absolute or percentage length width may not take precedence over a narrower border-width (bug 40541033).Firefox: Small SVGs are incorrectly stretched, because percentages in border-image-slice are computed to integers instead of floats (bug 1284797).Firefox: Until Firefox 47, SVGs without viewport were not sliced correctly (bug 619500).Firefox: From Firefox 48 until Firefox 49, SVGs without viewport are displayed the same as SVGs with viewport, but if the slices are not exactly 50%, they are incorrectly stretched (bug 1264809).Firefox: Until Firefox 57, an issue persisted for SVGs without viewport when e10s was disabled (bug 1290782).Firefox: Before Firefox 15, an earlier version of the specification was implemented, prefixed.Firefox for Android: Small SVGs are incorrectly stretched, because percentages in border-image-slice are computed to integers instead of floats (bug 1284797).Firefox for Android: Until Firefox for Android 47, SVGs without viewport were not sliced correctly (bug 619500).Firefox for Android: From Firefox for Android 48 until Firefox for Android 49, SVGs without viewport are displayed the same as SVGs with viewport, but if the slices are not exactly 50%, they are incorrectly stretched (bug 1264809).Firefox for Android: Until Firefox for Android 57, an issue persisted for SVGs without viewport when e10s was disabled (bug 1290782).Firefox for Android: Before Firefox for Android 15, an earlier version of the specification was implemented, prefixed.Quest Browser: Before Quest Browser false, a border image's absolute or percentage length width may not take precedence over a narrower border-width (bug 40541033).Opera: Before Opera 98, a border image's absolute or percentage length width may not take precedence over a narrower border-width (bug 40541033).Opera Android: A border image's absolute or percentage length width may not take precedence over a narrower border-width (bug 40541033).Samsung Internet: Before Samsung Internet 23.0, a border image's absolute or percentage length width may not take precedence over a narrower border-width (bug 40541033).WebView Android: Before WebView 112, a border image's absolute or percentage length width may not take precedence over a narrower border-width (bug 40541033).
css.properties.border-image.fill Chrome Android6/27/2012 Safari7/25/201228
css.properties.border-image.gradient Safari6/8/2009 Chrome Android6/27/20121115
css.properties.border-image.none 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.border-image.optional_border_image_slice Chrome Android6/27/2012 Safari7/25/201228
css.properties.border-image.repeat 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.border-image.round 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.border-image.space 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.border-image.stretch 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.border-image-outset 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.border-image-repeat 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.border-image-repeat.repeat 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.border-image-repeat.round 📋Chrome Android10/2/2013 Safari3/21/2016901
css.properties.border-image-repeat.space 📋Safari3/21/2016 Chrome Android2/1/2017317
css.properties.border-image-repeat.stretch 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.border-image-slice 📋Chrome Android6/27/2012 Safari7/25/201228
Firefox: Small SVGs are incorrectly stretched, because percentages in border-image-slice are computed to integers instead of floats (bug 1284797).Firefox: Until Firefox 47, SVGs without viewport were not sliced correctly (bug 619500).Firefox: From Firefox 48 until Firefox 49, SVGs without viewport are displayed the same as SVGs with viewport, but if the slices are not exactly 50%, they are incorrectly stretched (bug 1264809).Firefox: Until Firefox 57, an issue persisted for SVGs without viewport when e10s was disabled (bug 1290782).Firefox for Android: Small SVGs are incorrectly stretched, because percentages in border-image-slice are computed to integers instead of floats (bug 1284797).Firefox for Android: Until Firefox for Android 47, SVGs without viewport were not sliced correctly (bug 619500).Firefox for Android: From Firefox for Android 48 until Firefox for Android 49, SVGs without viewport are displayed the same as SVGs with viewport, but if the slices are not exactly 50%, they are incorrectly stretched (bug 1264809).Firefox for Android: Until Firefox for Android 57, an issue persisted for SVGs without viewport when e10s was disabled (bug 1290782).
css.properties.border-image-source 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.border-image-source.none 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.border-image-width 📋Chrome Android6/27/2012 Safari7/25/201228
Chrome: Before Chrome 112, a border image's absolute or percentage length width may not take precedence over a narrower border-width (bug 40541033).Chrome Android: Before Chrome Android 112, a border image's absolute or percentage length width may not take precedence over a narrower border-width (bug 40541033).Edge: Before Edge 112, a border image's absolute or percentage length width may not take precedence over a narrower border-width (bug 40541033).Quest Browser: Before Quest Browser false, a border image's absolute or percentage length width may not take precedence over a narrower border-width (bug 40541033).Opera: Before Opera 98, a border image's absolute or percentage length width may not take precedence over a narrower border-width (bug 40541033).Opera Android: Before Opera Android 75, a border image's absolute or percentage length width may not take precedence over a narrower border-width (bug 40541033).Samsung Internet: Before Samsung Internet 23.0, a border image's absolute or percentage length width may not take precedence over a narrower border-width (bug 40541033).WebView Android: Before WebView Android 112, a border image's absolute or percentage length width may not take precedence over a narrower border-width (bug 40541033).
css.properties.border-image-width.auto 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.border-inline 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline.currentColor 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline.dashed 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline.dotted 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline.double 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline.groove 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline.hidden 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline.inset 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline.medium 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline.none 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline.outset 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline.ridge 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline.solid 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline.thick 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline.thin 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline.transparent 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-color 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-color.currentColor 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-color.transparent 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-end 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end.currentColor 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end.dashed 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end.dotted 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end.double 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end.groove 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end.hidden 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end.inset 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end.medium 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end.none 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end.outset 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end.ridge 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end.solid 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end.thick 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end.thin 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end.transparent 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-color 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-color.currentColor 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-color.transparent 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-style 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-style.dashed 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-style.dotted 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-style.double 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-style.groove 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-style.hidden 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-style.inset 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-style.none 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-style.outset 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-style.ridge 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-style.solid 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-width 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-width.medium 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-width.thick 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-end-width.thin 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start.currentColor 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start.dashed 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start.dotted 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start.double 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start.groove 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start.hidden 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start.inset 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start.medium 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start.none 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start.outset 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start.ridge 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start.solid 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start.thick 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start.thin 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start.transparent 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-color 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-color.currentColor 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-color.transparent 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-style 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-style.dashed 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-style.dotted 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-style.double 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-style.groove 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-style.hidden 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-style.inset 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-style.none 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-style.outset 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-style.ridge 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-style.solid 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-width 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-width.medium 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-width.thick 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-start-width.thin 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.border-inline-style 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-style.dashed 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-style.dotted 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-style.double 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-style.groove 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-style.hidden 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-style.inset 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-style.none 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-style.outset 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-style.ridge 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-style.solid 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-width 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-width.medium 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-width.thick 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-inline-width.thin 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.border-left 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left.currentColor 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.border-left.dashed 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left.dotted 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left.double 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left.groove 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left.hidden 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left.inset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left.medium 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left.outset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left.ridge 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left.solid 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left.thick 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left.thin 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left.transparent 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left-color 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left-color.currentColor 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.border-left-color.transparent 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left-style 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Before Firefox 50, border styles of rounded corners (with border-radius) were always rendered as if border-bottom-style was solid. This has been fixed in Firefox 50.Firefox for Android: Before Firefox 50, border styles of rounded corners (with border-radius) were always rendered as if border-bottom-style was solid. This has been fixed in Firefox 50.
css.properties.border-left-style.dashed 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left-style.dotted 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left-style.double 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left-style.groove 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left-style.hidden 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left-style.inset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left-style.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left-style.outset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left-style.ridge 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left-style.solid 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left-width 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left-width.medium 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left-width.thick 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-left-width.thin 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-radius 📋Safari6/7/2010 Chrome Android6/27/2012751
Chrome: Chrome ignores border-radius on <select> elements unless -webkit-appearance is overridden to an appropriate value.Firefox: Before Firefox 50, border styles of rounded corners (with border-radius) were always rendered as if border-style was solid. This has been fixed in Firefox 50.Firefox: To conform to the CSS3 standard, Firefox 4 changes the handling of <percentage> values to match the specification. You can specify an ellipse as a border on an arbitrary sized element with border-radius: 50%;. Firefox 4 also makes rounded corners clip content and images if overflow: visible is not set.Firefox for Android: Before Firefox 50, border styles of rounded corners (with border-radius) were always rendered as if border-style was solid. This has been fixed in Firefox 50.Opera: Before Opera 11.60, replaced elements with border-radius do not have rounded corners.Safari: Safari ignores border-radius on <select> elements unless -webkit-appearance is overridden to an appropriate value.Safari on iOS: Safari ignores border-radius on <select> elements unless -webkit-appearance is overridden to an appropriate value.WebView on iOS: Safari ignores border-radius on <select> elements unless -webkit-appearance is overridden to an appropriate value.
css.properties.border-radius.4_values_for_4_corners Safari6/7/2010 Chrome Android6/27/2012751
css.properties.border-radius.elliptical_borders Safari10/26/2007 Chrome Android6/27/20121706
Chrome: Before Chrome 4, the slash / notation is unsupported. If two values are specified, then an elliptical border is drawn on all four corners. -webkit-border-radius: 40px 10px; is equivalent to border-radius: 40px / 10px;.Safari: Before Safari 5, the slash / notation is unsupported. If two values are specified, then an elliptical border is drawn on all four corners. -webkit-border-radius: 40px 10px; is equivalent to border-radius: 40px / 10px;.
css.properties.border-radius.percentages Safari7/20/2011 Chrome Android6/27/2012343
Firefox: Before Firefox 4, <percentage> values are implemented in a non-standard way. Both horizontal and vertical radii were relative to the width of the border box.Opera: Before Opera 11.5, the implementation of <percentage> values was buggy.
css.properties.border-right 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right.currentColor 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.border-right.dashed 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right.dotted 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right.double 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right.groove 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right.hidden 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right.inset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right.medium 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right.outset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right.ridge 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right.solid 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right.thick 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right.thin 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right.transparent 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right-color 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right-color.currentColor 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.border-right-color.transparent 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right-style 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Before Firefox 50, border styles of rounded corners (with border-radius) were always rendered as if border-bottom-style was solid. This has been fixed in Firefox 50.Firefox for Android: Before Firefox 50, border styles of rounded corners (with border-radius) were always rendered as if border-bottom-style was solid. This has been fixed in Firefox 50.
css.properties.border-right-style.dashed 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right-style.dotted 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right-style.double 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right-style.groove 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right-style.hidden 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right-style.inset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right-style.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right-style.outset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right-style.ridge 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right-style.solid 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right-width 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right-width.medium 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right-width.thick 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-right-width.thin 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-spacing 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-start-end-radius 📋Chrome Android3/2/2021 Safari9/20/2021202
css.properties.border-start-start-radius 📋Chrome Android3/2/2021 Safari9/20/2021202
css.properties.border-style 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Before Firefox 50, border styles of rounded corners were always rendered as if border-style was solid. This has been fixed in Firefox 50.Firefox for Android: Before Firefox for Android 50, border styles of rounded corners were always rendered as if border-style was solid. This has been fixed in Firefox for Android 50.
css.properties.border-style.dashed 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-style.dotted 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-style.double 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-style.groove 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-style.hidden 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-style.inset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-style.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-style.outset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-style.ridge 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-style.solid 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top.currentColor 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.border-top.dashed 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top.dotted 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top.double 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top.groove 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top.hidden 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top.inset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top.medium 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top.outset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top.ridge 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top.solid 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top.thick 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top.thin 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top.transparent 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top-color 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top-color.currentColor 📋Chrome Android11/14/2013 Safari3/21/2016858
css.properties.border-top-color.transparent 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top-left-radius 📋Safari6/7/2010 Chrome Android6/27/2012751
Firefox: Before Firefox 50, border styles of rounded corners were always rendered as if border-style was solid. This has been fixed in Firefox 50.Firefox for Android: Before Firefox for Android 50, border styles of rounded corners were always rendered as if border-style was solid. This has been fixed in Firefox for Android 50.
css.properties.border-top-left-radius.elliptical_corners Safari10/26/2007 Chrome Android6/27/20121706
css.properties.border-top-left-radius.percentages Safari6/7/2010 Chrome Android6/27/2012751
Firefox: Before Firefox 4, the <percentage> was relative to the width of the box even when specifying the radius for a height. This implied that -moz-border-radius-bottomright was always drawing an arc of circle, and never an ellipse, when followed by a single value.
css.properties.border-top-right-radius 📋Safari6/7/2010 Chrome Android6/27/2012751
Firefox: Before Firefox 50, border styles of rounded corners were always rendered as if border-style was solid. This has been fixed in Firefox 50.Firefox for Android: Before Firefox for Android 50, border styles of rounded corners were always rendered as if border-style was solid. This has been fixed in Firefox for Android 50.
css.properties.border-top-right-radius.elliptical_corners Safari10/26/2007 Chrome Android6/27/20121706
css.properties.border-top-right-radius.percentages Safari6/7/2010 Chrome Android6/27/2012751
Firefox: Before Firefox 4, the <percentage> was relative to the width of the box even when specifying the radius for a height. This implied that -moz-border-radius-bottomright was always drawing an arc of circle, and never an ellipse, when followed by a single value.
css.properties.border-top-style 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Before Firefox 50, border styles of rounded corners (with border-radius) were always rendered as if border-top-style was solid. This has been fixed in Firefox 50.Firefox for Android: Before Firefox for Android 50, border styles of rounded corners (with border-radius) were always rendered as if border-top-style was solid. This has been fixed in Firefox for Android 50.
css.properties.border-top-style.dashed 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top-style.dotted 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top-style.double 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top-style.groove 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top-style.hidden 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top-style.inset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top-style.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top-style.outset 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top-style.ridge 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top-style.solid 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top-width 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top-width.medium 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top-width.thick 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-top-width.thin 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-width 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-width.medium 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-width.thick 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.border-width.thin 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.bottom 📋Safari6/23/2003 Chrome Android6/27/20123292
Internet Explorer: In Internet Explorer versions before 7, when both top and bottom are specified, the element position is overconstrained and the top property has precedence; the computed value of bottom is set to -top, while its specified value is ignored.
css.properties.bottom.anchor 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.bottom.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.bottom.auto 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.box-align Safari10/26/2007 Chrome Android6/27/20121706
css.properties.box-decoration-break 📋Safari10/22/2013 Chrome Android10/15/20244011
Chrome: This property is only supported for inline elements.Chrome Android: This property is only supported for inline elements.Edge: This property is only supported for inline elements.Quest Browser: This property is only supported for inline elements.Safari: This property is only supported for inline elements.Safari on iOS: This property is only supported for inline elements.Samsung Internet: This property is only supported for inline elements.WebView Android: This property is only supported for inline elements.WebView on iOS: This property is only supported for inline elements.
css.properties.box-decoration-break.clone 📋Safari10/22/2013 Chrome Android10/15/20244011
Chrome: This value was only supported with the -webkit- prefix.Chrome Android: This value was only supported with the -webkit- prefix.Edge: This value was only supported with the -webkit- prefix.Quest Browser: This value was only supported with the -webkit- prefix.Opera: This value was only supported with the -webkit- prefix.Opera Android: This value was only supported with the -webkit- prefix.Samsung Internet: This value was only supported with the -webkit- prefix.WebView Android: This value was only supported with the -webkit- prefix.
css.properties.box-decoration-break.slice 📋Safari10/22/2013 Chrome Android10/15/20244011
Chrome: This value was only supported with the -webkit- prefix.Chrome Android: This value was only supported with the -webkit- prefix.Edge: This value was only supported with the -webkit- prefix.Quest Browser: This value was only supported with the -webkit- prefix.Opera: This value was only supported with the -webkit- prefix.Opera Android: This value was only supported with the -webkit- prefix.Samsung Internet: This value was only supported with the -webkit- prefix.WebView Android: This value was only supported with the -webkit- prefix.
css.properties.box-direction Safari10/26/2007 Chrome Android6/27/20121706
css.properties.box-flex Safari10/26/2007 Chrome Android6/27/20121706
css.properties.box-ordinal-group Safari10/26/2007 Chrome Android6/27/20121706
css.properties.box-orient Safari10/26/2007 Chrome Android6/27/20121706
css.properties.box-pack Safari10/26/2007 Chrome Android6/27/20121706
css.properties.box-shadow 📋Safari7/20/2011 Chrome Android6/27/2012343
Chrome: Shadows affect layout in this browser. For example, if you cast an outer shadow to a box with a width of 100%, then you'll see a scrollbar.Chrome Android: Shadows affect layout in this browser. For example, if you cast an outer shadow to a box with a width of 100%, then you'll see a scrollbar.Firefox: Shadows affect layout in this browser. For example, if you cast an outer shadow to a box with a width of 100%, then you'll see a scrollbar.Firefox for Android: Shadows affect layout in this browser. For example, if you cast an outer shadow to a box with a width of 100%, then you'll see a scrollbar.Internet Explorer: To use box-shadow in Internet Explorer 9 or later, you must set border-collapse to separate.Internet Explorer: Since version 5.5, Internet Explorer supports Microsoft's DropShadow and Shadow Filter. You can use this proprietary extension to cast a drop shadow (though the syntax and the effect are different from CSS3)Quest Browser: Shadows affect layout in this browser. For example, if you cast an outer shadow to a box with a width of 100%, then you'll see a scrollbar.Opera: Shadows affect layout in this browser. For example, if you cast an outer shadow to a box with a width of 100%, then you'll see a scrollbar.Opera Android: Shadows affect layout in this browser. For example, if you cast an outer shadow to a box with a width of 100%, then you'll see a scrollbar.Safari: Shadows affect layout in this browser. For example, if you cast an outer shadow to a box with a width of 100%, then you'll see a scrollbar.Safari on iOS: Shadows affect layout in this browser. For example, if you cast an outer shadow to a box with a width of 100%, then you'll see a scrollbar.Samsung Internet: Shadows affect layout in this browser. For example, if you cast an outer shadow to a box with a width of 100%, then you'll see a scrollbar.WebView Android: Shadows affect layout in this browser. For example, if you cast an outer shadow to a box with a width of 100%, then you'll see a scrollbar.WebView on iOS: Shadows affect layout in this browser. For example, if you cast an outer shadow to a box with a width of 100%, then you'll see a scrollbar.
css.properties.box-shadow.inset Safari6/7/2010 Chrome Android6/27/2012751
Internet Explorer: inset must be the last keyword in the declaration.
css.properties.box-shadow.multiple_shadows Safari10/26/2007 Chrome Android6/27/20121706
css.properties.box-shadow.none 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.box-shadow.spread_radius Safari6/7/2010 Chrome Android6/27/2012751
css.properties.box-sizing 📋Safari7/20/2011 Chrome Android6/27/2012343
Chrome: box-sizing is not respected when the height is calculated from window.getComputedStyle().Chrome Android: box-sizing is not respected when the height is calculated from window.getComputedStyle().Firefox: Before Firefox 23, box-sizing is not respected when the height is calculated from window.getComputedStyle().Firefox for Android: Before Firefox for Android 23, box-sizing is not respected when the height is calculated from window.getComputedStyle().Internet Explorer: box-sizing is not respected when the height is calculated from window.getComputedStyle().Quest Browser: box-sizing is not respected when the height is calculated from window.getComputedStyle().Opera Android: box-sizing is not respected when the height is calculated from window.getComputedStyle().Samsung Internet: box-sizing is not respected when the height is calculated from window.getComputedStyle().WebView Android: box-sizing is not respected when the height is calculated from window.getComputedStyle().
css.properties.box-sizing.border-box 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.box-sizing.content-box 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.break-after 📋Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-after.auto Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-after.avoid-column Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-after.avoid-page Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-after.column Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-after.left Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-after.page Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-after.paged_context 📋Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-after.paged_context.avoid-page Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-after.paged_context.page Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-after.recto Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-after.right Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-after.verso Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-before 📋Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-before.auto Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-before.avoid-column Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-before.avoid-page Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-before.column Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-before.left Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-before.page Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-before.paged_context 📋Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-before.paged_context.page Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-before.recto Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-before.right Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-before.verso Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-inside 📋Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-inside.auto Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-inside.avoid Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-inside.avoid-column Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-inside.avoid-page Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-inside.multicol_context 📋Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-inside.multicol_context.avoid-column Chrome Android4/13/2016 Safari9/20/2016160
css.properties.break-inside.paged_context 📋Chrome Android4/13/2016 Safari9/20/2016160
css.properties.buffered-rendering Chrome Android7/10/2013 Safari10/22/2013104
css.properties.buffered-rendering.auto Chrome Android7/10/2013 Safari10/22/2013104
css.properties.buffered-rendering.dynamic Chrome Android7/10/2013 Safari10/22/2013104
css.properties.buffered-rendering.static Chrome Android7/10/2013 Safari10/22/2013104
css.properties.caption-side 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.caption-side.bottom Safari6/23/2003 Chrome Android6/27/20123292
css.properties.caption-side.top Safari6/23/2003 Chrome Android6/27/20123292
css.properties.caret-color 📋Chrome Android3/16/2017 Safari4/12/2018392
css.properties.caret-color.auto 📋Chrome Android3/16/2017 Safari4/12/2018392
css.properties.caret-color.currentColor 📋Chrome Android3/16/2017 Safari4/12/2018392
css.properties.caret-color.transparent 📋Chrome Android3/16/2017 Safari4/12/2018392
css.properties.clear 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.clear.both 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.clear.inline-end 📋Safari9/20/2021 Chrome Android10/10/2023750
css.properties.clear.inline-start 📋Safari9/20/2021 Chrome Android10/10/2023750
css.properties.clear.left 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.clear.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.clear.right 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.clip 📋Safari6/23/2003 Chrome Android6/27/20123292
Internet Explorer: Before Internet Explorer 7, Internet Explorer incorrectly interprets clip: auto as clip: rect(auto, auto, auto, auto).Safari: Safari incorrectly interprets clip: auto as clip: rect(auto, auto, auto, auto).Safari on iOS: Safari on iOS incorrectly interprets clip: auto as clip: rect(auto, auto, auto, auto).WebView on iOS: WebView on iOS incorrectly interprets clip: auto as clip: rect(auto, auto, auto, auto).
css.properties.clip.auto Safari6/23/2003 Chrome Android6/27/20123292
css.properties.clip-path 📋Safari3/21/2016 Chrome Android12/6/2016260
Edge: Only supports clip paths defined by url().Internet Explorer: Only supports clip paths defined by url().
css.properties.clip-path.basic_shape 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.clip-path.border-box 📋Safari9/19/2019 Chrome Android10/31/20231503
css.properties.clip-path.content-box 📋Safari9/19/2019 Chrome Android10/31/20231503
css.properties.clip-path.fill-box 📋Safari3/24/2020 Chrome Android10/31/20231316
Firefox: This value was supported before Firefox 51, but as an alias to border-box.Firefox for Android: This value was supported before Firefox for Android 51, but as an alias to border-box.
css.properties.clip-path.html_elements Chrome Android2/27/2013 Safari10/22/2013237
css.properties.clip-path.is_animatable Chrome Android12/6/2016 Safari3/25/2019839
css.properties.clip-path.margin-box 📋Safari9/19/2019 Chrome Android10/31/20231503
css.properties.clip-path.padding-box 📋Safari9/19/2019 Chrome Android10/31/20231503
css.properties.clip-path.path Safari3/24/2020 Chrome Android1/19/2021301
css.properties.clip-path.stroke-box 📋Safari3/24/2020 Chrome Android10/31/20231316
Firefox: This value was supported before Firefox 51, but as an alias to border-box.Firefox for Android: This value was supported before Firefox for Android 51, but as an alias to border-box.
css.properties.clip-path.svg_elements Chrome Android2/27/2013 Safari10/22/2013237
css.properties.clip-path.view-box 📋Safari3/24/2020 Chrome Android10/31/20231316
css.properties.clip-rule 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.clip-rule.evenodd 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.clip-rule.nonzero 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.color 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.color.transparent 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.color-interpolation 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.color-interpolation.auto 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.color-interpolation.linearRGB 📋Safari6/8/2009 Chrome Android11/14/20131620
css.properties.color-interpolation.sRGB 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.color-interpolation-filters 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.color-interpolation-filters.auto 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.color-interpolation-filters.linearRGB 📋Chrome Android7/10/2013 Safari9/30/2015812
css.properties.color-interpolation-filters.sRGB 📋Chrome Android7/10/2013 Safari9/30/2015812
css.properties.color-scheme 📋Safari9/19/2019 Chrome Android4/7/2020201
css.properties.color-scheme.dark Safari9/19/2019 Chrome Android4/7/2020201
css.properties.color-scheme.light Safari9/19/2019 Chrome Android4/7/2020201
css.properties.color-scheme.normal Safari9/19/2019 Chrome Android4/7/2020201
css.properties.color-scheme.only Safari9/19/2019 Chrome Android2/1/2022866
css.properties.column-count 📋Safari9/30/2015 Chrome Android4/13/2016196
Firefox: Before version 37, multiple columns didn't work with display: table-caption elements.Firefox for Android: Before version 37, multiple columns didn't work with display: table-caption elements.
css.properties.column-count.auto 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-fill 📋Safari9/30/2015 Chrome Android4/13/2016196
css.properties.column-fill.auto 📋Safari10/16/2014 Chrome Android4/13/2016545
css.properties.column-fill.balance 📋Safari10/16/2014 Chrome Android4/13/2016545
css.properties.column-gap 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-gap.flex_context 📋Chrome Android7/27/2020 Safari4/26/2021273
css.properties.column-gap.grid_context 📋Chrome Android4/17/2018 Safari9/17/2018153
css.properties.column-gap.multicol_context 📋Chrome Android4/13/2016 Safari9/20/2016160
Firefox: Before Firefox 3, the default value for the normal keyword was 0 and not 1em.
css.properties.column-gap.multicol_context.calc_values Chrome Android4/17/2018 Safari3/25/2019342
css.properties.column-gap.multicol_context.percentage_values Chrome Android4/17/2018 Safari9/17/2018153
css.properties.column-gap.normal 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule 📋Safari9/30/2015 Chrome Android4/13/2016196
Firefox: Before Firefox 3, the default value for the normal keyword was 0 and not 1em.
css.properties.column-rule.dashed 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule.dotted 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule.double 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule.groove 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule.hidden 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule.inset 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule.medium 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule.none 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule.outset 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule.ridge 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule.solid 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule.thick 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule.thin 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule.transparent 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule-color 📋Safari9/30/2015 Chrome Android4/13/2016196
css.properties.column-rule-color.transparent 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule-style 📋Safari9/30/2015 Chrome Android4/13/2016196
css.properties.column-rule-style.dashed 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule-style.dotted 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule-style.double 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule-style.groove 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule-style.hidden 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule-style.inset 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule-style.none 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule-style.outset 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule-style.ridge 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule-style.solid 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule-width 📋Safari9/30/2015 Chrome Android4/13/2016196
css.properties.column-rule-width.medium 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule-width.thick 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-rule-width.thin 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.column-span 📋Safari9/30/2015 Chrome Android4/13/2016196
css.properties.column-span.all 📋Safari7/20/2011 Chrome Android6/27/2012343
css.properties.column-span.none 📋Safari7/20/2011 Chrome Android6/27/2012343
css.properties.column-width 📋Safari9/30/2015 Chrome Android4/13/2016196
Firefox: Before version 37, multiple columns didn't work with display: table-caption elements.Firefox for Android: Before version 37, multiple columns didn't work with display: table-caption elements.
css.properties.column-width.auto Safari10/26/2007 Chrome Android6/27/20121706
css.properties.columns 📋Safari9/30/2015 Chrome Android4/13/2016196
Firefox: Before version 37, multiple columns didn't work with display: table-caption elements.Firefox for Android: Before version 37, multiple columns didn't work with display: table-caption elements.
css.properties.columns.auto 📋Safari10/26/2007 Chrome Android4/13/20163092
css.properties.contain 📋Chrome Android7/27/2016 Safari3/14/20222056
css.properties.contain.content 📋Chrome Android7/27/2016 Safari3/14/20222056
css.properties.contain.inline-size 📋Chrome Android9/2/2022 Safari9/12/202210
css.properties.contain.layout 📋Chrome Android7/27/2016 Safari3/14/20222056
css.properties.contain.none 📋Chrome Android7/27/2016 Safari3/14/20222056
css.properties.contain.paint 📋Chrome Android7/27/2016 Safari3/14/20222056
css.properties.contain.size 📋Chrome Android7/27/2016 Safari3/14/20222056
css.properties.contain.strict 📋Chrome Android7/27/2016 Safari3/14/20222056
css.properties.contain.style 📋Chrome Android7/27/2016 Safari3/14/20222056
Chrome: Before Chrome 115, style containment did not affect quotes, see bug 40592922.Chrome Android: Before Chrome Android 115, style containment did not affect quotes, see bug 40592922.Edge: Before Edge 115, style containment did not affect quotes, see bug 40592922.Quest Browser: Before Quest Browser false, style containment did not affect quotes, see bug 40592922.Opera: Before Opera 101, style containment did not affect quotes, see bug 40592922.Opera Android: Before Opera Android 77, style containment did not affect quotes, see bug 40592922.Safari: Style containment does not affect quotes, see bug 232083.Safari on iOS: Style containment does not affect quotes, see bug 232083.Samsung Internet: Before Samsung Internet 23.0, style containment did not affect quotes, see bug 40592922.WebView Android: Before WebView Android 115, style containment did not affect quotes, see bug 40592922.WebView on iOS: Style containment does not affect quotes, see bug 232083.
css.properties.contain-intrinsic-block-size 📋Chrome Android10/19/2021 Safari9/18/2023699
css.properties.contain-intrinsic-block-size.none 📋Chrome Android2/1/2022 Safari9/18/2023594
css.properties.contain-intrinsic-height 📋Chrome Android10/19/2021 Safari9/18/2023699
css.properties.contain-intrinsic-height.none 📋Chrome Android2/1/2022 Safari9/18/2023594
css.properties.contain-intrinsic-inline-size 📋Chrome Android10/19/2021 Safari9/18/2023699
css.properties.contain-intrinsic-inline-size.none 📋Chrome Android2/1/2022 Safari9/18/2023594
css.properties.contain-intrinsic-size 📋Chrome Android5/19/2020 Safari9/18/20231217
css.properties.contain-intrinsic-size.auto_none Chrome Android9/12/2023 Safari9/18/20236
css.properties.contain-intrinsic-size.none 📋Chrome Android2/1/2022 Safari9/18/2023594
css.properties.contain-intrinsic-width 📋Chrome Android10/19/2021 Safari9/18/2023699
css.properties.contain-intrinsic-width.none 📋Chrome Android2/1/2022 Safari9/18/2023594
css.properties.container 📋Chrome Android9/2/2022 Safari9/12/202210
css.properties.container.inline-size 📋Chrome Android9/2/2022 Safari9/12/202210
css.properties.container.none 📋Chrome Android9/2/2022 Safari9/12/202210
css.properties.container.normal 📋Safari9/12/2022 Chrome Android1/10/2023120
css.properties.container.scroll-state 📋Chrome Android9/2/2022 Safari9/12/202210
css.properties.container.size 📋Chrome Android9/2/2022 Safari9/12/202210
css.properties.container-name 📋Chrome Android9/2/2022 Safari9/12/202210
css.properties.container-name.none 📋Chrome Android9/2/2022 Safari9/12/202210
css.properties.container-type 📋Chrome Android9/2/2022 Safari9/12/202210
css.properties.container-type.inline-size 📋Chrome Android9/2/2022 Safari9/12/202210
css.properties.container-type.normal 📋Chrome Android9/2/2022 Safari9/12/202210
css.properties.container-type.size 📋Chrome Android9/2/2022 Safari9/12/202210
css.properties.container-type.weak_containment 📋Chrome Android9/17/2024 Safari3/31/2025195
css.properties.content 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.content.alt_text Chrome Android9/10/2019 Safari3/5/20241638
css.properties.content.close-quote 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.content.element_replacement Chrome Android7/10/2013 Safari9/30/2015812
css.properties.content.gradient 📋Chrome Android4/3/2013 Safari10/22/2013202
Firefox: content: <gradient> doesn't paint on ::before/::after pseudo elements. See bug 1832901.Firefox for Android: content: <gradient> doesn't paint on ::before/::after pseudo elements. See bug 1832901.
css.properties.content.image-set 📋Chrome Android5/2/2023 Safari9/18/2023139
Chrome: Support for url images only and x is the only supported resolution unit.Chrome Android: Support for url images only and x is the only supported resolution unit.Edge: Support for url images only and x is the only supported resolution unit.Firefox: The type() function is not supported as an argument to image-set().Firefox for Android: The type() function is not supported as an argument to image-set().Quest Browser: Support for url images only and x is the only supported resolution unit.Opera: Support for url images only and x is the only supported resolution unit.Opera Android: Support for url images only and x is the only supported resolution unit.Safari: The type() function is not supported as an argument to image-set().Safari: The type() function is not supported as an argument to image-set().Safari: Support for url images only and x is the only supported resolution unit.Safari: Support for url images only and x is the only supported resolution unit.Safari on iOS: The type() function is not supported as an argument to image-set().Safari on iOS: The type() function is not supported as an argument to image-set().Safari on iOS: Support for url images only and x is the only supported resolution unit.Safari on iOS: Support for url images only and x is the only supported resolution unit.Samsung Internet: Support for url images only and x is the only supported resolution unit.WebView Android: Support for url images only and x is the only supported resolution unit.WebView on iOS: The type() function is not supported as an argument to image-set().WebView on iOS: The type() function is not supported as an argument to image-set().WebView on iOS: Support for url images only and x is the only supported resolution unit.WebView on iOS: Support for url images only and x is the only supported resolution unit.
css.properties.content.no-close-quote 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.content.no-open-quote 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.content.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.content.normal 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.content.open-quote 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.content.url 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.content-visibility 📋Chrome Android8/25/2020 Safari9/16/20241483
css.properties.content-visibility.auto 📋Chrome Android8/25/2020 Safari9/15/20251847
Safari: Skipped content is not findable via find-in-page.Safari on iOS: Skipped content is not findable via find-in-page.WebView on iOS: Skipped content is not findable via find-in-page.
css.properties.content-visibility.hidden 📋Chrome Android8/25/2020 Safari9/16/20241483
css.properties.content-visibility.is_transitionable 📋Chrome Android9/12/2023 Safari9/16/2024370
css.properties.content-visibility.keyframe_animatable 📋Chrome Android8/15/2023 Safari9/16/2024398
css.properties.content-visibility.visible 📋Chrome Android8/25/2020 Safari9/16/20241483
css.properties.counter-increment 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.counter-increment.list-item 📋Chrome Android7/10/2013 Safari9/30/2015812
css.properties.counter-increment.none 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.counter-reset 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.counter-reset.list-item 📋Chrome Android7/10/2013 Safari9/30/2015812
Chrome: Overriding the initial value of the implicit list-item counter has no effect when the default marker string for list items (::marker) is generated; see bug 338233131.Chrome Android: Overriding the initial value of the implicit list-item counter has no effect when the default marker string for list items (::marker) is generated; see bug 338233131.Quest Browser: Overriding the initial value of the implicit list-item counter has no effect when the default marker string for list items (::marker) is generated; see bug 338233131.Opera: Overriding the initial value of the implicit list-item counter has no effect when the default marker string for list items (::marker) is generated; see bug 338233131.Opera Android: Overriding the initial value of the implicit list-item counter has no effect when the default marker string for list items (::marker) is generated; see bug 338233131.Safari: Overriding the initial value of the implicit list-item counter results in incorrect values for the counter() function used to generate content, as it is not fully implemented; see bug 260436.Safari on iOS: Overriding the initial value of the implicit list-item counter results in incorrect values for the counter() function used to generate content, as it is not fully implemented; see bug 260436.Samsung Internet: Overriding the initial value of the implicit list-item counter has no effect when the default marker string for list items (::marker) is generated; see bug 338233131.WebView Android: Overriding the initial value of the implicit list-item counter has no effect when the default marker string for list items (::marker) is generated; see bug 338233131.WebView on iOS: Overriding the initial value of the implicit list-item counter results in incorrect values for the counter() function used to generate content, as it is not fully implemented; see bug 260436.
css.properties.counter-reset.none 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.counter-set 📋Chrome Android8/25/2020 Safari12/11/20231203
css.properties.counter-set.list-item 📋Chrome Android8/25/2020 Safari12/11/20231203
css.properties.counter-set.none 📋Chrome Android8/25/2020 Safari12/11/20231203
css.properties.cursor 📋Safari2/2/2004 Chrome Android6/27/20123068
Firefox: Starting in Firefox 67, the maximum size allowed for custom cursors is 32x32 pixels due to cursors being misused by certain malicious sites.Internet Explorer: In Internet Explorer 11, when cursor is applied to an element and this element is underneath an open <select> menu and the user hovers over a <select> menu item that's on top of said element, the cursor for said element will be displayed rather than the <select>'s normal cursor. See bug 817822.Safari on iOS: This property is only supported on iPads with an external pointing device.Safari on iOS: Unsupported values use the default pointer as a fallback.WebView on iOS: This property is only supported on iPads with an external pointing device.WebView on iOS: Unsupported values use the default pointer as a fallback.
css.properties.cursor.alias 📋Safari10/26/2007 Chrome Android6/27/20121706
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.all-scroll 📋Safari10/26/2007 Chrome Android6/27/20121706
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.auto 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.cursor.cell 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.cursor.col-resize 📋Safari10/26/2007 Chrome Android6/27/20121706
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.context-menu 📋Safari10/26/2007 Chrome Android6/27/20121706
Chrome: This cursor is only supported on macOS and Linux.Chrome Android: This cursor is only supported on macOS and Linux.Firefox: This cursor is only supported on macOS and Linux.Quest Browser: This cursor is only supported on macOS and Linux.Opera Android: This cursor is only supported on macOS and Linux.Safari on iOS: If this value is used, the iPad will display the default pointer instead.Samsung Internet: This cursor is only supported on macOS and Linux.WebView Android: This cursor is only supported on macOS and Linux.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.copy 📋Safari10/26/2007 Chrome Android6/27/20121706
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.crosshair 📋Safari2/2/2004 Chrome Android6/27/20123068
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.default 📋Safari2/2/2004 Chrome Android6/27/20123068
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.e-resize 📋Safari2/2/2004 Chrome Android6/27/20123068
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.ew-resize 📋Safari10/26/2007 Chrome Android6/27/20121706
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.grab Safari9/19/2017 Chrome Android7/24/2018308
Chrome: Chrome also continues to support the prefixed versions.Chrome: Chrome 22 added Windows support.Chrome Android: Chrome Android also continues to support the prefixed versions.Chrome Android: Chrome Android 25 added Windows support.Quest Browser: Quest Browser also continues to support the prefixed versions.Quest Browser: Quest Browser 5.0 added Windows support.Opera: Opera also continues to support the prefixed versions.Opera: Opera 22 added Windows support.Opera Android: Opera also continues to support the prefixed versions.Opera Android: Opera 22 added Windows support.Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView Android: WebView Android also continues to support the prefixed versions.WebView Android: WebView Android 4.4 added Windows support.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.grabbing 📋Safari9/19/2017 Chrome Android7/24/2018308
Chrome: Chrome 22 added Windows support.Chrome Android: Chrome Android 25 added Windows support.Edge: Edge 79 added Windows support.Quest Browser: Quest Browser 5.0 added Windows support.Opera: Opera 15 added Windows support.Opera Android: Opera Android 14 added Windows support.Safari on iOS: If this value is used, the iPad will display the default pointer instead.Samsung Internet: Samsung Internet 1.5 added Windows support.WebView Android: WebView Android 4.4 added Windows support.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.help 📋Safari2/2/2004 Chrome Android6/27/20123068
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.move 📋Safari2/2/2004 Chrome Android6/27/20123068
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.n-resize 📋Safari2/2/2004 Chrome Android6/27/20123068
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.ne-resize 📋Safari2/2/2004 Chrome Android6/27/20123068
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.nesw-resize 📋Safari10/26/2007 Chrome Android6/27/20121706
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.no-drop 📋Safari10/26/2007 Chrome Android6/27/20121706
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.none 📋Safari6/7/2010 Chrome Android6/27/2012751
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.not-allowed 📋Safari10/26/2007 Chrome Android6/27/20121706
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.ns-resize 📋Safari10/26/2007 Chrome Android6/27/20121706
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.nw-resize 📋Safari2/2/2004 Chrome Android6/27/20123068
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.nwse-resize 📋Safari10/26/2007 Chrome Android6/27/20121706
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.pointer 📋Safari2/2/2004 Chrome Android6/27/20123068
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.progress 📋Safari2/2/2004 Chrome Android6/27/20123068
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.row-resize 📋Safari10/26/2007 Chrome Android6/27/20121706
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.s-resize 📋Safari2/2/2004 Chrome Android6/27/20123068
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.se-resize 📋Safari2/2/2004 Chrome Android6/27/20123068
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.sw-resize 📋Safari2/2/2004 Chrome Android6/27/20123068
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.text 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.cursor.url Safari10/26/2007 Chrome Android6/27/20121706
Firefox: Firefox 4 added macOS support.
css.properties.cursor.url_positioning_syntax Safari10/26/2007 Chrome Android6/27/20121706
Firefox: Firefox 4 added macOS support.Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.vertical-text 📋Safari10/26/2007 Chrome Android6/27/20121706
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.w-resize 📋Safari2/2/2004 Chrome Android6/27/20123068
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.wait 📋Safari2/2/2004 Chrome Android6/27/20123068
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.zoom-in 📋Chrome Android9/3/2014 Safari9/30/2015392
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.cursor.zoom-out 📋Chrome Android9/3/2014 Safari9/30/2015392
Safari on iOS: If this value is used, the iPad will display the default pointer instead.WebView on iOS: If this value is used, the iPad will display the default pointer instead.
css.properties.custom-property 📋Chrome Android3/9/2016 Safari3/21/201612
css.properties.cx 📋Chrome Android5/27/2015 Safari9/30/2015126
css.properties.cy 📋Chrome Android5/27/2015 Safari9/30/2015126
css.properties.direction 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.direction.ltr 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.direction.rtl 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.direction.vertical_slider_direction Safari5/18/2023 Chrome Android4/16/2024334
Firefox: Only supported for vertical range sliders.Firefox for Android: Only supported for vertical range sliders.Safari: Only supported for vertical range sliders.Safari on iOS: Only supported for vertical range sliders.WebView on iOS: Only supported for vertical range sliders.
css.properties.display 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.display.block 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.display.contents 📋Chrome Android3/6/2018 Safari4/12/201837
css.properties.display.flex Chrome Android8/21/2013 Safari9/30/2015770
Firefox: Firefox 28 added multi-line flexbox support.Firefox for Android: Firefox for Android 28 added multi-line flexbox support.Internet Explorer: IE incorrectly positions inline block content inside flex containers. See the discussion on Microsoft Answers.Internet Explorer: IE incorrectly positions inline block content inside flex containers. See the discussion on Microsoft Answers.
css.properties.display.flow-root Chrome Android4/25/2017 Safari9/19/2019877
css.properties.display.grid Chrome Android3/16/2017 Safari3/27/201711
Internet Explorer: Internet Explorer implements an older version of the specification.Samsung Internet: Samsung Internet added this earlier than the corresponding Chrome version would indicate.
css.properties.display.inline 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.display.inline-block Safari6/23/2003 Chrome Android6/27/20123292
Internet Explorer: Until Internet Explorer 8, inline-block is only for natural inline elements.
css.properties.display.inline-flex Chrome Android8/21/2013 Safari9/30/2015770
Firefox: Firefox 28 added multi-line flexbox support.Firefox for Android: Firefox for Android 28 added multi-line flexbox support.
css.properties.display.inline-grid Chrome Android3/16/2017 Safari3/27/201711
Internet Explorer: Internet Explorer implements an older version of the specification.Samsung Internet: Samsung Internet added this earlier than the corresponding Chrome version would indicate.
css.properties.display.inline-table Safari6/23/2003 Chrome Android6/27/20123292
css.properties.display.is_transitionable 📋Chrome Android9/12/2023 Safari9/16/2024370
css.properties.display.keyframe_animatable 📋Chrome Android8/15/2023 Safari9/16/2024398
css.properties.display.list-item 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.display.multi-keyword_values Safari9/20/2021 Chrome Android7/21/2023669
css.properties.display.none 📋Safari6/23/2003 Chrome Android6/27/20123292
Chrome: Chrome 65 stopped creating layout objects for elements inside an <iframe> with display:none applied.Chrome Android: Chrome Android 65 stopped creating layout objects for elements inside an <iframe> with display:none applied.Quest Browser: Quest Browser 5.0 stopped creating layout objects for elements inside an <iframe> with display:none applied.Opera: Opera 52 stopped creating layout objects for elements inside an <iframe> with display:none applied.Opera Android: Opera Android 47 stopped creating layout objects for elements inside an <iframe> with display:none applied.Samsung Internet: Chrome 65 stopped creating layout objects for elements inside an <iframe> with display:none applied.WebView Android: WebView Android 65 stopped creating layout objects for elements inside an <iframe> with display:none applied.
css.properties.display.table Safari6/23/2003 Chrome Android6/27/20123292
css.properties.display.table-caption Safari6/8/2009 Chrome Android6/27/20121115
css.properties.display.table-cell Safari6/23/2003 Chrome Android6/27/20123292
css.properties.display.table-column Safari6/23/2003 Chrome Android6/27/20123292
css.properties.display.table-column-group Safari6/23/2003 Chrome Android6/27/20123292
css.properties.display.table-footer-group Safari6/23/2003 Chrome Android6/27/20123292
css.properties.display.table-header-group Safari6/23/2003 Chrome Android6/27/20123292
css.properties.display.table-row Safari6/23/2003 Chrome Android6/27/20123292
css.properties.display.table-row-group Safari6/23/2003 Chrome Android6/27/20123292
css.properties.dominant-baseline 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.dominant-baseline.alphabetic 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.dominant-baseline.auto 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.dominant-baseline.central 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.dominant-baseline.hanging 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.dominant-baseline.ideographic 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.dominant-baseline.mathematical 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.dominant-baseline.middle 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.dynamic-range-limit 📋Chrome Android4/29/2025 Safari9/15/2025139
css.properties.dynamic-range-limit.no-limit 📋Chrome Android4/29/2025 Safari9/15/2025139
css.properties.dynamic-range-limit.standard 📋Chrome Android4/29/2025 Safari9/15/2025139
css.properties.empty-cells 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.empty-cells.hide 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.empty-cells.show 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.field-sizing 📋Chrome Android3/19/2024 Safari12/12/2025633
css.properties.field-sizing.content 📋Chrome Android3/19/2024 Safari12/12/2025633
css.properties.field-sizing.fixed 📋Chrome Android3/19/2024 Safari12/12/2025633
css.properties.fill 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.fill.none 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.fill-opacity 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.fill-rule 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.fill-rule.evenodd 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.fill-rule.nonzero 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.filter 📋Safari3/21/2016 Chrome Android9/7/2016170
Internet Explorer: Internet Explorer 4 to 9 implemented a non-standard filter property. The syntax was completely different from this one and is not documented here.
css.properties.filter.blur 📋Safari7/25/2012 Chrome Android9/7/20161505
css.properties.filter.brightness 📋Safari7/25/2012 Chrome Android9/7/20161505
css.properties.filter.contrast 📋Safari7/25/2012 Chrome Android9/7/20161505
css.properties.filter.drop-shadow 📋Safari7/25/2012 Chrome Android9/7/20161505
css.properties.filter.grayscale 📋Safari7/25/2012 Chrome Android9/7/20161505
css.properties.filter.hue-rotate 📋Safari7/25/2012 Chrome Android9/7/20161505
css.properties.filter.invert 📋Safari7/25/2012 Chrome Android9/7/20161505
css.properties.filter.none 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.filter.opacity 📋Safari7/25/2012 Chrome Android9/7/20161505
css.properties.filter.saturate 📋Safari7/25/2012 Chrome Android9/7/20161505
Chrome: In Chrome 18 to 19, the saturate() function only takes integers instead of decimal or percentage values. From Chrome 20, this bug is fixed.
css.properties.filter.sepia 📋Safari7/25/2012 Chrome Android9/7/20161505
css.properties.flex 📋Chrome Android8/21/2013 Safari9/30/2015770
Firefox: Since Firefox 28, multi-line flexbox is supported.Firefox: Before Firefox 32, Firefox wasn't able to animate values starting or stopping at 0.Firefox: Until Firefox 61, flex items that are sized according to their content are sized using fit-content, not max-content.Firefox for Android: Since Firefox for Android 28, multi-line flexbox is supported.Firefox for Android: Before Firefox for Android 32, Firefox for Android wasn't able to animate values starting or stopping at 0.Firefox for Android: Until Firefox for Android 61, flex items that are sized according to their content are sized using fit-content, not max-content.Internet Explorer: Internet Explorer 11 ignores uses of calc() in the flex-basis part of the flex syntax. This can be worked around by using the longhand properties instead of the shorthand. See Flexbug #8 for more info.Internet Explorer: Internet Explorer 11 considers a unitless value in the flex-basis part to be syntactically invalid (and will thus be ignored). A workaround is to always include a unit in the flex-basis part of the flex shorthand value. See Flexbug #4 for more info.Internet Explorer: Internet Explorer 10 and 11 ignore uses of calc() in the flex-basis part of the flex syntax. This can be worked around by using the longhand properties instead of the shorthand. See Flexbug #8 for more info.Internet Explorer: Internet Explorer 10 and 11 consider a unitless value in the flex-basis part to be syntactically invalid (and will thus be ignored). A workaround is to always include a unit in the flex-basis part of the flex shorthand value. See Flexbug #4 for more info.
css.properties.flex.auto 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.flex.content 📋Safari9/20/2021 Chrome Android9/21/20211
css.properties.flex.fit-content 📋Chrome Android9/21/2021 Safari9/12/2022356
css.properties.flex.max-content 📋Chrome Android9/21/2021 Safari9/12/2022356
css.properties.flex.min-content 📋Chrome Android9/21/2021 Safari9/12/2022356
css.properties.flex.none 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.flex-basis 📋Chrome Android8/21/2013 Safari9/30/2015770
Firefox: Since Firefox 28, multi-line flexbox is supported.Firefox for Android: Since Firefox for Android 28, multi-line flexbox is supported.Internet Explorer: When a non-auto flex-basis is specified, Internet Explorer 10 and 11 always uses a content-box box model to calculate the size of a flex item, even if box-sizing: border-box is applied to the element. See Flexbug #7 for more info.
css.properties.flex-basis.auto Chrome Android2/27/2013 Safari9/30/2015945
css.properties.flex-basis.content Chrome Android9/21/2021 Safari3/14/2022174
css.properties.flex-basis.fit-content Chrome Android9/21/2021 Safari9/12/2022356
css.properties.flex-basis.max-content Chrome Android9/21/2021 Safari9/12/2022356
css.properties.flex-basis.min-content Chrome Android9/21/2021 Safari9/12/2022356
css.properties.flex-direction 📋Chrome Android8/21/2013 Safari9/30/2015770
Firefox: Since Firefox 28, multi-line flexbox is supported.Firefox for Android: Since Firefox for Android 28, multi-line flexbox is supported.
css.properties.flex-direction.column 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.flex-direction.column-reverse 📋Chrome Android2/27/2013 Safari10/22/2013237
Firefox: Before Firefox 81, overflow with column-reverse was unsupported. See bug 1042151.Firefox for Android: Before Firefox for Android 81, overflow with column-reverse was unsupported. See bug 1042151.
css.properties.flex-direction.row 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.flex-direction.row-reverse 📋Chrome Android2/27/2013 Safari10/22/2013237
Firefox: Before Firefox 81, overflow with column-reverse was unsupported. See bug 1042151.Firefox for Android: Before Firefox for Android 81, overflow with column-reverse was unsupported. See bug 1042151.
css.properties.flex-flow 📋Chrome Android8/21/2013 Safari9/30/2015770
css.properties.flex-flow.column 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.flex-flow.column-reverse 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.flex-flow.nowrap 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.flex-flow.row 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.flex-flow.row-reverse 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.flex-flow.wrap 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.flex-flow.wrap-reverse 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.flex-grow 📋Chrome Android8/21/2013 Safari9/30/2015770
Firefox: Since Firefox 28, multi-line flexbox is supported.Firefox for Android: Since Firefox for Android 28, multi-line flexbox is supported.
css.properties.flex-shrink 📋Chrome Android8/21/2013 Safari9/30/2015770
Firefox: Since Firefox 28, multi-line flexbox is supported.Firefox: Before Firefox 32, Firefox wasn't able to animate values starting or stopping at 0.Firefox for Android: Since Firefox for Android 28, multi-line flexbox is supported.Firefox for Android: Before Firefox for Android 32, Firefox for Android wasn't able to animate values starting or stopping at 0.Internet Explorer: Internet Explorer 10 uses 0 instead of 1 as the initial value for the flex-shrink property. A workaround is to always set an explicit value for flex-shrink. See Flexbug #6 for more info.
css.properties.flex-wrap 📋Chrome Android8/21/2013 Safari9/30/2015770
Internet Explorer: Partial support due to large number of bugs present. See Flexbugs.
css.properties.flex-wrap.nowrap 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.flex-wrap.wrap 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.flex-wrap.wrap-reverse 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.float 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.float.inline-end 📋Safari9/20/2021 Chrome Android10/10/2023750
css.properties.float.inline-start 📋Safari9/20/2021 Chrome Android10/10/2023750
css.properties.float.left 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.float.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.float.right 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.flood-color 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.flood-color.currentColor 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.flood-color.transparent 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.flood-opacity 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.font 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font.caption Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font.font-width_keyword_values Chrome Android8/1/2017 Safari9/19/201749
css.properties.font.icon Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font.menu Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font.message-box Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font.small-caption Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font.status-bar Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-family 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Not supported on option elements. See bug 1536148.Safari: Setting font-family: initial behaves like font-family: inherit. See bug 200709.Safari on iOS: Setting font-family: initial behaves like font-family: inherit. See bug 200709.WebView on iOS: Setting font-family: initial behaves like font-family: inherit. See bug 200709.
css.properties.font-family.cursive 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-family.fangsong 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-family.fantasy 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-family.kai 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-family.khmer-mul 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-family.math Chrome Android1/10/2023 Safari12/12/20251067
css.properties.font-family.monospace 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-family.nastaliq 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-family.sans-serif 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-family.serif 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-family.system-ui Chrome Android2/1/2017 Safari9/19/2017230
Firefox: Supported on macOS only.
css.properties.font-feature-settings 📋Chrome Android1/26/2016 Safari3/21/201655
Firefox: The ISO/IEC CD 14496-22 3rd edition suggests using the ssty feature to provide glyph variants more suitable for use in scripts (for example primes used as superscripts). Starting with Firefox 29, this is done automatically by the MathML rendering engine. The ISO/IEC CD 14496-22 3rd edition also suggests applying the dtls feature to letters when placing mathematical accents to get dotless forms (for example dotless i, j with a hat). Starting with Firefox 35, this is done automatically by the MathML rendering engine. You can override the default values determined by the MathML rendering engine with CSS.Firefox: From Firefox 129 the -webkit-font-feature-settings alias has been added to support sites that are still supporting the vendor prefix.Firefox: From Firefox 4 to Firefox 14 (inclusive), Firefox supported an older, slightly different syntax. See OpenType Font Feature support in Firefox 4.Firefox for Android: The ISO/IEC CD 14496-22 3rd edition suggests using the ssty feature to provide glyph variants more suitable for use in scripts (for example primes used as superscripts). Starting with Firefox for Android 29, this is done automatically by the MathML rendering engine. The ISO/IEC CD 14496-22 3rd edition also suggests applying the dtls feature to letters when placing mathematical accents to get dotless forms (for example dotless i, j with a hat). Starting with Firefox for Android 35, this is done automatically by the MathML rendering engine. You can override the default values determined by the MathML rendering engine with CSS.Firefox for Android: From Firefox for Android 129 the -webkit-font-feature-settings alias has been added to support sites that are still supporting the vendor prefix.Firefox for Android: From Firefox for Android 4 to Firefox for Android 14 (inclusive), Firefox for Android supported an older, slightly different syntax. See OpenType Font Feature support in Firefox for Android 4.
css.properties.font-feature-settings.normal 📋Chrome Android6/27/2012 Safari3/21/20161363
css.properties.font-kerning 📋Chrome Android2/26/2014 Safari9/30/2015581
css.properties.font-kerning.auto 📋Chrome Android2/26/2014 Safari9/30/2015581
css.properties.font-kerning.none 📋Chrome Android2/26/2014 Safari9/30/2015581
css.properties.font-kerning.normal 📋Chrome Android2/26/2014 Safari9/30/2015581
css.properties.font-optical-sizing 📋Chrome Android12/17/2019 Safari3/24/202098
css.properties.font-optical-sizing.auto 📋Chrome Android12/17/2019 Safari3/24/202098
css.properties.font-optical-sizing.none 📋Chrome Android12/17/2019 Safari3/24/202098
css.properties.font-palette 📋Safari3/14/2022 Chrome Android4/26/202243
css.properties.font-palette.dark 📋Safari3/14/2022 Chrome Android4/26/202243
css.properties.font-palette.light 📋Safari3/14/2022 Chrome Android4/26/202243
css.properties.font-palette.normal 📋Safari3/14/2022 Chrome Android4/26/202243
css.properties.font-size 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-size.rem_values Safari10/22/2013 Chrome Android4/15/2015540
Firefox: Before Firefox 57, animations using em units are not affected by changes to the font-size of the animated element's parent (bug 1254424).Firefox: Before Firefox 57, some language settings' inherited font-size is smaller than expected (bug 1391341).
css.properties.font-size.xxx-large Chrome Android12/17/2019 Safari3/27/20231196
css.properties.font-size-adjust 📋Safari3/27/2023 Chrome Android7/23/2024484
Firefox: Before Firefox 40, font-size-adjust: 0 was incorrectly interpreted as font-size-adjust: none (bug 1144885).Firefox: Only supported on Windows.Firefox for Android: Before Firefox for Android 40, font-size-adjust: 0 was incorrectly interpreted as font-size-adjust: none (bug 1144885).
css.properties.font-size-adjust.from-font 📋Safari9/18/2023 Chrome Android7/23/2024309
css.properties.font-size-adjust.none 📋Safari3/27/2023 Chrome Android7/23/2024484
css.properties.font-size-adjust.two-values Safari9/18/2023 Chrome Android7/23/2024309
css.properties.font-smooth Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Only works on macOS.
css.properties.font-stretch 📋Chrome Android8/1/2017 Safari9/19/201749
Chrome: A font-stretch declaration must be added to the @font-face before this property will function.Chrome Android: A font-stretch declaration must be added to the @font-face before this property will function.Quest Browser: A font-stretch declaration must be added to the @font-face before this property will function.Opera: A font-stretch declaration must be added to the @font-face before this property will function.Opera Android: A font-stretch declaration must be added to the @font-face before this property will function.Samsung Internet: A font-stretch declaration must be added to the @font-face before this property will function.WebView Android: A font-stretch declaration must be added to the @font-face before this property will function.
css.properties.font-stretch.condensed 📋Chrome Android8/1/2017 Safari9/19/201749
css.properties.font-stretch.expanded 📋Chrome Android8/1/2017 Safari9/19/201749
css.properties.font-stretch.extra-condensed 📋Chrome Android8/1/2017 Safari9/19/201749
css.properties.font-stretch.extra-expanded 📋Chrome Android8/1/2017 Safari9/19/201749
css.properties.font-stretch.normal 📋Chrome Android8/1/2017 Safari9/19/201749
css.properties.font-stretch.percentage Chrome Android10/24/2017 Safari4/12/2018170
css.properties.font-stretch.semi-condensed 📋Chrome Android8/1/2017 Safari9/19/201749
css.properties.font-stretch.semi-expanded 📋Chrome Android8/1/2017 Safari9/19/201749
css.properties.font-stretch.ultra-condensed 📋Chrome Android8/1/2017 Safari9/19/201749
css.properties.font-stretch.ultra-expanded 📋Chrome Android8/1/2017 Safari9/19/201749
css.properties.font-style 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Before Firefox 44, oblique was not distinguished from italic.Firefox for Android: Before Firefox for Android 44, oblique was not distinguished from italic.
css.properties.font-style.italic 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-style.normal 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-style.oblique 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-style.oblique-angle 📋Chrome Android10/24/2017 Safari4/12/2018170
Chrome: Angles from 14 to 90 have the same effect as font-style: oblique (with a slant of 14 degrees). Angles from -90 to 13 have the same effect as font-style: normal (without a slant). In some cases (e.g. with vertical writing-mode), a negative angle produces a slant. See bug 425388876.Chrome Android: Angles from 14 to 90 have the same effect as font-style: oblique (with a slant of 14 degrees). Angles from -90 to 13 have the same effect as font-style: normal (without a slant). In some cases (e.g. with vertical writing-mode), a negative angle produces a slant. See bug 425388876.Edge: Angles from 14 to 90 have the same effect as font-style: oblique (with a slant of 14 degrees). Angles from -90 to 13 have the same effect as font-style: normal (without a slant). In some cases (e.g. with vertical writing-mode), a negative angle produces a slant. See bug 425388876.Quest Browser: Angles from 14 to 90 have the same effect as font-style: oblique (with a slant of 14 degrees). Angles from -90 to 13 have the same effect as font-style: normal (without a slant). In some cases (e.g. with vertical writing-mode), a negative angle produces a slant. See bug 425388876.Opera: Angles from 14 to 90 have the same effect as font-style: oblique (with a slant of 14 degrees). Angles from -90 to 13 have the same effect as font-style: normal (without a slant). In some cases (e.g. with vertical writing-mode), a negative angle produces a slant. See bug 425388876.Opera Android: Angles from 14 to 90 have the same effect as font-style: oblique (with a slant of 14 degrees). Angles from -90 to 13 have the same effect as font-style: normal (without a slant). In some cases (e.g. with vertical writing-mode), a negative angle produces a slant. See bug 425388876.Safari: Angles from 14 to 90 have the same effect as font-style: oblique (with a slant of 14 degrees). Angles from -90 to 13 have the same effect as font-style: normal (without a slant). In some cases (e.g. with vertical writing-mode), a negative angle produces a slant. See bug 425388876.Safari on iOS: Angles from 14 to 90 have the same effect as font-style: oblique (with a slant of 14 degrees). Angles from -90 to 13 have the same effect as font-style: normal (without a slant). In some cases (e.g. with vertical writing-mode), a negative angle produces a slant. See bug 425388876.Samsung Internet: Angles from 14 to 90 have the same effect as font-style: oblique (with a slant of 14 degrees). Angles from -90 to 13 have the same effect as font-style: normal (without a slant). In some cases (e.g. with vertical writing-mode), a negative angle produces a slant. See bug 425388876.WebView Android: Angles from 14 to 90 have the same effect as font-style: oblique (with a slant of 14 degrees). Angles from -90 to 13 have the same effect as font-style: normal (without a slant). In some cases (e.g. with vertical writing-mode), a negative angle produces a slant. See bug 425388876.WebView on iOS: Angles from 14 to 90 have the same effect as font-style: oblique (with a slant of 14 degrees). Angles from -90 to 13 have the same effect as font-style: normal (without a slant). In some cases (e.g. with vertical writing-mode), a negative angle produces a slant. See bug 425388876.
css.properties.font-synthesis 📋Safari9/30/2015 Chrome Android1/4/20222288
css.properties.font-synthesis.none 📋Safari9/30/2015 Chrome Android1/4/20222288
css.properties.font-synthesis.small-caps Safari3/27/2017 Chrome Android1/4/20221744
css.properties.font-synthesis.style Safari3/27/2017 Chrome Android1/4/20221744
css.properties.font-synthesis.weight Safari3/27/2017 Chrome Android1/4/20221744
css.properties.font-synthesis-small-caps 📋Chrome Android1/4/2022 Safari3/27/2023447
css.properties.font-synthesis-small-caps.auto 📋Chrome Android1/4/2022 Safari3/27/2023447
css.properties.font-synthesis-small-caps.none 📋Chrome Android1/4/2022 Safari3/27/2023447
css.properties.font-synthesis-style 📋Chrome Android1/4/2022 Safari3/27/2023447
css.properties.font-synthesis-style.auto 📋Chrome Android1/4/2022 Safari3/27/2023447
css.properties.font-synthesis-style.none 📋Chrome Android1/4/2022 Safari3/27/2023447
css.properties.font-synthesis-weight 📋Chrome Android1/4/2022 Safari3/27/2023447
css.properties.font-synthesis-weight.auto 📋Chrome Android1/4/2022 Safari3/27/2023447
css.properties.font-synthesis-weight.none 📋Chrome Android1/4/2022 Safari3/27/2023447
css.properties.font-variant 📋Safari6/23/2003 Chrome Android6/27/20123292
Internet Explorer: Only supports the small-caps and normal keywords.
css.properties.font-variant.css_fonts_shorthand Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant.historical-forms 📋Safari3/21/2016 Chrome Android3/7/20232542
css.properties.font-variant.none 📋Safari9/30/2015 Chrome Android7/27/2016301
css.properties.font-variant.normal 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-variant.sub 📋Safari3/21/2016 Chrome Android2/7/20232514
css.properties.font-variant.super 📋Safari3/21/2016 Chrome Android2/7/20232514
css.properties.font-variant.turkic_is Chrome Android11/14/2013 Safari10/16/2014336
css.properties.font-variant-alternates 📋Safari3/21/2016 Chrome Android3/7/20232542
css.properties.font-variant-alternates.annotation 📋Safari12/13/2022 Chrome Android3/7/202384
css.properties.font-variant-alternates.character_variant 📋Safari12/13/2022 Chrome Android3/7/202384
css.properties.font-variant-alternates.historical-forms 📋Safari3/21/2016 Chrome Android3/7/20232542
css.properties.font-variant-alternates.normal 📋Safari3/21/2016 Chrome Android3/7/20232542
css.properties.font-variant-alternates.ornaments 📋Safari12/13/2022 Chrome Android3/7/202384
css.properties.font-variant-alternates.styleset 📋Safari12/13/2022 Chrome Android3/7/202384
css.properties.font-variant-alternates.stylistic 📋Safari12/13/2022 Chrome Android3/7/202384
css.properties.font-variant-alternates.swash 📋Safari12/13/2022 Chrome Android3/7/202384
css.properties.font-variant-caps 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-caps.all-petite-caps 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-caps.all-small-caps 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-caps.normal 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-caps.petite-caps 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-caps.small-caps 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-caps.titling-caps 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-caps.unicase 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-east-asian 📋Safari3/21/2016 Chrome Android12/5/2017624
css.properties.font-variant-east-asian.full-width 📋Safari3/21/2016 Chrome Android12/5/2017624
css.properties.font-variant-east-asian.jis04 📋Safari3/21/2016 Chrome Android12/5/2017624
css.properties.font-variant-east-asian.jis78 📋Safari3/21/2016 Chrome Android12/5/2017624
css.properties.font-variant-east-asian.jis83 📋Safari3/21/2016 Chrome Android12/5/2017624
css.properties.font-variant-east-asian.jis90 📋Safari3/21/2016 Chrome Android12/5/2017624
css.properties.font-variant-east-asian.normal 📋Safari3/21/2016 Chrome Android12/5/2017624
css.properties.font-variant-east-asian.proportional-width 📋Safari3/21/2016 Chrome Android12/5/2017624
css.properties.font-variant-east-asian.ruby 📋Safari3/21/2016 Chrome Android12/5/2017624
css.properties.font-variant-east-asian.simplified 📋Safari3/21/2016 Chrome Android12/5/2017624
css.properties.font-variant-east-asian.traditional 📋Safari3/21/2016 Chrome Android12/5/2017624
css.properties.font-variant-emoji 📋Safari5/13/2024 Chrome Android11/12/2024183
css.properties.font-variant-ligatures 📋Chrome Android4/2/2014 Safari3/21/2016719
css.properties.font-variant-ligatures.common-ligatures 📋Safari10/22/2013 Chrome Android11/14/201323
css.properties.font-variant-ligatures.contextual 📋Safari10/22/2013 Chrome Android11/14/201323
css.properties.font-variant-ligatures.discretionary-ligatures 📋Safari10/22/2013 Chrome Android11/14/201323
css.properties.font-variant-ligatures.historical-ligatures 📋Safari10/22/2013 Chrome Android11/14/201323
css.properties.font-variant-ligatures.no-common-ligatures 📋Safari10/22/2013 Chrome Android11/14/201323
css.properties.font-variant-ligatures.no-contextual 📋Safari10/22/2013 Chrome Android11/14/201323
css.properties.font-variant-ligatures.no-discretionary-ligatures 📋Safari10/22/2013 Chrome Android11/14/201323
css.properties.font-variant-ligatures.no-historical-ligatures 📋Safari10/22/2013 Chrome Android11/14/201323
css.properties.font-variant-ligatures.none 📋Safari10/22/2013 Chrome Android11/14/201323
css.properties.font-variant-ligatures.normal 📋Safari10/22/2013 Chrome Android11/14/201323
css.properties.font-variant-numeric 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-numeric.diagonal-fractions 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-numeric.lining-nums 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-numeric.normal 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-numeric.oldstyle-nums 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-numeric.ordinal 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-numeric.proportional-nums 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-numeric.slashed-zero 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-numeric.stacked-fractions 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-numeric.tabular-nums 📋Safari3/21/2016 Chrome Android7/27/2016128
css.properties.font-variant-position 📋Safari3/21/2016 Chrome Android9/12/20232731
css.properties.font-variant-position.normal 📋Safari3/21/2016 Chrome Android9/12/20232731
css.properties.font-variant-position.sub 📋Safari3/21/2016 Chrome Android9/12/20232731
Chrome: If the font does not have subscript glyphs, then substitute characters are not synthesized (see bug 352218916).Chrome Android: If the font does not have subscript glyphs, then substitute characters are not synthesized (see bug 352218916).Edge: If the font does not have subscript glyphs, then substitute characters are not synthesized (see bug 352218916).Opera: If the font does not have subscript glyphs, then substitute characters are not synthesized (see bug 352218916).Opera Android: If the font does not have subscript glyphs, then substitute characters are not synthesized (see bug 352218916).Safari: If the font does not have subscript glyphs, then substitute characters are not synthesized (see bug 151471).Safari on iOS: If the font does not have subscript glyphs, then substitute characters are not synthesized (see bug 151471).Samsung Internet: If the font does not have subscript glyphs, then substitute characters are not synthesized (see bug 352218916).WebView Android: If the font does not have subscript glyphs, then substitute characters are not synthesized (see bug 352218916).WebView on iOS: If the font does not have subscript glyphs, then substitute characters are not synthesized (see bug 151471).
css.properties.font-variant-position.super 📋Safari3/21/2016 Chrome Android9/12/20232731
Chrome: If the font does not have superscript glyphs, then substitute characters are not synthesized (see bug 352218916).Chrome Android: If the font does not have superscript glyphs, then substitute characters are not synthesized (see bug 352218916).Edge: If the font does not have superscript glyphs, then substitute characters are not synthesized (see bug 352218916).Opera: If the font does not have superscript glyphs, then substitute characters are not synthesized (see bug 352218916).Opera Android: If the font does not have superscript glyphs, then substitute characters are not synthesized (see bug 352218916).Safari: If the font does not have superscript glyphs, then substitute characters are not synthesized (see bug 151471).Safari on iOS: If the font does not have superscript glyphs, then substitute characters are not synthesized (see bug 151471).Samsung Internet: If the font does not have superscript glyphs, then substitute characters are not synthesized (see bug 352218916).WebView Android: If the font does not have superscript glyphs, then substitute characters are not synthesized (see bug 352218916).WebView on iOS: If the font does not have superscript glyphs, then substitute characters are not synthesized (see bug 151471).
css.properties.font-variation-settings 📋Safari9/19/2017 Chrome Android10/24/201735
Safari: Requires macOS 10.13 High Sierra or later.Safari on iOS: Requires iOS 11 or later.WebView on iOS: Requires iOS 11 or later.
css.properties.font-variation-settings.normal 📋Safari9/19/2017 Chrome Android10/24/201735
css.properties.font-weight 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-weight.bold 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-weight.bolder 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-weight.lighter 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-weight.normal 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.font-weight.number Safari9/19/2017 Chrome Android10/24/201735
css.properties.gap 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.gap.flex_context 📋Chrome Android7/27/2020 Safari4/26/2021273
css.properties.gap.grid_context 📋Chrome Android4/17/2018 Safari9/17/2018153
css.properties.gap.grid_context.calc_values Chrome Android4/17/2018 Safari3/25/2019342
css.properties.gap.grid_context.percentage_values Safari9/19/2017 Chrome Android4/17/2018210
css.properties.gap.multicol_context 📋Chrome Android4/17/2018 Safari4/26/20211105
css.properties.gap.normal 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid 📋Chrome Android3/16/2017 Safari3/27/201711
Samsung Internet: This was added early so is out of sync with the equivalent Chromium version.
css.properties.grid.none 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-area 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-area.auto 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-auto-columns 📋Chrome Android3/16/2017 Safari3/27/201711
Firefox: Does not accept multiple track-size values. See bug 1339672.Firefox for Android: Does not accept multiple track-size values. See bug 1339672.
css.properties.grid-auto-columns.auto 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-auto-columns.max-content 📋Chrome Android3/16/2017 Safari9/19/2017187
css.properties.grid-auto-columns.min-content 📋Chrome Android3/16/2017 Safari9/19/2017187
css.properties.grid-auto-flow 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-auto-flow.column 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-auto-flow.dense 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-auto-flow.row 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-auto-rows 📋Chrome Android3/16/2017 Safari3/27/201711
Firefox: Does not accept multiple track-size values. See bug 1339672.Firefox for Android: Does not accept multiple track-size values. See bug 1339672.
css.properties.grid-auto-rows.auto 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-auto-rows.max-content 📋Chrome Android3/16/2017 Safari9/19/2017187
css.properties.grid-auto-rows.min-content 📋Chrome Android3/16/2017 Safari9/19/2017187
css.properties.grid-column 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-column.auto 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-column-end 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-column-end.auto 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-column-start 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-column-start.auto 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-row 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-row.auto 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-row-end 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-row-end.auto 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-row-start 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-row-start.auto 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template.none 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-areas 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-areas.none 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-columns 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-columns.animation Safari9/12/2022 Chrome Android10/25/202243
css.properties.grid-template-columns.auto 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-columns.fit-content 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-columns.max-content 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-columns.min-content 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-columns.minmax 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-columns.none 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-columns.repeat 📋Chrome Android3/16/2017 Safari3/27/201711
Firefox: repeat(auto-fill, ...) and repeat(auto-fit, ...) only support one repeated column (see bug 1341507).Firefox: calc() doesn't work in repeat() (see bug 1350069).Firefox for Android: repeat(auto-fill, ...) and repeat(auto-fit, ...) only support one repeated column (see bug 1341507).Firefox for Android: calc() doesn't work in repeat() (see bug 1350069).
css.properties.grid-template-columns.subgrid 📋Safari9/12/2022 Chrome Android9/12/2023365
css.properties.grid-template-rows 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-rows.animation Safari9/12/2022 Chrome Android10/25/202243
css.properties.grid-template-rows.auto 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-rows.fit-content 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-rows.max-content 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-rows.min-content 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-rows.minmax 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-rows.none 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.grid-template-rows.repeat 📋Chrome Android3/16/2017 Safari3/27/201711
Firefox: repeat(auto-fill, ...) and repeat(auto-fit, ...) only support one repeated column (see bug 1341507).Firefox: calc() doesn't work in repeat() (see bug 1350069).Firefox for Android: repeat(auto-fill, ...) and repeat(auto-fit, ...) only support one repeated column (see bug 1341507).Firefox for Android: calc() doesn't work in repeat() (see bug 1350069).
css.properties.grid-template-rows.subgrid 📋Safari9/12/2022 Chrome Android9/12/2023365
css.properties.height 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.height.anchor-size 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.height.auto 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.height.fit-content 📋Chrome Android10/14/2015 Safari9/19/2017706
css.properties.height.max-content 📋Chrome Android10/14/2015 Safari9/19/2017706
css.properties.height.min-content 📋Chrome Android10/14/2015 Safari9/19/2017706
css.properties.height.stretch 📋Safari9/30/2015 Chrome Android6/24/20253555
css.properties.hyphenate-character 📋Chrome Android9/27/2022 Safari9/18/2023356
css.properties.hyphenate-character.auto 📋Safari7/20/2011 Chrome Android6/27/2012343
css.properties.hyphens 📋Chrome Android12/6/2016 Safari9/18/20232477
Edge: Only works if the specified language is the same as the language of the underlying OS.Internet Explorer: Only works if the specified language is the same as the language of the underlying OS.
css.properties.hyphens.auto Safari7/20/2011 Chrome Android12/6/20161966
Chrome: Only supported on macOS.Edge: Only supported on macOS.Opera: Only supported on macOS.
css.properties.hyphens.language_croatian Safari3/21/2016 Chrome Android11/17/20201702
css.properties.hyphens.language_czech Safari3/21/2016 Chrome Android4/4/20232570
css.properties.hyphens.language_danish Safari7/20/2011 Chrome Android11/17/20203408
css.properties.hyphens.language_dutch Safari7/20/2011 Chrome Android4/4/20234276
css.properties.hyphens.language_english Safari7/20/2011 Chrome Android12/6/20161966
Firefox: For English, Firefox uses an en-US dictionaryFirefox for Android: For English, Firefox for Android uses an en-US dictionarySafari: For English, Safari uses different en-GB and en-US dictionaries.Safari on iOS: For English, Safari on iOS uses different en-GB and en-US dictionaries.WebView on iOS: For English, WebView on iOS uses different en-GB and en-US dictionaries.
css.properties.hyphens.language_french Safari7/20/2011 Chrome Android11/17/20203408
css.properties.hyphens.language_german_reformed_orthography Safari7/20/2011 Chrome Android11/17/20203408
css.properties.hyphens.language_hungarian Safari3/21/2016 Chrome Android11/17/20201702
css.properties.hyphens.language_italian Safari7/20/2011 Chrome Android4/4/20234276
css.properties.hyphens.language_norwegian_no Safari7/20/2011 Chrome Android11/17/20203408
css.properties.hyphens.language_portuguese Safari3/21/2016 Chrome Android11/17/20201702
css.properties.hyphens.language_russian Safari7/20/2011 Chrome Android4/4/20234276
css.properties.hyphens.language_spanish Safari7/20/2011 Chrome Android11/17/20203408
css.properties.hyphens.language_swedish Safari7/20/2011 Chrome Android4/4/20234276
css.properties.hyphens.language_ukrainian Safari3/21/2016 Chrome Android4/4/20232570
css.properties.hyphens.manual Safari7/20/2011 Chrome Android12/6/20161966
Chrome: Only supported on macOS.Edge: Only supported on macOS.Opera: Only supported on macOS.
css.properties.hyphens.none Safari7/20/2011 Chrome Android12/6/20161966
Chrome: Only supported on macOS.Edge: Only supported on macOS.Opera: Only supported on macOS.
css.properties.image-orientation 📋Safari3/24/2020 Chrome Android4/7/202014
css.properties.image-orientation.from-image 📋Safari3/24/2020 Chrome Android4/7/202014
css.properties.image-orientation.none 📋Safari3/24/2020 Chrome Android4/7/202014
css.properties.image-rendering 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.image-rendering.auto 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.image-rendering.crisp-edges 📋Chrome Android6/27/2012 Safari10/22/2013482
css.properties.image-rendering.pixelated 📋Chrome Android3/11/2015 Safari9/20/2016559
css.properties.initial-letter 📋Safari9/30/2015 Chrome Android2/7/20232687
Safari: See bug 229090 for the unprefixed property.Safari on iOS: See bug 229090 for the unprefixed property.Safari on iOS: Does not support decimal values. See bug 296785.WebView on iOS: See bug 229090 for the unprefixed property.WebView on iOS: Does not support decimal values. See bug 296785.
css.properties.initial-letter.normal 📋Safari9/30/2015 Chrome Android2/7/20232687
css.properties.inline-size 📋Chrome Android3/16/2017 Safari3/25/2019739
css.properties.inline-size.anchor-size 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.inline-size.auto 📋Safari7/20/2011 Chrome Android6/27/2012343
css.properties.inline-size.fit-content 📋Chrome Android3/16/2017 Safari3/25/2019739
css.properties.inline-size.max-content Chrome Android3/16/2017 Safari3/25/2019739
css.properties.inline-size.min-content Chrome Android3/16/2017 Safari3/25/2019739
css.properties.inset 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.inset.anchor 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.inset.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.inset.auto 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.inset-block 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.inset-block.anchor 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.inset-block.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.inset-block.auto 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.inset-block-end 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.inset-block-end.anchor 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.inset-block-end.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.inset-block-end.auto 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.inset-block-start 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.inset-block-start.anchor 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.inset-block-start.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.inset-block-start.auto 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.inset-inline 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.inset-inline.anchor 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.inset-inline.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.inset-inline.auto 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.inset-inline-end 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.inset-inline-end.anchor 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.inset-inline-end.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.inset-inline-end.auto 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.inset-inline-start 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.inset-inline-start.anchor 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.inset-inline-start.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.inset-inline-start.auto 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.isolation 📋Safari10/16/2014 Chrome Android3/11/2015146
css.properties.isolation.auto 📋Safari10/16/2014 Chrome Android3/11/2015146
css.properties.isolation.isolate 📋Safari10/16/2014 Chrome Android3/11/2015146
css.properties.justify-content 📋Chrome Android8/21/2013 Safari9/30/2015770
css.properties.justify-content.flex_context 📋Safari10/22/2013 Chrome Android7/27/20161009
Chrome: Older versions of the specification treat absolute positioned children as though they are a 0 by 0 flex item. Later specification versions take the children out of the flow and set their positions based on align and justify properties. Chrome implements the new behavior beginning with Chrome 52.Chrome Android: Older versions of the specification treat absolute positioned children as though they are a 0 by 0 flex item. Later specification versions take the children out of the flow and set their positions based on align and justify properties. Chrome Android implements the new behavior beginning with Chrome Android 52.Firefox: Before Firefox 27, Firefox supported only single-line flexbox.Firefox for Android: Before Firefox for Android 27, Firefox for Android supported only single-line flexbox.Samsung Internet: Older versions of the specification treat absolute positioned children as though they are a 0 by 0 flex item. Later specification versions take the children out of the flow and set their positions based on align and justify properties. Samsung Internet implements the new behavior beginning with Samsung Internet 6.0.WebView Android: Older versions of the specification treat absolute positioned children as though they are a 0 by 0 flex item. Later specification versions take the children out of the flow and set their positions based on align and justify properties. WebView Android implements the new behavior beginning with WebView Android 52.
css.properties.justify-content.flex_context.left_right Safari9/30/2015 Chrome Android8/31/20212162
Internet Explorer: This value is recognized, but has no effect.Opera Android: This value is recognized, but has no effect.
css.properties.justify-content.flex_context.safe_unsafe Chrome Android7/21/2023 Safari7/29/2024374
Chrome: Before version 115, this value is recognized, but has no effect.Chrome Android: Before version 115, this value is recognized, but has no effect.Edge: Before version 115, this value is recognized, but has no effect.Opera: Before version 101, this value is recognized, but has no effect.Opera Android: Before version 77, this value is recognized, but has no effect.Samsung Internet: Before version 23.0, this value is recognized, but has no effect.WebView Android: Before version 115, this value is recognized, but has no effect.
css.properties.justify-content.flex_context.space-evenly Chrome Android8/1/2017 Safari9/19/201749
css.properties.justify-content.flex_context.start_end Chrome Android8/31/2021 Safari3/14/2022195
css.properties.justify-content.flex_context.stretch Safari9/30/2015 Chrome Android3/16/2017533
css.properties.justify-content.grid_context 📋Chrome Android7/27/2016 Safari3/27/2017243
css.properties.justify-content.left Chrome Android2/27/2013 Safari10/22/2013237
css.properties.justify-content.normal Chrome Android2/27/2013 Safari10/22/2013237
css.properties.justify-content.right Chrome Android2/27/2013 Safari10/22/2013237
css.properties.justify-items 📋Safari9/30/2015 Chrome Android7/27/2016301
css.properties.justify-items.anchor-center 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.justify-items.center Safari9/30/2015 Chrome Android7/27/2016301
css.properties.justify-items.flex_context 📋Safari9/30/2015 Chrome Android7/27/2016301
css.properties.justify-items.grid_context 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.justify-items.left Safari9/30/2015 Chrome Android7/27/2016301
css.properties.justify-items.legacy 📋Safari9/30/2015 Chrome Android7/27/2016301
css.properties.justify-items.right Safari9/30/2015 Chrome Android7/27/2016301
css.properties.justify-self 📋Chrome Android3/16/2017 Safari3/27/201711
css.properties.justify-self.anchor-center 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.justify-self.auto Chrome Android3/16/2017 Safari3/27/201711
css.properties.justify-self.grid_context 📋Chrome Android3/16/2017 Safari3/27/201711
Internet Explorer: Internet Explorer 10 and 11 have the property -ms-grid-column-align, which acts in a similar way to justify-self.
css.properties.justify-self.left Chrome Android3/16/2017 Safari3/27/201711
css.properties.justify-self.normal Chrome Android3/16/2017 Safari3/27/201711
css.properties.justify-self.right Chrome Android3/16/2017 Safari3/27/201711
css.properties.justify-self.stretch Chrome Android3/16/2017 Safari3/27/201711
css.properties.left 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.left.anchor 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.left.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.left.auto 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.letter-spacing 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.letter-spacing.normal 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.letter-spacing.svg_elements Safari7/20/2011 Chrome Android6/27/2012343
css.properties.lighting-color 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.lighting-color.currentColor 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.lighting-color.transparent 📋Chrome Android6/27/2012 Safari7/25/201228
css.properties.line-break 📋Chrome Android4/25/2017 Safari9/19/2017147
css.properties.line-break.anywhere 📋Safari9/19/2019 Chrome Android5/19/2020243
css.properties.line-break.auto 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.line-break.loose 📋Chrome Android2/27/2013 Safari10/16/2014596
css.properties.line-break.normal 📋Safari4/29/2005 Chrome Android6/27/20122616
css.properties.line-break.strict 📋Chrome Android2/27/2013 Safari10/16/2014596
css.properties.line-clamp 📋Safari6/7/2010 Chrome Android6/27/2012751
Safari: Accidental exposure.Safari on iOS: Accidental exposure.WebView on iOS: Accidental exposure.
css.properties.line-height 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.line-height.normal 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style.inside 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style.outside 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-image 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Before Firefox 86, this property did not accept an <image> type, and required the URL of an image.Firefox for Android: Before Firefox for Android 86, this property did not accept an <image> type, and required the URL of an image.
css.properties.list-style-image.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-position 📋Safari6/23/2003 Chrome Android6/27/20123292
Safari: In Safari, if a block element is the first child of a list element declared as list-style-position: inside, then the marker box is placed on the same line as the block element.Safari on iOS: In Safari on iOS, if a block element is the first child of a list element declared as list-style-position: inside, then the marker box is placed on the same line as the block element.WebView on iOS: In WebView on iOS, if a block element is the first child of a list element declared as list-style-position: inside, then the marker box is placed on the same line as the block element.
css.properties.list-style-position.inside 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-position.outside 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.afar Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.amharic Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.amharic-abegede Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.arabic-indic 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.armenian 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.asterisks Safari7/20/2011 Chrome Android5/25/20213597
css.properties.list-style-type.bengali 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.binary Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.cambodian 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.circle 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.cjk-decimal 📋Chrome Android5/25/2021 Safari9/20/2021118
css.properties.list-style-type.cjk-earthly-branch 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.cjk-heavenly-stem 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.cjk-ideographic 📋Safari6/7/2010 Chrome Android6/27/2012751
Opera: Until version 15, only decimal numbers display.Opera Android: Until version 15, only decimal numbers display.
css.properties.list-style-type.decimal 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.decimal-leading-zero 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.devanagari 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.disc 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.disclosure-closed 📋Chrome Android3/2/2021 Safari9/20/2021202
css.properties.list-style-type.disclosure-open 📋Chrome Android3/2/2021 Safari9/20/2021202
css.properties.list-style-type.ethiopic Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.ethiopic-abegede Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.ethiopic-abegede-am-et Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.ethiopic-abegede-gez Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.ethiopic-abegede-ti-er Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.ethiopic-abegede-ti-et Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.ethiopic-halehame Chrome Android9/1/2015 Safari9/18/20232939
css.properties.list-style-type.ethiopic-halehame-aa-er Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.ethiopic-halehame-aa-et Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.ethiopic-halehame-am Chrome Android9/1/2015 Safari9/18/20232939
css.properties.list-style-type.ethiopic-halehame-am-et Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.ethiopic-halehame-gez Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.ethiopic-halehame-om-et Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.ethiopic-halehame-sid-et Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.ethiopic-halehame-so-et Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.ethiopic-halehame-ti-er Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.ethiopic-halehame-ti-et Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.ethiopic-halehame-tig Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.ethiopic-numeric 📋Chrome Android5/25/2021 Safari9/20/2021118
Firefox: Before Firefox 38, Firefox added a dot as suffix of the number for ethiopic-numeric (for example, ፫. instead of ፫). The specification later defined the absence of a suffix, which Firefox 38 followed.Firefox for Android: Before Firefox for Android 38, Firefox for Android added a dot as suffix of the number for ethiopic-numeric (for example, ፫. instead of ፫). The specification later defined the absence of a suffix, which Firefox for Android 38 followed.
css.properties.list-style-type.footnotes Safari7/20/2011 Chrome Android5/25/20213597
css.properties.list-style-type.georgian 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.gujarati 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.gurmukhi 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.hangul Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.hangul-consonant Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.hebrew 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.hiragana 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.hiragana-iroha 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.japanese-formal 📋Chrome Android5/25/2021 Safari9/20/2021118
css.properties.list-style-type.japanese-informal 📋Chrome Android5/25/2021 Safari9/20/2021118
css.properties.list-style-type.kannada 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.katakana 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.katakana-iroha 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.khmer 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.korean-hangul-formal 📋Chrome Android9/1/2015 Safari9/20/20212211
css.properties.list-style-type.korean-hanja-formal 📋Chrome Android9/1/2015 Safari9/20/20212211
css.properties.list-style-type.korean-hanja-informal 📋Chrome Android9/1/2015 Safari9/20/20212211
css.properties.list-style-type.lao 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.lower-alpha 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.lower-armenian 📋Safari7/20/2011 Chrome Android6/27/2012343
css.properties.list-style-type.lower-greek 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.lower-hexadecimal Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.lower-latin 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.lower-norwegian Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.lower-roman 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.malayalam 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.mongolian 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.myanmar 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.octal Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.oriya 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.oromo Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.persian 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.sidama Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.simp-chinese-formal 📋Chrome Android9/1/2015 Safari9/20/20212211
css.properties.list-style-type.simp-chinese-informal 📋Chrome Android9/1/2015 Safari9/20/20212211
css.properties.list-style-type.somali Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.square 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.string Chrome Android12/17/2019 Safari4/26/2021496
css.properties.list-style-type.tamil 📋Chrome Android5/25/2021 Safari9/20/2021118
css.properties.list-style-type.telugu 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.thai 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.tibetan 📋Safari6/7/2010 Chrome Android6/27/2012751
css.properties.list-style-type.tigre Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.tigrinya-er Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.tigrinya-er-abegede Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.tigrinya-et Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.tigrinya-et-abegede Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.trad-chinese-formal 📋Chrome Android9/1/2015 Safari9/20/20212211
css.properties.list-style-type.trad-chinese-informal 📋Chrome Android9/1/2015 Safari9/20/20212211
css.properties.list-style-type.upper-alpha 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.upper-armenian 📋Safari7/20/2011 Chrome Android6/27/2012343
css.properties.list-style-type.upper-greek Safari6/23/2003 Chrome Android5/25/20216546
css.properties.list-style-type.upper-hexadecimal Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.upper-latin 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.upper-norwegian Safari6/7/2010 Chrome Android5/25/20214005
css.properties.list-style-type.upper-roman 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.list-style-type.urdu Safari6/7/2010 Chrome Android6/27/2012751
css.properties.margin 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.margin.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.margin.auto Safari6/23/2003 Chrome Android6/27/20123292
Edge: The auto value is not supported in quirks mode.Internet Explorer: The auto value is not supported in quirks mode.
css.properties.margin-block 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.margin-block.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.margin-block.auto 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.margin-block-end 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.margin-block-end.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.margin-block-end.auto 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.margin-block-start 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.margin-block-start.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.margin-block-start.auto 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.margin-bottom 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.margin-bottom.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.margin-bottom.auto 📋Safari6/23/2003 Chrome Android6/27/20123292
Edge: The auto value is not supported in quirks mode.Internet Explorer: The auto value is not supported in quirks mode.
css.properties.margin-inline 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.margin-inline.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.margin-inline.auto 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.margin-inline-end 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.margin-inline-end.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.margin-inline-end.auto 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.margin-inline-start 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.margin-inline-start.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.margin-inline-start.auto 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.margin-left 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.margin-left.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.margin-left.auto Safari6/23/2003 Chrome Android6/27/20123292
Edge: The auto value is not supported in quirks mode.Internet Explorer: The auto value is not supported in quirks mode.
css.properties.margin-right 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.margin-right.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.margin-right.auto Safari6/23/2003 Chrome Android6/27/20123292
Edge: The auto value is not supported in quirks mode.Internet Explorer: The auto value is not supported in quirks mode.
css.properties.margin-top 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.margin-top.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.margin-top.auto Safari6/23/2003 Chrome Android6/27/20123292
Edge: The auto value is not supported in quirks mode.Internet Explorer: The auto value is not supported in quirks mode.
css.properties.marker 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.marker.none 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.marker-end 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.marker-end.none 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.marker-mid 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.marker-mid.none 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.marker-start 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.marker-start.none 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.mask 📋Safari3/14/2022 Chrome Android12/5/2023631
Chrome: The prefixed property can be used with SVG and HTML with a slightly different syntax, which allows setting the non-standard -webkit-mask-attachment property.Chrome: While the property is recognized, values applied to it don't have any effect.Chrome Android: The prefixed property can be used with SVG and HTML with a slightly different syntax, which allows setting the non-standard -webkit-mask-attachment property.Chrome Android: While the property is recognized, values applied to it don't have any effect.Edge: The prefixed property can be used with SVG and HTML with a slightly different syntax, which allows setting the non-standard -webkit-mask-attachment property.Edge: While the property is recognized, values applied to it don't have any effect.Firefox: Only supports mask: url(file.svg#mask_id) or mask: url(#mask_id), where the URL is a reference to an SVG <mask> element.Firefox for Android: Only supports mask: url(file.svg#mask_id) or mask: url(#mask_id), where the URL is a reference to an SVG <mask> element.Quest Browser: The prefixed property can be used with SVG and HTML with a slightly different syntax, which allows setting the non-standard -webkit-mask-attachment property.Quest Browser: While the property is recognized, values applied to it don't have any effect.Opera: The prefixed property can be used with SVG and HTML with a slightly different syntax, which allows setting the non-standard -webkit-mask-attachment property.Opera: While the property is recognized, values applied to it don't have any effect.Opera Android: The prefixed property can be used with SVG and HTML with a slightly different syntax, which allows setting the non-standard -webkit-mask-attachment property.Opera Android: While the property is recognized, values applied to it don't have any effect.Safari: The prefixed property can be used with SVG and HTML with a slightly different syntax, which allows setting the non-standard -webkit-mask-attachment property.Safari: While the property is recognized, values applied to it don't have any effect.Safari on iOS: The prefixed property can be used with SVG and HTML with a slightly different syntax, which allows setting the non-standard -webkit-mask-attachment property.Safari on iOS: While the property is recognized, values applied to it don't have any effect.Samsung Internet: The prefixed property can be used with SVG and HTML with a slightly different syntax, which allows setting the non-standard -webkit-mask-attachment property.Samsung Internet: While the property is recognized, values applied to it don't have any effect.WebView Android: The prefixed property can be used with SVG and HTML with a slightly different syntax, which allows setting the non-standard -webkit-mask-attachment property.WebView Android: While the property is recognized, values applied to it don't have any effect.WebView on iOS: The prefixed property can be used with SVG and HTML with a slightly different syntax, which allows setting the non-standard -webkit-mask-attachment property.WebView on iOS: While the property is recognized, values applied to it don't have any effect.
css.properties.mask-border 📋Chrome Android6/27/2012 Safari12/11/20234184
css.properties.mask-border-outset 📋Chrome Android6/27/2012 Safari12/11/20234184
css.properties.mask-border-repeat 📋Chrome Android6/27/2012 Safari12/11/20234184
css.properties.mask-border-slice 📋Chrome Android6/27/2012 Safari12/11/20234184
css.properties.mask-border-source 📋Chrome Android6/27/2012 Safari12/11/20234184
css.properties.mask-border-width 📋Chrome Android6/27/2012 Safari12/11/20234184
css.properties.mask-clip 📋Safari3/14/2022 Chrome Android12/5/2023631
css.properties.mask-clip.border Safari6/8/2009 Chrome Android6/27/20121115
Chrome: Only works when using -webkit-mask-clip.Chrome Android: Only works when using -webkit-mask-clip.Edge: Only works when using -webkit-mask-clip.Quest Browser: Only works when using -webkit-mask-clip.Opera: Only works when using -webkit-mask-clip.Opera Android: Only works when using -webkit-mask-clip.Samsung Internet: Only works when using -webkit-mask-clip.
css.properties.mask-clip.content Safari6/8/2009 Chrome Android6/27/20121115
Chrome: Only works when using -webkit-mask-clip.Chrome Android: Only works when using -webkit-mask-clip.Edge: Only works when using -webkit-mask-clip.Quest Browser: Only works when using -webkit-mask-clip.Opera: Only works when using -webkit-mask-clip.Opera Android: Only works when using -webkit-mask-clip.Samsung Internet: Only works when using -webkit-mask-clip.
css.properties.mask-clip.padding Safari6/8/2009 Chrome Android6/27/20121115
Chrome: Only works when using -webkit-mask-clip.Chrome Android: Only works when using -webkit-mask-clip.Edge: Only works when using -webkit-mask-clip.Quest Browser: Only works when using -webkit-mask-clip.Opera: Only works when using -webkit-mask-clip.Opera Android: Only works when using -webkit-mask-clip.Samsung Internet: Only works when using -webkit-mask-clip.
css.properties.mask-clip.text Safari6/8/2009 Chrome Android6/27/20121115
Chrome: Only works when using -webkit-mask-clip.Chrome Android: Only works when using -webkit-mask-clip.Edge: Only works when using -webkit-mask-clip.Quest Browser: Only works when using -webkit-mask-clip.Opera: Only works when using -webkit-mask-clip.Opera Android: Only works when using -webkit-mask-clip.Samsung Internet: Only works when using -webkit-mask-clip.
css.properties.mask-composite 📋Safari3/14/2022 Chrome Android12/5/2023631
Chrome: See also -webkit-mask-composite for a similar non-standard property that uses different keywords.Chrome Android: See also -webkit-mask-composite for a similar non-standard property that uses different keywords.Edge: See also -webkit-mask-composite for a similar non-standard property that uses different keywords.Opera: See also -webkit-mask-composite for a similar non-standard property that uses different keywords.Opera Android: See also -webkit-mask-composite for a similar non-standard property that uses different keywords.Safari: See also -webkit-mask-composite for a similar non-standard property that uses different keywords.Safari on iOS: See also -webkit-mask-composite for a similar non-standard property that uses different keywords.Samsung Internet: See also -webkit-mask-composite for a similar non-standard property that uses different keywords.WebView Android: See also -webkit-mask-composite for a similar non-standard property that uses different keywords.WebView on iOS: See also -webkit-mask-composite for a similar non-standard property that uses different keywords.
css.properties.mask-composite.add 📋Safari3/14/2022 Chrome Android12/5/2023631
css.properties.mask-composite.exclude 📋Safari3/14/2022 Chrome Android12/5/2023631
css.properties.mask-composite.intersect 📋Safari3/14/2022 Chrome Android12/5/2023631
css.properties.mask-composite.subtract 📋Safari3/14/2022 Chrome Android12/5/2023631
css.properties.mask-image 📋Safari3/14/2022 Chrome Android12/5/2023631
Chrome: From version 8, Chrome added support for gradient values. Initially, Chrome supported only -webkit- prefixed values for gradients (such as -webkit-linear-gradient()). Later, support for unprefixed values was added.Chrome Android: From version 18, Chrome Android added support for gradient values. Initially, Chrome Android supported only -webkit- prefixed values for gradients (such as -webkit-linear-gradient()). Later, support for unprefixed values was added.Quest Browser: From version 5.0, Quest Browser added support for gradient values. Initially, Quest Browser supported only -webkit- prefixed values for gradients (such as -webkit-linear-gradient()). Later, support for unprefixed values was added.Safari: Initially, Safari supported only -webkit- prefixed values for gradients (such as -webkit-linear-gradient()). Later, support for unprefixed values was added.Safari on iOS: Initially, Safari on iOS supported only -webkit- prefixed values for gradients (such as -webkit-linear-gradient()). Later, support for unprefixed values was added.Samsung Internet: From version 1.0, Samsung Internet added support for gradient values. Initially, Samsung Internet supported only -webkit- prefixed values for gradients (such as -webkit-linear-gradient()). Later, support for unprefixed values was added.WebView Android: Initially, Android supported only -webkit- prefixed values for gradients (such as -webkit-linear-gradient()). Later, support for unprefixed values was added.WebView on iOS: Initially, WebView on iOS supported only -webkit- prefixed values for gradients (such as -webkit-linear-gradient()). Later, support for unprefixed values was added.
css.properties.mask-image.multiple_mask_images Safari6/8/2009 Chrome Android6/27/20121115
css.properties.mask-image.svg_masks Safari6/8/2009 Chrome Android6/27/20121115
css.properties.mask-mode 📋Safari3/14/2022 Chrome Android12/5/2023631
css.properties.mask-mode.alpha 📋Safari3/14/2022 Chrome Android12/5/2023631
css.properties.mask-mode.luminance 📋Safari3/14/2022 Chrome Android12/5/2023631
css.properties.mask-mode.match-source 📋Safari3/14/2022 Chrome Android12/5/2023631
css.properties.mask-origin 📋Safari3/14/2022 Chrome Android12/5/2023631
css.properties.mask-origin.border Chrome Android6/27/2012 Safari3/14/20223547
css.properties.mask-origin.content Chrome Android6/27/2012 Safari3/14/20223547
css.properties.mask-origin.padding Chrome Android6/27/2012 Safari3/14/20223547
css.properties.mask-position 📋Safari3/14/2022 Chrome Android12/5/2023631
css.properties.mask-repeat 📋Safari3/14/2022 Chrome Android12/5/2023631
css.properties.mask-size 📋Safari3/14/2022 Chrome Android12/5/2023631
css.properties.mask-type 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.mask-type.alpha 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.mask-type.luminance 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.math-shift 📋Chrome Android1/10/2023 Safari12/12/20251067
css.properties.math-shift.compact 📋Chrome Android1/10/2023 Safari12/12/20251067
css.properties.math-shift.normal 📋Chrome Android1/10/2023 Safari12/12/20251067
css.properties.math-style 📋Safari4/26/2021 Chrome Android1/10/2023624
css.properties.math-style.compact 📋Safari4/26/2021 Chrome Android1/10/2023624
css.properties.math-style.normal 📋Safari4/26/2021 Chrome Android1/10/2023624
css.properties.max-block-size 📋Chrome Android3/16/2017 Safari3/25/2019739
css.properties.max-block-size.anchor-size 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.max-block-size.fit-content Chrome Android3/16/2017 Safari3/25/2019739
css.properties.max-block-size.max-content Chrome Android3/16/2017 Safari3/25/2019739
css.properties.max-block-size.min-content Chrome Android3/16/2017 Safari3/25/2019739
css.properties.max-block-size.none 📋Chrome Android3/16/2017 Safari3/25/2019739
css.properties.max-height 📋Safari4/15/2005 Chrome Android6/27/20122630
Firefox: CSS 2.1 leaves the behavior of max-height with table undefined. Firefox supports applying max-height to table elements.Opera: CSS 2.1 leaves the behavior of max-height with table undefined. Opera supports applying max-height to table elements.
css.properties.max-height.anchor-size 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.max-height.fit-content 📋Chrome Android10/14/2015 Safari9/19/2017706
Firefox: Firefox implements the definitions given in CSS3 Basic Box. This defines available and not fit-available. Also, the definition of fit-content is simpler than in CSS3 Sizing.Firefox for Android: Firefox for Android implements the definitions given in CSS3 Basic Box. This defines available and not fit-available. Also, the definition of fit-content is simpler than in CSS3 Sizing.
css.properties.max-height.max-content 📋Chrome Android10/14/2015 Safari9/19/2017706
css.properties.max-height.min-content 📋Chrome Android10/14/2015 Safari9/19/2017706
css.properties.max-height.none 📋Safari4/15/2005 Chrome Android6/27/20122630
css.properties.max-height.stretch 📋Safari9/30/2015 Chrome Android6/24/20253555
css.properties.max-inline-size 📋Chrome Android3/16/2017 Safari3/25/2019739
css.properties.max-inline-size.anchor-size 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.max-inline-size.fit-content Chrome Android3/16/2017 Safari3/25/2019739
css.properties.max-inline-size.max-content Chrome Android3/16/2017 Safari3/25/2019739
css.properties.max-inline-size.min-content Chrome Android3/16/2017 Safari3/25/2019739
css.properties.max-inline-size.none 📋Chrome Android3/16/2017 Safari3/25/2019739
css.properties.max-width 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: CSS 2.1 leaves the behavior of max-width with table undefined. Firefox supports applying max-width to table elements.Firefox for Android: CSS 2.1 leaves the behavior of max-width with table undefined. Firefox for Android supports applying max-width to table elements.Opera: CSS 2.1 leaves the behavior of max-width with table undefined. Opera supports applying max-width to table elements.
css.properties.max-width.anchor-size 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.max-width.fit-content 📋Chrome Android10/14/2015 Safari9/19/2017706
Firefox: Firefox implements the definitions given in CSS3 Basic Box. This defines available and not fit-available. Also, the definition of fit-content is simpler than in CSS3 Sizing.Firefox for Android: Firefox for Android implements the definitions given in CSS3 Basic Box. This defines available and not fit-available. Also, the definition of fit-content is simpler than in CSS3 Sizing.
css.properties.max-width.max-content 📋Chrome Android10/14/2015 Safari9/19/2017706
css.properties.max-width.min-content 📋Chrome Android10/14/2015 Safari9/19/2017706
css.properties.max-width.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.max-width.stretch 📋Safari10/22/2013 Chrome Android6/24/20254263
css.properties.min-block-size 📋Chrome Android3/16/2017 Safari3/25/2019739
css.properties.min-block-size.anchor-size 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.min-block-size.auto 📋Chrome Android3/16/2017 Safari3/25/2019739
css.properties.min-block-size.fit-content Chrome Android3/16/2017 Safari3/25/2019739
css.properties.min-block-size.max-content Chrome Android3/16/2017 Safari3/25/2019739
css.properties.min-block-size.min-content Chrome Android3/16/2017 Safari3/25/2019739
css.properties.min-height 📋Safari4/15/2005 Chrome Android6/27/20122630
Firefox: CSS 2.1 leaves the behavior of min-height with table undefined. Firefox supports applying min-height to table elements.Firefox for Android: CSS 2.1 leaves the behavior of min-height with table undefined. Firefox for Android supports applying min-height to table elements.Internet Explorer: In Internet Explorer 10 and 11, a min-height declaration on a column-direction flex container doesn't apply to the container's flex items. See Flexbug #3 for more info.Opera: CSS 2.1 leaves the behavior of min-height with table undefined. Opera supports applying min-height to table elements.
css.properties.min-height.anchor-size 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.min-height.auto Chrome Android2/27/2013 Safari10/22/2013237
Firefox: Firefox 18 and later used auto as the initial value for min-height.Firefox for Android: Firefox for Android 18 and later used auto as the initial value for min-height.
css.properties.min-height.fit-content Chrome Android10/14/2015 Safari9/19/2017706
Firefox: Firefox implements the definitions given in CSS3 Basic Box. This defines available and not fit-available. Also, the definition of fit-content is simpler than in CSS3 Sizing.Firefox for Android: Firefox for Android implements the definitions given in CSS3 Basic Box. This defines available and not fit-available. Also, the definition of fit-content is simpler than in CSS3 Sizing.
css.properties.min-height.max-content Chrome Android10/14/2015 Safari9/19/2017706
css.properties.min-height.min-content Chrome Android10/14/2015 Safari9/19/2017706
css.properties.min-height.stretch Safari9/30/2015 Chrome Android6/24/20253555
css.properties.min-inline-size 📋Chrome Android3/16/2017 Safari3/25/2019739
css.properties.min-inline-size.anchor-size 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.min-inline-size.auto 📋Chrome Android3/16/2017 Safari3/25/2019739
css.properties.min-inline-size.fit-content Chrome Android3/16/2017 Safari3/25/2019739
css.properties.min-inline-size.max-content Chrome Android3/16/2017 Safari3/25/2019739
css.properties.min-inline-size.min-content Chrome Android3/16/2017 Safari3/25/2019739
css.properties.min-width 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: CSS 2.1 leaves the behavior of min-width with table undefined. Firefox supports applying min-width to table elements.Firefox for Android: CSS 2.1 leaves the behavior of min-width with table undefined. Firefox for Android supports applying min-width to table elements.Opera: CSS 2.1 leaves the behavior of min-width with table undefined. Opera supports applying min-width to table elements.
css.properties.min-width.anchor-size 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.min-width.auto Chrome Android2/27/2013 Safari10/22/2013237
Chrome: Chrome uses auto as the initial value for min-width.Chrome Android: Chrome Android uses auto as the initial value for min-width.Edge: Edge uses auto as the initial value for min-width.Firefox: Firefox 18 and later (until the value was removed), used auto as the initial value for min-width.Firefox for Android: Firefox for Android 18 and later (until the value was removed), used auto as the initial value for min-width.Quest Browser: Quest Browser uses auto as the initial value for min-width.Opera: Opera uses auto as the initial value for min-width.Opera Android: Opera Android uses auto as the initial value for min-width.Samsung Internet: Samsung Internet uses auto as the initial value for min-width.WebView Android: WebView Android uses auto as the initial value for min-width.
css.properties.min-width.fit-content Chrome Android10/14/2015 Safari9/19/2017706
Firefox: Firefox implements the definitions given in CSS3 Basic Box. This defines available and not fit-available. Also, the definition of fit-content is simpler than in CSS3 Sizing.Firefox for Android: Firefox for Android implements the definitions given in CSS3 Basic Box. This defines available and not fit-available. Also, the definition of fit-content is simpler than in CSS3 Sizing.
css.properties.min-width.max-content Chrome Android10/14/2015 Safari9/19/2017706
css.properties.min-width.min-content Chrome Android10/14/2015 Safari9/19/2017706
css.properties.min-width.stretch Safari10/22/2013 Chrome Android6/24/20254263
css.properties.mix-blend-mode 📋Safari10/16/2014 Chrome Android3/11/2015146
css.properties.mix-blend-mode.color 📋Chrome Android3/11/2015 Safari9/20/2016559
css.properties.mix-blend-mode.color-burn 📋Safari10/16/2014 Chrome Android3/11/2015146
css.properties.mix-blend-mode.color-dodge 📋Safari10/16/2014 Chrome Android3/11/2015146
css.properties.mix-blend-mode.darken 📋Safari10/16/2014 Chrome Android3/11/2015146
css.properties.mix-blend-mode.difference 📋Safari10/16/2014 Chrome Android3/11/2015146
css.properties.mix-blend-mode.exclusion 📋Safari10/16/2014 Chrome Android3/11/2015146
css.properties.mix-blend-mode.hard-light 📋Safari10/16/2014 Chrome Android3/11/2015146
css.properties.mix-blend-mode.hue 📋Chrome Android3/11/2015 Safari9/20/2016559
css.properties.mix-blend-mode.lighten 📋Safari10/16/2014 Chrome Android3/11/2015146
css.properties.mix-blend-mode.luminosity 📋Chrome Android3/11/2015 Safari9/20/2016559
css.properties.mix-blend-mode.multiply 📋Safari10/16/2014 Chrome Android3/11/2015146
css.properties.mix-blend-mode.normal 📋Safari10/16/2014 Chrome Android3/11/2015146
css.properties.mix-blend-mode.overlay 📋Safari10/16/2014 Chrome Android3/11/2015146
css.properties.mix-blend-mode.plus-lighter 📋Safari3/21/2016 Chrome Android3/29/20222199
css.properties.mix-blend-mode.saturation 📋Chrome Android3/11/2015 Safari9/20/2016559
css.properties.mix-blend-mode.screen 📋Safari10/16/2014 Chrome Android3/11/2015146
css.properties.mix-blend-mode.soft-light 📋Safari10/16/2014 Chrome Android3/11/2015146
css.properties.object-fit 📋Chrome Android1/15/2014 Safari9/20/2016979
Edge: Only supported for <img> elements.
css.properties.object-fit.contain 📋Chrome Android1/15/2014 Safari9/20/2016979
css.properties.object-fit.cover 📋Chrome Android1/15/2014 Safari9/20/2016979
css.properties.object-fit.fill 📋Chrome Android1/15/2014 Safari9/20/2016979
css.properties.object-fit.none 📋Chrome Android1/15/2014 Safari9/20/2016979
css.properties.object-fit.scale-down 📋Chrome Android1/15/2014 Safari9/20/2016979
css.properties.object-position 📋Chrome Android1/15/2014 Safari9/20/2016979
Edge: Only supported for <img> elements.
css.properties.object-position.bottom 📋Chrome Android1/15/2014 Safari9/20/2016979
css.properties.object-position.center 📋Chrome Android1/15/2014 Safari9/20/2016979
css.properties.object-position.left 📋Chrome Android1/15/2014 Safari9/20/2016979
css.properties.object-position.right 📋Chrome Android1/15/2014 Safari9/20/2016979
css.properties.object-position.top 📋Chrome Android1/15/2014 Safari9/20/2016979
css.properties.offset 📋Chrome Android12/6/2016 Safari9/12/20222106
css.properties.offset.auto 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset.border-box 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset.bottom 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset.center 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset.content-box 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset.fill-box 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset.left 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset.none 📋Chrome Android9/5/2017 Safari9/12/20221833
css.properties.offset.normal 📋Chrome Android8/15/2023 Safari9/18/202334
css.properties.offset.padding-box 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset.right 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset.stroke-box 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset.top 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset.view-box 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset-anchor 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset-anchor.auto 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset-anchor.bottom 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset-anchor.center 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset-anchor.left 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset-anchor.right 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset-anchor.top 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset-distance 📋Chrome Android12/6/2016 Safari9/12/20222106
css.properties.offset-path 📋Chrome Android12/6/2016 Safari3/14/20221924
Samsung Internet: path() is the only value type supported.
css.properties.offset-path.basic_shape 📋Chrome Android8/15/2023 Safari9/16/2024398
css.properties.offset-path.border-box 📋Chrome Android8/15/2023 Safari9/16/2024398
css.properties.offset-path.content-box 📋Chrome Android8/15/2023 Safari9/16/2024398
css.properties.offset-path.fill-box 📋Chrome Android8/15/2023 Safari9/16/2024398
css.properties.offset-path.none 📋Chrome Android2/4/2020 Safari9/16/20241686
css.properties.offset-path.padding-box 📋Chrome Android8/15/2023 Safari9/16/2024398
css.properties.offset-path.path Chrome Android1/23/2018 Safari9/12/20221693
css.properties.offset-path.ray 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset-path.stroke-box 📋Chrome Android8/15/2023 Safari9/16/2024398
css.properties.offset-path.url 📋Chrome Android8/15/2023 Safari9/18/202334
css.properties.offset-path.view-box 📋Chrome Android8/15/2023 Safari9/16/2024398
css.properties.offset-position 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset-position.auto 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset-position.bottom 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset-position.center 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset-position.left 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset-position.normal 📋Chrome Android8/15/2023 Safari12/11/2023118
css.properties.offset-position.right 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset-position.top 📋Safari9/12/2022 Chrome Android8/15/2023337
css.properties.offset-rotate 📋Chrome Android2/1/2017 Safari9/12/20222049
css.properties.offset-rotate.auto 📋Chrome Android10/14/2015 Safari9/12/20222525
css.properties.offset-rotate.reverse 📋Chrome Android10/14/2015 Safari9/12/20222525
css.properties.opacity 📋Safari4/29/2005 Chrome Android6/27/20122616
css.properties.opacity.percentages Chrome Android10/22/2019 Safari3/24/2020154
css.properties.order 📋Chrome Android8/21/2013 Safari9/30/2015770
Firefox: Since Firefox 28, multi-line flexbox is supported.Firefox for Android: Since Firefox for Android 28, multi-line flexbox is supported.
css.properties.orphans 📋Safari4/15/2005 Chrome Android2/27/20132875
css.properties.outline 📋Chrome Android9/21/2021 Safari3/27/2023552
Chrome: Before Chrome 94, outline does not follow the shape of border-radius.Chrome Android: Before Chrome Android 94, outline does not follow the shape of border-radius.Edge: Before Edge 94, outline does not follow the shape of border-radius.Firefox: Before Firefox 88, outline does not follow the shape of border-radius.Firefox for Android: Before Firefox for Android 88, outline does not follow the shape of border-radius.Quest Browser: Before Quest Browser 18.0, outline does not follow the shape of border-radius.Opera: Before Opera 80, outline does not follow the shape of border-radius.Safari: Before Safari 16.4, outline does not follow the shape of border-radius. See bug 20807.Safari on iOS: Before Safari on iOS 16.4, outline does not follow the shape of border-radius. See bug 20807.WebView Android: Before Chrome 94, outline does not follow the shape of border-radius.WebView on iOS: Before WebView on iOS 16.4, outline does not follow the shape of border-radius. See bug 20807.
css.properties.outline.auto 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline.currentColor 📋Safari2/2/2004 Chrome Android11/14/20133573
css.properties.outline.dashed 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline.dotted 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline.double 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline.groove 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline.inset 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline.medium 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline.none 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline.outset 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline.ridge 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline.solid 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline.thick 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline.thin 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline.transparent 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline-color 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline-color.transparent 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline-offset 📋Safari2/2/2004 Chrome Android6/27/20123068
Firefox: Before Firefox 88, an outline does not follow the shape of border-radius.Firefox for Android: Before Firefox for Android 88, an outline does not follow the shape of border-radius.
css.properties.outline-style 📋Safari2/2/2004 Chrome Android6/27/20123068
Firefox: Before Firefox 88, an outline does not follow the shape of border-radius.Firefox for Android: Before Firefox for Android 88, an outline does not follow the shape of border-radius.
css.properties.outline-style.auto 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline-style.dashed 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline-style.dotted 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline-style.double 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline-style.groove 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline-style.inset 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline-style.none 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline-style.outset 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline-style.ridge 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline-style.solid 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline-width 📋Safari2/2/2004 Chrome Android6/27/20123068
Firefox: Before Firefox 88, an outline does not follow the shape of border-radius.Firefox for Android: Before Firefox for Android 88, an outline does not follow the shape of border-radius.
css.properties.outline-width.medium 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline-width.thick 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.outline-width.thin 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.overflow 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: After Firefox 3.6, the overflow property is correctly applied to table group elements (<thead>, <tbody>, <tfoot>).Internet Explorer: From version 4 to 6, Internet Explorer enlarges an element with overflow: visible (default value) to fit the content inside it. height and width behave like min-height and min-width, respectively.
css.properties.overflow.auto 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.overflow.clip 📋Chrome Android4/13/2021 Safari9/12/2022517
css.properties.overflow.hidden 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.overflow.multiple_keywords Chrome Android7/24/2018 Safari3/24/2020609
css.properties.overflow.scroll 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.overflow.visible 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.overflow-block 📋Chrome Android4/1/2025 Safari9/15/2025167
css.properties.overflow-block.auto 📋Chrome Android4/1/2025 Safari9/15/2025167
css.properties.overflow-block.clip 📋Chrome Android4/1/2025 Safari9/15/2025167
css.properties.overflow-block.hidden 📋Chrome Android4/1/2025 Safari9/15/2025167
css.properties.overflow-block.scroll 📋Chrome Android4/1/2025 Safari9/15/2025167
css.properties.overflow-block.visible 📋Chrome Android4/1/2025 Safari9/15/2025167
css.properties.overflow-inline 📋Chrome Android4/1/2025 Safari9/15/2025167
css.properties.overflow-inline.auto 📋Chrome Android4/1/2025 Safari9/15/2025167
css.properties.overflow-inline.clip 📋Chrome Android4/1/2025 Safari9/15/2025167
css.properties.overflow-inline.hidden 📋Chrome Android4/1/2025 Safari9/15/2025167
css.properties.overflow-inline.scroll 📋Chrome Android4/1/2025 Safari9/15/2025167
css.properties.overflow-inline.visible 📋Chrome Android4/1/2025 Safari9/15/2025167
css.properties.overflow-wrap 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.overflow-wrap.anywhere 📋Chrome Android2/4/2020 Safari3/14/2022769
css.properties.overflow-wrap.break-word 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.overflow-wrap.normal 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.overflow-x 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.overflow-x.auto 📋Safari10/26/2007 Chrome Android6/27/20121706
Safari: Before Safari 12.1, overlay only had an effect on legacy scrollbars on macOS. Since Safari 12.1, it is parsed as auto.Safari on iOS: Before Safari on iOS 12.1, overlay only had an effect on legacy scrollbars on macOS. Since Safari on iOS 12.1, it is parsed as auto.WebView on iOS: Before WebView on iOS 12.1, overlay only had an effect on legacy scrollbars on macOS. Since WebView on iOS 12.1, it is parsed as auto.
css.properties.overflow-x.clip 📋Chrome Android4/13/2021 Safari9/12/2022517
css.properties.overflow-x.hidden 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.overflow-x.scroll 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.overflow-x.visible 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.overflow-y 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.overflow-y.auto 📋Safari10/26/2007 Chrome Android6/27/20121706
Safari: Before Safari 12.1, overlay only had an effect on legacy scrollbars on macOS. Since Safari 12.1, it is parsed as auto.Safari on iOS: Before Safari on iOS 12.1, overlay only had an effect on legacy scrollbars on macOS. Since Safari on iOS 12.1, it is parsed as auto.WebView on iOS: Before WebView on iOS 12.1, overlay only had an effect on legacy scrollbars on macOS. Since WebView on iOS 12.1, it is parsed as auto.
css.properties.overflow-y.clip 📋Chrome Android4/13/2021 Safari9/12/2022517
css.properties.overflow-y.hidden 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.overflow-y.scroll 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.overflow-y.visible 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.overscroll-behavior 📋Chrome Android12/5/2017 Safari9/12/20221742
css.properties.overscroll-behavior.auto 📋Chrome Android12/5/2017 Safari9/12/20221742
css.properties.overscroll-behavior.contain 📋Chrome Android12/5/2017 Safari9/12/20221742
css.properties.overscroll-behavior.none 📋Chrome Android12/5/2017 Safari9/12/20221742
Edge: The none value incorrectly behaves as contain (allowing for the elastic bounce effect).
css.properties.overscroll-behavior-block 📋Chrome Android9/10/2019 Safari9/12/20221098
css.properties.overscroll-behavior-block.auto 📋Chrome Android9/10/2019 Safari9/12/20221098
css.properties.overscroll-behavior-block.contain 📋Chrome Android9/10/2019 Safari9/12/20221098
css.properties.overscroll-behavior-block.none 📋Chrome Android9/10/2019 Safari9/12/20221098
css.properties.overscroll-behavior-inline 📋Chrome Android9/10/2019 Safari9/12/20221098
css.properties.overscroll-behavior-inline.auto 📋Chrome Android9/10/2019 Safari9/12/20221098
css.properties.overscroll-behavior-inline.contain 📋Chrome Android9/10/2019 Safari9/12/20221098
css.properties.overscroll-behavior-inline.none 📋Chrome Android9/10/2019 Safari9/12/20221098
css.properties.overscroll-behavior-x 📋Chrome Android12/5/2017 Safari9/12/20221742
css.properties.overscroll-behavior-x.auto 📋Chrome Android12/5/2017 Safari9/12/20221742
css.properties.overscroll-behavior-x.contain 📋Chrome Android12/5/2017 Safari9/12/20221742
css.properties.overscroll-behavior-x.none 📋Chrome Android12/5/2017 Safari9/12/20221742
Edge: The none value incorrectly behaves as contain (allowing for the elastic bounce effect).
css.properties.overscroll-behavior-y 📋Chrome Android12/5/2017 Safari9/12/20221742
css.properties.overscroll-behavior-y.auto 📋Chrome Android12/5/2017 Safari9/12/20221742
css.properties.overscroll-behavior-y.contain 📋Chrome Android12/5/2017 Safari9/12/20221742
css.properties.overscroll-behavior-y.none 📋Chrome Android12/5/2017 Safari9/12/20221742
Edge: The none value incorrectly behaves as contain (allowing for the elastic bounce effect).
css.properties.padding 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.padding-block 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.padding-block-end 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.padding-block-start 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.padding-bottom 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.padding-inline 📋Chrome Android11/17/2020 Safari4/26/2021160
css.properties.padding-inline-end 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.padding-inline-start 📋Chrome Android9/4/2018 Safari3/25/2019202
css.properties.padding-left 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.padding-right 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.padding-top 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.page 📋Safari6/23/2003 Chrome Android8/25/20206273
css.properties.page.auto 📋Safari6/23/2003 Chrome Android8/25/20206273
css.properties.page-break-after 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.page-break-after.always 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.page-break-after.auto 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.page-break-after.left 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.page-break-after.right 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.page-break-before 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.page-break-before.always 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.page-break-before.auto 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.page-break-before.left 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.page-break-before.right 📋Safari2/2/2004 Chrome Android6/27/20123068
css.properties.page-break-inside 📋Safari4/15/2005 Chrome Android6/27/20122630
css.properties.page-break-inside.auto 📋Safari4/15/2005 Chrome Android6/27/20122630
css.properties.page-break-inside.avoid 📋Safari4/15/2005 Chrome Android6/27/20122630
Firefox: Until Firefox 25, page-break-inside: avoid did not work with the height of a block.Firefox for Android: Until Firefox for Android 25, page-break-inside: avoid did not work with the height of a block.
css.properties.paint-order 📋Safari9/19/2017 Chrome Android3/19/20242373
Chrome: Does not affect stroked HTML text, see bug 41372165Chrome Android: Does not affect stroked HTML text, see bug 41372165Edge: Does not affect stroked HTML text, see bug 41372165Quest Browser: Does not affect stroked HTML text, see bug 41372165Opera: Does not affect stroked HTML text, see bug 41372165Opera Android: Does not affect stroked HTML text, see bug 41372165Safari: Does not affect stroked HTML text, see bug 168601Safari on iOS: Does not affect stroked HTML text, see bug 168601Samsung Internet: Does not affect stroked HTML text, see bug 41372165WebView Android: Does not affect stroked HTML text, see bug 41372165WebView on iOS: Does not affect stroked HTML text, see bug 168601
css.properties.paint-order.fill 📋Chrome Android5/20/2014 Safari10/16/2014149
css.properties.paint-order.markers 📋Chrome Android5/20/2014 Safari10/16/2014149
css.properties.paint-order.normal 📋Chrome Android5/20/2014 Safari10/16/2014149
css.properties.paint-order.stroke 📋Chrome Android5/20/2014 Safari10/16/2014149
css.properties.perspective 📋Chrome Android7/16/2014 Safari9/30/2015441
Firefox: From version 147, Firefox supports -webkit-perspective with unitless values for increased compatibility.Firefox for Android: From version 147, Firefox for Android supports -webkit-perspective with unitless values for increased compatibility.Safari on iOS: In iOS 13, the perspective property did not function properly. The issues were fixed in iOS 14.WebView on iOS: In iOS 13, the perspective property did not function properly. The issues were fixed in iOS 14.
css.properties.perspective.none 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.perspective-origin 📋Chrome Android7/16/2014 Safari9/30/2015441
css.properties.perspective-origin.bottom 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.perspective-origin.center 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.perspective-origin.left 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.perspective-origin.right 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.perspective-origin.top 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.place-content 📋Safari9/30/2015 Chrome Android6/6/2017615
css.properties.place-content.flex_context Safari9/30/2015 Chrome Android6/6/2017615
Firefox: Starting with version 60, you can only specify a single value if it is valid for both align-content and justify-content.Firefox for Android: Starting with version 60, you can only specify a single value if it is valid for both align-content and justify-content.
css.properties.place-content.grid_context Chrome Android6/6/2017 Safari9/19/2017105
Firefox: Starting with version 60, you can only specify a single value if it is valid for both align-content and justify-content.Firefox for Android: Starting with version 60, you can only specify a single value if it is valid for both align-content and justify-content.
css.properties.place-items 📋Chrome Android6/6/2017 Safari9/19/2017105
css.properties.place-items.anchor-center 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.place-items.flex_context Chrome Android6/6/2017 Safari9/19/2017105
css.properties.place-items.grid_context Chrome Android6/6/2017 Safari9/19/2017105
css.properties.place-self 📋Chrome Android6/6/2017 Safari9/19/2017105
css.properties.place-self.anchor-center 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.place-self.flex_context Chrome Android6/6/2017 Safari9/19/2017105
css.properties.place-self.grid_context Chrome Android6/6/2017 Safari9/19/2017105
css.properties.pointer-events 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.pointer-events.all 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.pointer-events.auto 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.pointer-events.bounding-box 📋Chrome Android2/26/2014 Safari9/19/20192031
css.properties.pointer-events.fill 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.pointer-events.html_elements Safari6/8/2009 Chrome Android6/27/20121115
css.properties.pointer-events.none 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.pointer-events.painted 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.pointer-events.stroke 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.pointer-events.visible 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.pointer-events.visibleFill 📋Safari6/8/2009 Chrome Android11/14/20131620
css.properties.pointer-events.visiblePainted 📋Safari6/8/2009 Chrome Android11/14/20131620
css.properties.pointer-events.visibleStroke 📋Safari6/8/2009 Chrome Android11/14/20131620
css.properties.position 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.position.absolute 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Before Firefox 57, absolute positioning did not work correctly when applied to elements inside tables that have border-collapse applied to them (bug 1379306).Firefox: Before Firefox 30, absolute positioning of table rows and row groups was not supported (bug 63895).Firefox for Android: Before Firefox for Android 57, absolute positioning did not work correctly when applied to elements inside tables that have border-collapse applied to them (bug 1379306).Firefox for Android: Before Firefox for Android 30, absolute positioning of table rows and row groups was not supported (bug 63895).
css.properties.position.absolutely_positioned_flex_children Chrome Android7/27/2016 Safari9/19/2017419
css.properties.position.fixed 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Before Firefox 44, position: fixed didn't create a stacking context in most cases. Firefox and the specification have been modified to mimic Chrome and Safari's long-time behavior.Firefox for Android: Before Firefox for Android 44, position: fixed didn't create a stacking context in most cases. Firefox for Android and the specification have been modified to mimic Chrome and Safari's long-time behavior.Internet Explorer: In Internet Explorer, fixed positioning doesn't work if the document is in quirks mode.
css.properties.position.position_sticky_table_elements Safari10/16/2014 Chrome Android2/1/2017839
Firefox: Borders do not display on table headers if border-collapse is set to collapse (bug 1727594).Firefox for Android: Borders do not display on table headers if border-collapse is set to collapse (bug 1727594).
css.properties.position.relative 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.position.static 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.position.sticky 📋Chrome Android2/1/2017 Safari9/19/2019960
css.properties.position-anchor 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.position-anchor.auto 📋Chrome Android5/14/2024 Safari9/15/2025489
Chrome: The generic auto value exists, but it does not yet have the effect described in the spec.Chrome Android: The generic auto value exists, but it does not yet have the effect described in the spec.Edge: The generic auto value exists, but it does not yet have the effect described in the spec.Opera: The generic auto value exists, but it does not yet have the effect described in the spec.Opera Android: The generic auto value exists, but it does not yet have the effect described in the spec.Samsung Internet: The generic auto value exists, but it does not yet have the effect described in the spec.WebView Android: The generic auto value exists, but it does not yet have the effect described in the spec.
css.properties.position-area 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.block-end 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.block-start 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.bottom 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When bottom is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When bottom is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When bottom is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When bottom is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When bottom is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When bottom is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When bottom is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When bottom is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When bottom is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.center 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.end 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.inline-end 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.inline-start 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.left 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When left is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When left is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When left is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When left is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When left is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When left is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When left is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When left is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When left is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.none 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.right 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When right is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When right is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When right is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When right is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When right is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When right is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When right is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When right is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When right is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.self-block-end 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When self-block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When self-block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When self-block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-block-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.self-block-start 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When self-block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When self-block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When self-block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-block-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.self-end 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.self-inline-end 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When self-inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When self-inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When self-inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-inline-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.self-inline-start 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When self-inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When self-inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When self-inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-inline-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.self-start 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.self-x-end 📋Safari12/12/2025 Chrome Android1/13/202632
Chrome: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.self-x-start 📋Safari12/12/2025 Chrome Android1/13/202632
Chrome: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.self-y-end 📋Safari12/12/2025 Chrome Android1/13/202632
Chrome: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.self-y-start 📋Safari12/12/2025 Chrome Android1/13/202632
Chrome: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.span-all 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: Using span-all unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: Using span-all unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: Using span-all unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: Using span-all unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: Using span-all unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: Using span-all unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: Using span-all unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: Using span-all unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: Using span-all unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.span-block-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-block-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-bottom 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-inline-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-inline-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-left 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-right 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-self-block-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-self-block-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-self-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-self-inline-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-self-inline-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-self-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-self-x-end 📋Chrome Android12/2/2025 Safari12/12/202510
css.properties.position-area.span-self-x-start 📋Chrome Android12/2/2025 Safari12/12/202510
css.properties.position-area.span-self-y-end 📋Chrome Android12/2/2025 Safari12/12/202510
css.properties.position-area.span-self-y-start 📋Chrome Android12/2/2025 Safari12/12/202510
css.properties.position-area.span-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-top 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-x-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-x-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-y-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.span-y-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-area.top 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When top is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When top is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When top is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When top is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When top is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When top is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When top is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When top is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When top is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.x-end 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.x-start 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.y-end 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-area.y-start 📋Safari9/15/2025 Chrome Android1/13/2026120
Chrome: When y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-try 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.position-try.block-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.block-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.bottom 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.center 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.flip-block 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.position-try.flip-inline 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.position-try.flip-start 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.position-try.flip-x 📋Safari12/12/2025 Chrome Android1/13/202632
css.properties.position-try.flip-y 📋Safari12/12/2025 Chrome Android1/13/202632
css.properties.position-try.inline-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.inline-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.left 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.none 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.position-try.right 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.self-block-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.self-block-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.self-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.self-inline-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.self-inline-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.self-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.self-x-end 📋Safari12/12/2025 Chrome Android1/13/202632
Chrome: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-try.self-x-start 📋Safari12/12/2025 Chrome Android1/13/202632
Chrome: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-try.self-y-end 📋Safari12/12/2025 Chrome Android1/13/202632
Chrome: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-try.self-y-start 📋Safari12/12/2025 Chrome Android1/13/202632
Chrome: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-try.span-all 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-block-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-block-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-bottom 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-inline-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-inline-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-left 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-right 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-self-block-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-self-block-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-self-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-self-inline-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-self-inline-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-self-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-self-x-end 📋Chrome Android12/2/2025 Safari12/12/202510
css.properties.position-try.span-self-x-start 📋Chrome Android12/2/2025 Safari12/12/202510
css.properties.position-try.span-self-y-end 📋Chrome Android12/2/2025 Safari12/12/202510
css.properties.position-try.span-self-y-start 📋Chrome Android12/2/2025 Safari12/12/202510
css.properties.position-try.span-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-top 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-x-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-x-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-y-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.span-y-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.top 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.x-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.x-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.y-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try.y-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks 📋Chrome Android8/20/2024 Safari9/15/2025391
css.properties.position-try-fallbacks.block-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.block-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.bottom 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.center 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.flip-block 📋Chrome Android8/20/2024 Safari9/15/2025391
css.properties.position-try-fallbacks.flip-inline 📋Chrome Android8/20/2024 Safari9/15/2025391
css.properties.position-try-fallbacks.flip-start 📋Chrome Android8/20/2024 Safari9/15/2025391
css.properties.position-try-fallbacks.flip-x 📋Safari12/12/2025 Chrome Android1/13/202632
css.properties.position-try-fallbacks.flip-y 📋Safari12/12/2025 Chrome Android1/13/202632
css.properties.position-try-fallbacks.inline-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.inline-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.left 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.none 📋Chrome Android8/20/2024 Safari9/15/2025391
css.properties.position-try-fallbacks.position-area 📋Chrome Android8/20/2024 Safari9/15/2025391
Chrome: inset-area values had to be wrapped inside an inset-area() function.Chrome Android: inset-area values had to be wrapped inside an inset-area() function.Edge: inset-area values had to be wrapped inside an inset-area() function.Opera: inset-area values had to be wrapped inside an inset-area() function.Opera Android: inset-area values had to be wrapped inside an inset-area() function.Samsung Internet: inset-area values had to be wrapped inside an inset-area() function.WebView Android: inset-area values had to be wrapped inside an inset-area() function.
css.properties.position-try-fallbacks.right 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.self-block-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.self-block-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.self-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.self-inline-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.self-inline-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.self-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.self-x-end 📋Safari12/12/2025 Chrome Android1/13/202632
Chrome: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-x-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When x-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-try-fallbacks.self-x-start 📋Safari12/12/2025 Chrome Android1/13/202632
Chrome: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-x-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When x-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-try-fallbacks.self-y-end 📋Safari12/12/2025 Chrome Android1/13/202632
Chrome: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-y-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When y-self-end is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-try-fallbacks.self-y-start 📋Safari12/12/2025 Chrome Android1/13/202632
Chrome: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Chrome Android: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Edge: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Firefox: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Firefox for Android: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 2008537.Opera: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Opera Android: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.Samsung Internet: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When self-y-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.WebView Android: When y-self-start is used as a single keyword, or alongside span-all, it unexpectedly allows the anchored box to overflow the viewport, obscuring content. Use place-self: anchor-center as a workaround. See bug 438334710.
css.properties.position-try-fallbacks.span-all 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-block-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-block-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-bottom 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-inline-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-inline-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-left 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-right 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-self-block-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-self-block-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-self-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-self-inline-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-self-inline-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-self-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-self-x-end 📋Chrome Android12/2/2025 Safari12/12/202510
css.properties.position-try-fallbacks.span-self-x-start 📋Chrome Android12/2/2025 Safari12/12/202510
css.properties.position-try-fallbacks.span-self-y-end 📋Chrome Android12/2/2025 Safari12/12/202510
css.properties.position-try-fallbacks.span-self-y-start 📋Chrome Android12/2/2025 Safari12/12/202510
css.properties.position-try-fallbacks.span-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-top 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-x-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-x-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-y-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.span-y-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.top 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.x-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.x-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.y-end 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-fallbacks.y-start 📋Chrome Android9/17/2024 Safari9/15/2025363
css.properties.position-try-order 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.position-try-order.most-block-size 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.position-try-order.most-height 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.position-try-order.most-inline-size 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.position-try-order.most-width 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.position-try-order.normal 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.position-visibility 📋Chrome Android5/14/2024 Safari12/12/2025577
css.properties.position-visibility.always 📋Chrome Android5/14/2024 Safari12/12/2025577
css.properties.position-visibility.anchors-visible 📋Chrome Android5/14/2024 Safari12/12/2025577
css.properties.position-visibility.no-overflow 📋Chrome Android5/14/2024 Safari12/12/2025577
css.properties.print-color-adjust 📋Safari3/14/2022 Chrome Android4/29/20251142
Chrome: Chrome does not print backgrounds of the <body> element. If this property is set to exact for the <body> element, it will apply only to its descendants.Chrome: Before version 26, if background images are clipped (for example, when using background-image sprites) and -webkit-print-color-adjust is set to exact, then backgrounds will appear distorted when printed. Solid backgrounds and background images that are not clipped (i.e., backgrounds that have narrower and shorter than the element to which they are applied) are printed correctly. See bug 40219905.Chrome Android: Chrome Android does not print backgrounds of the <body> element. If this property is set to exact for the <body> element, it will apply only to its descendants.Chrome Android: Before version 26, if background images are clipped (for example, when using background-image sprites) and -webkit-print-color-adjust is set to exact, then backgrounds will appear distorted when printed. Solid backgrounds and background images that are not clipped (i.e., backgrounds that have narrower and shorter than the element to which they are applied) are printed correctly. See bug 40219905.Edge: Edge does not print backgrounds of the <body> element. If this property is set to exact for the <body> element, it will apply only to its descendants.Edge: Before version 79, if background images are clipped (for example, when using background-image sprites) and -webkit-print-color-adjust is set to exact, then backgrounds will appear distorted when printed. Solid backgrounds and background images that are not clipped (i.e., backgrounds that have narrower and shorter than the element to which they are applied) are printed correctly. See bug 40219905.Quest Browser: Quest Browser does not print backgrounds of the <body> element. If this property is set to exact for the <body> element, it will apply only to its descendants.Quest Browser: Before version 5.0, if background images are clipped (for example, when using background-image sprites) and -webkit-print-color-adjust is set to exact, then backgrounds will appear distorted when printed. Solid backgrounds and background images that are not clipped (i.e., backgrounds that have narrower and shorter than the element to which they are applied) are printed correctly. See bug 40219905.Opera: Opera does not print backgrounds of the <body> element. If this property is set to exact for the <body> element, it will apply only to its descendants.Opera: Before version 15, if background images are clipped (for example, when using background-image sprites) and -webkit-print-color-adjust is set to exact, then backgrounds will appear distorted when printed. Solid backgrounds and background images that are not clipped (i.e., backgrounds that have narrower and shorter than the element to which they are applied) are printed correctly. See bug 40219905.Opera Android: Opera Android does not print backgrounds of the <body> element. If this property is set to exact for the <body> element, it will apply only to its descendants.Opera Android: Before version 14, if background images are clipped (for example, when using background-image sprites) and -webkit-print-color-adjust is set to exact, then backgrounds will appear distorted when printed. Solid backgrounds and background images that are not clipped (i.e., backgrounds that have narrower and shorter than the element to which they are applied) are printed correctly. See bug 40219905.Safari: Safari does not print backgrounds of the <body> element. If this property is set to exact for the <body> element, it will apply only to its descendants.Safari on iOS: Safari on iOS does not print backgrounds of the <body> element. If this property is set to exact for the <body> element, it will apply only to its descendants.Samsung Internet: Samsung Internet does not print backgrounds of the <body> element. If this property is set to exact for the <body> element, it will apply only to its descendants.Samsung Internet: Before version 1.5, if background images are clipped (for example, when using background-image sprites) and -webkit-print-color-adjust is set to exact, then backgrounds will appear distorted when printed. Solid backgrounds and background images that are not clipped (i.e., backgrounds that have narrower and shorter than the element to which they are applied) are printed correctly. See bug 40219905.WebView Android: WebView Android does not print backgrounds of the <body> element. If this property is set to exact for the <body> element, it will apply only to its descendants.WebView Android: Before version 4.4, if background images are clipped (for example, when using background-image sprites) and -webkit-print-color-adjust is set to exact, then backgrounds will appear distorted when printed. Solid backgrounds and background images that are not clipped (i.e., backgrounds that have narrower and shorter than the element to which they are applied) are printed correctly. See bug 40219905.WebView on iOS: WebView on iOS does not print backgrounds of the <body> element. If this property is set to exact for the <body> element, it will apply only to its descendants.
css.properties.print-color-adjust.economy 📋Safari7/25/2012 Chrome Android4/29/20254661
css.properties.print-color-adjust.exact 📋Safari7/25/2012 Chrome Android4/29/20254661
css.properties.quotes 📋Chrome Android6/27/2012 Safari9/30/20151190
css.properties.quotes.auto 📋Chrome Android11/17/2020 Safari4/26/2021160
Internet Explorer: This value is not supported, but the default browser behavior is to choose appropriate quotes for the user's language setting
css.properties.quotes.none 📋Chrome Android6/27/2012 Safari9/30/20151190
css.properties.r 📋Chrome Android5/27/2015 Safari9/30/2015126
css.properties.resize 📋Safari10/26/2007 Chrome Android6/27/20121706
Firefox for Android: The property is recognized, but has no effect. See bug 1776834.Safari on iOS: The property is recognized, but has no effect. See bug 211994.WebView on iOS: The property is recognized, but has no effect. See bug 211994.
css.properties.resize.block Safari9/12/2022 Chrome Android10/10/2023393
css.properties.resize.block_level_support Safari6/8/2009 Chrome Android6/27/20121115
Firefox: resize doesn't have any effect on <iframe>. See bug 680823)
css.properties.resize.both 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.resize.horizontal 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.resize.inline Safari9/12/2022 Chrome Android10/10/2023393
css.properties.resize.none 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.resize.vertical 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.right 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.right.anchor 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.right.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.right.auto 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.rotate 📋Safari4/26/2021 Chrome Android8/2/2022463
css.properties.rotate.none 📋Safari4/26/2021 Chrome Android8/2/2022463
css.properties.rotate.x_y_z_angle Safari4/26/2021 Chrome Android8/2/2022463
css.properties.row-gap 📋Chrome Android12/2/2015 Safari3/27/2017481
css.properties.row-gap.flex_context 📋Chrome Android7/27/2020 Safari4/26/2021273
css.properties.row-gap.grid_context 📋Chrome Android4/17/2018 Safari9/17/2018153
css.properties.row-gap.normal 📋Chrome Android12/2/2015 Safari3/27/2017481
css.properties.ruby-align 📋Chrome Android8/20/2024 Safari12/11/2024113
Internet Explorer: Internet Explorer 9 and later supports an earlier draft of CSS Ruby with non-standard values for this property: auto, left, center, right, distribute-letter, distribute-space, and line-edge.
css.properties.ruby-align.center 📋Chrome Android8/20/2024 Safari12/11/2024113
css.properties.ruby-align.space-around 📋Chrome Android8/20/2024 Safari12/11/2024113
css.properties.ruby-align.space-between 📋Chrome Android8/20/2024 Safari12/11/2024113
css.properties.ruby-align.start 📋Chrome Android8/20/2024 Safari12/11/2024113
css.properties.ruby-position 📋Chrome Android7/27/2020 Safari12/11/20241598
Chrome: Implemented as a non-standard, prefixed, version of ruby-position, -webkit-ruby-position: it has two properties: before and after (both equivalent, for ltr and rtl scripts to the standard over value used with ruby-align: start).Chrome Android: Implemented as a non-standard, prefixed, version of ruby-position, -webkit-ruby-position: it has two properties: before and after (both equivalent, for ltr and rtl scripts to the standard over value used with ruby-align: start).Edge: Implemented as a non-standard, prefixed, version of ruby-position, -webkit-ruby-position: it has two properties: before and after (both equivalent, for ltr and rtl scripts to the standard over value used with ruby-align: start).Internet Explorer: Internet Explorer 9 and later support an old draft values: inline (equivalent of having display: inline on the ruby), and above (synonym of the modern over).Quest Browser: Implemented as a non-standard, prefixed, version of ruby-position, -webkit-ruby-position: it has two properties: before and after (both equivalent, for ltr and rtl scripts to the standard over value used with ruby-align: start).Opera: Implemented as a non-standard, prefixed, version of ruby-position, -webkit-ruby-position: it has two properties: before and after (both equivalent, for ltr and rtl scripts to the standard over value used with ruby-align: start).Opera Android: Implemented as a non-standard, prefixed, version of ruby-position, -webkit-ruby-position: it has two properties: before and after (both equivalent, for ltr and rtl scripts to the standard over value used with ruby-align: start).Safari: Implemented as a non-standard, prefixed, version of ruby-position, -webkit-ruby-position: it has two properties: before and after (both equivalent, for ltr and rtl scripts to the standard over value used with ruby-align: start).Safari on iOS: Implemented as a non-standard, prefixed, version of ruby-position, -webkit-ruby-position: it has two properties: before and after (both equivalent, for ltr and rtl scripts to the standard over value used with ruby-align: start).WebView Android: Implemented as a non-standard, prefixed, version of ruby-position, -webkit-ruby-position: it has two properties: before and after (both equivalent, for ltr and rtl scripts to the standard over value used with ruby-align: start).WebView on iOS: Implemented as a non-standard, prefixed, version of ruby-position, -webkit-ruby-position: it has two properties: before and after (both equivalent, for ltr and rtl scripts to the standard over value used with ruby-align: start).
css.properties.ruby-position.inter-character Chrome Android7/27/2020 Safari12/11/20241598
Chrome: This value is only supported with the prefixed version of the property.Chrome Android: This value is only supported with the prefixed version of the property.Edge: This value is only supported with the prefixed version of the property.Quest Browser: This value is only supported with the prefixed version of the property.Opera: This value is only supported with the prefixed version of the property.Opera Android: This value is only supported with the prefixed version of the property.Samsung Internet: This value is only supported with the prefixed version of the property.WebView Android: This value is only supported with the prefixed version of the property.
css.properties.ruby-position.over Chrome Android7/27/2020 Safari12/11/20241598
css.properties.ruby-position.under Chrome Android7/27/2020 Safari12/11/20241598
css.properties.rx 📋Chrome Android5/27/2015 Safari3/5/20243205
Safari: Before Safari 17.4, the value was recognized, but had no effect, and was only recognized as an attribute applied to the SVG element. See bug 266090.Safari on iOS: Before Safari on iOS 17.4, the value was recognized, but had no effect, and was only recognized as an attribute applied to the SVG element. See bug 266090.WebView on iOS: Before WebView on iOS 17.4, the value was recognized, but had no effect, and was only recognized as an attribute applied to the SVG element. See bug 266090.
css.properties.rx.auto 📋Chrome Android9/7/2016 Safari3/5/20242736
css.properties.ry 📋Chrome Android5/27/2015 Safari3/5/20243205
Safari: Before Safari 17.4, the value was recognized, but had no effect, and was only recognized as an attribute applied to the SVG element. See bug 266090.Safari on iOS: Before Safari on iOS 17.4, the value was recognized, but had no effect, and was only recognized as an attribute applied to the SVG element. See bug 266090.WebView on iOS: Before WebView on iOS 17.4, the value was recognized, but had no effect, and was only recognized as an attribute applied to the SVG element. See bug 266090.
css.properties.ry.auto 📋Chrome Android9/7/2016 Safari3/5/20242736
css.properties.scale 📋Safari4/26/2021 Chrome Android8/2/2022463
css.properties.scale.none 📋Safari4/26/2021 Chrome Android8/2/2022463
css.properties.scroll-behavior 📋Chrome Android9/5/2017 Safari3/14/20221651
css.properties.scroll-behavior.auto 📋Chrome Android9/5/2017 Safari3/14/20221651
css.properties.scroll-behavior.smooth 📋Chrome Android9/5/2017 Safari3/14/20221651
css.properties.scroll-margin 📋Chrome Android9/4/2018 Safari4/26/2021965
Firefox: The scroll-margin property can cause an element's visibility to be incorrectly calculated for element.focus(). See bug 1708303.Firefox for Android: The scroll-margin property can cause an element's visibility to be incorrectly calculated for element.focus(). See bug 1708303.Safari: Before version 14.1, scroll margin is not applied for scrolls to fragment target or scrollIntoView(), see bug 189265.Safari on iOS: Before version 14.5, scroll margin is not applied for scrolls to fragment target or scrollIntoView(), see bug 189265.WebView on iOS: Before version 14.5, scroll margin is not applied for scrolls to fragment target or scrollIntoView(), see bug 189265.
css.properties.scroll-margin-block 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-margin-block-end 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-margin-block-start 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-margin-bottom 📋Chrome Android9/4/2018 Safari4/26/2021965
Safari: Before version 14.1, scroll margin is not applied for scrolls to fragment target or scrollIntoView(), see bug 189265.Safari on iOS: Before version 14.5, scroll margin is not applied for scrolls to fragment target or scrollIntoView(), see bug 189265.WebView on iOS: Before version 14.5, scroll margin is not applied for scrolls to fragment target or scrollIntoView(), see bug 189265.
css.properties.scroll-margin-inline 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-margin-inline-end 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-margin-inline-start 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-margin-left 📋Chrome Android9/4/2018 Safari4/26/2021965
Safari: Before version 14.1, scroll margin is not applied for scrolls to fragment target or scrollIntoView(), see bug 189265.Safari on iOS: Before version 14.5, scroll margin is not applied for scrolls to fragment target or scrollIntoView(), see bug 189265.WebView on iOS: Before version 14.5, scroll margin is not applied for scrolls to fragment target or scrollIntoView(), see bug 189265.
css.properties.scroll-margin-right 📋Chrome Android9/4/2018 Safari4/26/2021965
Safari: Before version 14.1, scroll margin is not applied for scrolls to fragment target or scrollIntoView(), see bug 189265.Safari on iOS: Before version 14.5, scroll margin is not applied for scrolls to fragment target or scrollIntoView(), see bug 189265.WebView on iOS: Before version 14.5, scroll margin is not applied for scrolls to fragment target or scrollIntoView(), see bug 189265.
css.properties.scroll-margin-top 📋Chrome Android9/4/2018 Safari4/26/2021965
Safari: Before version 14.1, scroll margin is not applied for scrolls to fragment target or scrollIntoView(), see bug 189265.Safari on iOS: Before version 14.5, scroll margin is not applied for scrolls to fragment target or scrollIntoView(), see bug 189265.WebView on iOS: Before version 14.5, scroll margin is not applied for scrolls to fragment target or scrollIntoView(), see bug 189265.
css.properties.scroll-padding 📋Chrome Android9/4/2018 Safari4/26/2021965
Safari: Scroll padding is not applied for scrolls to fragment target or scrollIntoView(), see bug 179379.Safari on iOS: Scroll padding is not applied for scrolls to fragment target or scrollIntoView(), see bug 179379.WebView on iOS: Scroll padding is not applied for scrolls to fragment target or scrollIntoView(), see bug 179379.
css.properties.scroll-padding.auto 📋Safari9/19/2017 Chrome Android9/4/2018350
css.properties.scroll-padding-block 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-padding-block.auto 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-padding-block-end 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-padding-block-end.auto 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-padding-block-start 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-padding-block-start.auto 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-padding-bottom 📋Chrome Android9/4/2018 Safari4/26/2021965
Safari: Scroll padding is not applied for scrolls to fragment target or scrollIntoView(), see bug 179379.Safari on iOS: Scroll padding is not applied for scrolls to fragment target or scrollIntoView(), see bug 179379.WebView on iOS: Scroll padding is not applied for scrolls to fragment target or scrollIntoView(), see bug 179379.
css.properties.scroll-padding-bottom.auto 📋Chrome Android10/22/2019 Safari9/20/2021699
css.properties.scroll-padding-inline 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-padding-inline.auto 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-padding-inline-end 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-padding-inline-end.auto 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-padding-inline-start 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-padding-inline-start.auto 📋Chrome Android9/4/2018 Safari9/20/20211112
css.properties.scroll-padding-left 📋Chrome Android9/4/2018 Safari4/26/2021965
Safari: Scroll padding is not applied for scrolls to fragment target or scrollIntoView(), see bug 179379.Safari on iOS: Scroll padding is not applied for scrolls to fragment target or scrollIntoView(), see bug 179379.WebView on iOS: Scroll padding is not applied for scrolls to fragment target or scrollIntoView(), see bug 179379.
css.properties.scroll-padding-left.auto 📋Chrome Android10/22/2019 Safari9/20/2021699
css.properties.scroll-padding-right 📋Chrome Android9/4/2018 Safari4/26/2021965
Safari: Scroll padding is not applied for scrolls to fragment target or scrollIntoView(), see bug 179379.Safari on iOS: Scroll padding is not applied for scrolls to fragment target or scrollIntoView(), see bug 179379.WebView on iOS: Scroll padding is not applied for scrolls to fragment target or scrollIntoView(), see bug 179379.
css.properties.scroll-padding-right.auto 📋Chrome Android10/22/2019 Safari9/20/2021699
css.properties.scroll-padding-top 📋Chrome Android9/4/2018 Safari4/26/2021965
Safari: Scroll padding is not applied for scrolls to fragment target or scrollIntoView(), see bug 179379.Safari on iOS: Scroll padding is not applied for scrolls to fragment target or scrollIntoView(), see bug 179379.WebView on iOS: Scroll padding is not applied for scrolls to fragment target or scrollIntoView(), see bug 179379.
css.properties.scroll-padding-top.auto 📋Chrome Android10/22/2019 Safari9/20/2021699
css.properties.scroll-snap-align 📋Safari9/19/2017 Chrome Android9/4/2018350
css.properties.scroll-snap-align.center 📋Safari9/19/2017 Chrome Android9/4/2018350
css.properties.scroll-snap-align.end 📋Safari9/19/2017 Chrome Android9/4/2018350
css.properties.scroll-snap-align.none 📋Safari9/19/2017 Chrome Android9/4/2018350
css.properties.scroll-snap-align.start 📋Safari9/19/2017 Chrome Android9/4/2018350
css.properties.scroll-snap-stop 📋Chrome Android6/4/2019 Safari9/20/2021839
css.properties.scroll-snap-stop.always 📋Chrome Android6/4/2019 Safari9/20/2021839
css.properties.scroll-snap-stop.normal 📋Chrome Android6/4/2019 Safari9/20/2021839
css.properties.scroll-snap-type 📋Safari9/19/2017 Chrome Android9/4/2018350
Edge: Edge supports an earlier draft of CSS Scroll Snap without axis values.Firefox: On macOS Monterey, scroll snapping does not complete reliably. See bug 1749352.Firefox: An earlier draft of CSS Scroll Snap without axis values.Firefox for Android: An earlier draft of CSS Scroll Snap without axis values.Internet Explorer: Internet Explorer supports an earlier draft of CSS Scroll Snap without axis values.Safari: Older Safari versions support an earlier draft of CSS Scroll Snap without axis values.Safari on iOS: Older Safari on iOS versions support an earlier draft of CSS Scroll Snap without axis values.WebView on iOS: Older WebView on iOS versions support an earlier draft of CSS Scroll Snap without axis values.
css.properties.scroll-snap-type.block 📋Safari9/19/2017 Chrome Android9/4/2018350
css.properties.scroll-snap-type.both 📋Safari9/19/2017 Chrome Android9/4/2018350
css.properties.scroll-snap-type.inline 📋Safari9/19/2017 Chrome Android9/4/2018350
css.properties.scroll-snap-type.none 📋Safari9/19/2017 Chrome Android9/4/2018350
css.properties.scroll-snap-type.x 📋Safari9/19/2017 Chrome Android9/4/2018350
css.properties.scroll-snap-type.y 📋Safari9/19/2017 Chrome Android9/4/2018350
css.properties.scroll-timeline 📋Chrome Android7/21/2023 Safari9/15/2025787
Firefox: The syntax of the shorthand property uses the fixed order of name and then the axis.Firefox: Supports the deprecated horizontal and vertical axis values, and not the x and y values.Firefox: The @scroll-timeline at-rule is replaced with the longhand properties scroll-timeline-name and scroll-timeline-axis and the shorthand property scroll-timeline.
css.properties.scroll-timeline.none 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.scroll-timeline-axis 📋Chrome Android7/21/2023 Safari9/15/2025787
Firefox: The syntax of the shorthand property uses the fixed order of name and then the axis.Firefox: Supports the deprecated horizontal and vertical values, and not the x and y values.Firefox: The @scroll-timeline at-rule is replaced with the longhand properties scroll-timeline-name and scroll-timeline-axis and the shorthand property scroll-timeline.
css.properties.scroll-timeline-axis.block 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.scroll-timeline-axis.inline 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.scroll-timeline-axis.x 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.scroll-timeline-axis.y 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.scroll-timeline-name 📋Chrome Android7/21/2023 Safari9/15/2025787
Firefox: The syntax of the shorthand property uses the fixed order of name and then the axis.Firefox: The @scroll-timeline at-rule is replaced with the longhand properties scroll-timeline-name and scroll-timeline-axis and the shorthand property scroll-timeline.
css.properties.scroll-timeline-name.none 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.scrollbar-color 📋Chrome Android1/23/2024 Safari12/12/2025689
css.properties.scrollbar-color.auto 📋Chrome Android1/23/2024 Safari12/12/2025689
css.properties.scrollbar-gutter 📋Chrome Android9/21/2021 Safari12/11/20241177
css.properties.scrollbar-gutter.auto 📋Chrome Android9/21/2021 Safari12/11/20241177
css.properties.scrollbar-gutter.stable 📋Chrome Android9/21/2021 Safari12/11/20241177
css.properties.scrollbar-width 📋Chrome Android1/23/2024 Safari12/11/2024323
css.properties.scrollbar-width.auto 📋Chrome Android1/23/2024 Safari12/11/2024323
css.properties.scrollbar-width.none 📋Chrome Android1/23/2024 Safari12/11/2024323
css.properties.scrollbar-width.thin 📋Chrome Android1/23/2024 Safari12/11/2024323
css.properties.shape-image-threshold 📋Chrome Android9/3/2014 Safari3/27/2017936
css.properties.shape-margin 📋Chrome Android9/3/2014 Safari3/27/2017936
css.properties.shape-outside 📋Chrome Android9/3/2014 Safari3/27/2017936
css.properties.shape-outside.border-box 📋Chrome Android9/3/2014 Safari3/27/2017936
css.properties.shape-outside.circle Chrome Android9/3/2014 Safari3/27/2017936
css.properties.shape-outside.content-box 📋Chrome Android9/3/2014 Safari3/27/2017936
css.properties.shape-outside.gradient 📋Chrome Android9/3/2014 Safari3/27/2017936
css.properties.shape-outside.image 📋Chrome Android9/3/2014 Safari3/27/2017936
css.properties.shape-outside.inset Chrome Android9/3/2014 Safari3/27/2017936
css.properties.shape-outside.margin-box 📋Chrome Android9/3/2014 Safari3/27/2017936
css.properties.shape-outside.none 📋Chrome Android9/3/2014 Safari3/27/2017936
css.properties.shape-outside.padding-box 📋Chrome Android9/3/2014 Safari3/27/2017936
css.properties.shape-outside.polygon Chrome Android9/3/2014 Safari3/27/2017936
css.properties.shape-rendering 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.shape-rendering.auto 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.shape-rendering.crispEdges 📋Safari6/8/2009 Chrome Android11/14/20131620
css.properties.shape-rendering.geometricPrecision 📋Safari6/8/2009 Chrome Android11/14/20131620
css.properties.shape-rendering.optimizeSpeed 📋Safari6/8/2009 Chrome Android11/14/20131620
css.properties.stop-color 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stop-opacity 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stroke 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stroke.none 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stroke-dasharray 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stroke-dasharray.none 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stroke-dashoffset 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stroke-linecap 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stroke-linecap.butt 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stroke-linecap.round 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stroke-linecap.square 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stroke-linejoin 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stroke-linejoin.bevel 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stroke-linejoin.miter 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stroke-linejoin.round 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stroke-miterlimit 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stroke-opacity 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.stroke-width 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.tab-size 📋Chrome Android2/27/2013 Safari10/22/2013237
Chrome: This property is not yet animatable.Chrome Android: This property is not yet animatable.Edge: This property is not yet animatable.Firefox: Before Firefox 53, this property was not animatable.Firefox for Android: Before Firefox for Android 53, this property was not animatable.Quest Browser: This property is not yet animatable.Samsung Internet: This property is not yet animatable.
css.properties.tab-size.length 📋Chrome Android4/15/2015 Safari3/24/20201805
css.properties.table-layout 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.table-layout.auto 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.table-layout.fixed 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.text-align 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.text-align.center 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.text-align.end 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.text-align.justify 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.text-align.left 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.text-align.match-parent 📋Chrome Android6/27/2012 Safari3/14/20223547
css.properties.text-align.right 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.text-align.start 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.text-align-last 📋Chrome Android12/2/2015 Safari9/12/20222476
Internet Explorer: IE only supports text-align-last when text-align is set to justify.Internet Explorer: The start and end values are not supported.
css.properties.text-align-last.auto 📋Chrome Android12/2/2015 Safari9/12/20222476
css.properties.text-align-last.center 📋Chrome Android12/2/2015 Safari9/12/20222476
css.properties.text-align-last.end 📋Chrome Android12/2/2015 Safari9/12/20222476
css.properties.text-align-last.justify 📋Chrome Android12/2/2015 Safari9/12/20222476
css.properties.text-align-last.left 📋Chrome Android12/2/2015 Safari9/12/20222476
css.properties.text-align-last.right 📋Chrome Android12/2/2015 Safari9/12/20222476
css.properties.text-align-last.start 📋Chrome Android12/2/2015 Safari9/12/20222476
css.properties.text-anchor 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.text-anchor.end 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.text-anchor.middle 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.text-anchor.start 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.text-autospace 📋Safari3/31/2025 Chrome Android9/2/2025155
css.properties.text-autospace.no-autospace 📋Safari3/31/2025 Chrome Android9/2/2025155
css.properties.text-autospace.normal 📋Safari3/31/2025 Chrome Android9/2/2025155
css.properties.text-box 📋Safari12/11/2024 Chrome Android2/4/202555
css.properties.text-box.auto 📋Safari12/11/2024 Chrome Android2/4/202555
css.properties.text-box.none 📋Safari12/11/2024 Chrome Android2/4/202555
css.properties.text-box.normal 📋Safari12/11/2024 Chrome Android2/4/202555
css.properties.text-box.text 📋Safari12/11/2024 Chrome Android2/4/202555
css.properties.text-box.trim-both 📋Safari12/11/2024 Chrome Android2/4/202555
css.properties.text-box.trim-end 📋Safari12/11/2024 Chrome Android2/4/202555
css.properties.text-box.trim-start 📋Safari12/11/2024 Chrome Android2/4/202555
css.properties.text-box-edge 📋Safari12/11/2024 Chrome Android2/4/202555
css.properties.text-box-edge.auto 📋Safari12/11/2024 Chrome Android2/4/202555
css.properties.text-box-edge.text 📋Safari12/11/2024 Chrome Android2/4/202555
css.properties.text-box-trim 📋Safari12/11/2024 Chrome Android2/4/202555
css.properties.text-box-trim.none 📋Safari12/11/2024 Chrome Android2/4/202555
css.properties.text-box-trim.trim-both 📋Safari12/11/2024 Chrome Android2/4/202555
css.properties.text-box-trim.trim-end 📋Safari12/11/2024 Chrome Android2/4/202555
css.properties.text-box-trim.trim-start 📋Safari12/11/2024 Chrome Android2/4/202555
css.properties.text-combine-upright 📋Chrome Android1/26/2016 Safari3/14/20222239
Chrome: This property was initially named -webkit-text-combine according to a 2011 version of the CSS3 Writing Modes specification, supporting the values none and horizontal without digits.Chrome Android: This property was initially named -webkit-text-combine according to a 2011 version of the CSS3 Writing Modes specification, supporting the values none and horizontal without digits.Firefox: Before version 81, Firefox implemented the property as animatable. This was corrected to spec in 81.Firefox for Android: Before version 81, Firefox for Android implemented the property as animatable. This was corrected to spec in 81.Quest Browser: This property was initially named -webkit-text-combine according to a 2011 version of the CSS3 Writing Modes specification, supporting the values none and horizontal without digits.Opera: This property was initially named -webkit-text-combine according to a 2011 version of the CSS3 Writing Modes specification, supporting the values none and horizontal without digits.Opera Android: This property was initially named -webkit-text-combine according to a 2011 version of the CSS3 Writing Modes specification, supporting the values none and horizontal without digits.Safari: This property was initially named -webkit-text-combine according to a 2011 version of the CSS3 Writing Modes specification, supporting the values none and horizontal without digits.Safari on iOS: This property was initially named -webkit-text-combine according to a 2011 version of the CSS3 Writing Modes specification, supporting the values none and horizontal without digits.Samsung Internet: This property was initially named -webkit-text-combine according to a 2011 version of the CSS3 Writing Modes specification, supporting the values none and horizontal without digits.WebView Android: This property was initially named -webkit-text-combine according to a 2011 version of the CSS3 Writing Modes specification, supporting the values none and horizontal without digits.WebView on iOS: This property was initially named -webkit-text-combine according to a 2011 version of the CSS3 Writing Modes specification, supporting the values none and horizontal without digits.
css.properties.text-combine-upright.all 📋Chrome Android1/26/2016 Safari3/14/20222239
css.properties.text-combine-upright.none 📋Chrome Android1/26/2016 Safari3/14/20222239
css.properties.text-decoration 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.text-decoration.auto 📋Chrome Android11/17/2020 Safari12/12/20251851
css.properties.text-decoration.blink 📋Safari6/23/2003 Chrome Android11/14/20133797
Chrome: The blink value does not have any effect.Chrome Android: The blink value does not have any effect.Firefox: The blink value does not have any effect.Firefox for Android: The blink value does not have any effect.Quest Browser: The blink value does not have any effect.Opera: The blink value does not have any effect.Opera Android: The blink value does not have any effect.Safari: The blink value does not have any effect.Safari on iOS: The blink value does not have any effect.Samsung Internet: The blink value does not have any effect.WebView Android: The blink value does not have any effect.WebView on iOS: The blink value does not have any effect.
css.properties.text-decoration.currentColor 📋Chrome Android3/16/2017 Safari12/12/20253193
css.properties.text-decoration.dashed 📋Chrome Android3/16/2017 Safari12/12/20253193
css.properties.text-decoration.dotted 📋Chrome Android3/16/2017 Safari12/12/20253193
css.properties.text-decoration.double 📋Chrome Android3/16/2017 Safari12/12/20253193
css.properties.text-decoration.from-font 📋Chrome Android11/17/2020 Safari12/12/20251851
css.properties.text-decoration.grammar-error 📋Chrome Android1/23/2024 Safari12/12/2025689
css.properties.text-decoration.includes_color-and-style Chrome Android3/16/2017 Safari12/12/20253193
css.properties.text-decoration.includes_thickness Chrome Android11/17/2020 Safari12/12/20251851
css.properties.text-decoration.line-through 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.text-decoration.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.text-decoration.overline 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.text-decoration.solid 📋Chrome Android3/16/2017 Safari12/12/20253193
css.properties.text-decoration.spelling-error 📋Chrome Android1/23/2024 Safari12/12/2025689
css.properties.text-decoration.transparent 📋Chrome Android3/16/2017 Safari12/12/20253193
css.properties.text-decoration.underline 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.text-decoration.wavy 📋Chrome Android3/16/2017 Safari12/12/20253193
css.properties.text-decoration-color 📋Chrome Android3/16/2017 Safari3/25/2019739
css.properties.text-decoration-color.currentColor 📋Safari10/16/2014 Chrome Android3/16/2017882
css.properties.text-decoration-color.transparent 📋Safari10/16/2014 Chrome Android3/16/2017882
css.properties.text-decoration-line 📋Chrome Android3/16/2017 Safari3/25/2019739
css.properties.text-decoration-line.blink 📋Safari10/16/2014 Chrome Android3/16/2017882
Chrome: The blink value does not have any effect.Chrome Android: The blink value does not have any effect.Edge: The blink value does not have any effect.Firefox: The blink value does not have any effect.Firefox for Android: The blink value does not have any effect.Quest Browser: The blink value does not have any effect.Samsung Internet: The blink value does not have any effect.WebView Android: The blink value does not have any effect.
css.properties.text-decoration-line.grammar-error 📋Chrome Android1/23/2024 Safari12/12/2025689
css.properties.text-decoration-line.line-through 📋Safari10/16/2014 Chrome Android3/16/2017882
css.properties.text-decoration-line.none 📋Safari10/16/2014 Chrome Android3/16/2017882
css.properties.text-decoration-line.overline 📋Safari10/16/2014 Chrome Android3/16/2017882
css.properties.text-decoration-line.spelling-error 📋Chrome Android1/23/2024 Safari12/12/2025689
css.properties.text-decoration-line.underline 📋Safari10/16/2014 Chrome Android3/16/2017882
css.properties.text-decoration-skip-ink 📋Chrome Android1/23/2018 Safari3/14/20221511
css.properties.text-decoration-skip-ink.auto 📋Chrome Android1/23/2018 Safari3/14/20221511
css.properties.text-decoration-skip-ink.none 📋Chrome Android1/23/2018 Safari3/14/20221511
css.properties.text-decoration-style 📋Chrome Android3/16/2017 Safari3/25/2019739
css.properties.text-decoration-style.dashed 📋Safari10/16/2014 Chrome Android3/16/2017882
css.properties.text-decoration-style.dotted 📋Safari10/16/2014 Chrome Android3/16/2017882
css.properties.text-decoration-style.double 📋Safari10/16/2014 Chrome Android3/16/2017882
css.properties.text-decoration-style.solid 📋Safari10/16/2014 Chrome Android3/16/2017882
css.properties.text-decoration-style.wavy 📋Safari10/16/2014 Chrome Android3/16/2017882
css.properties.text-decoration-thickness 📋Safari3/25/2019 Chrome Android3/2/2021708
Chrome: The text-decoration-thickness property has no effect unless text-underline-offset, text-decoration-color, or text-decoration-style are set to a non-initial value. See bug 40734940.Chrome Android: The text-decoration-thickness property has no effect unless text-underline-offset, text-decoration-color, or text-decoration-style are set to a non-initial value. See bug 40734940.Edge: The text-decoration-thickness property has no effect unless text-underline-offset, text-decoration-color, or text-decoration-style are set to a non-initial value. See bug 40734940.Quest Browser: The text-decoration-thickness property has no effect unless text-underline-offset, text-decoration-color, or text-decoration-style are set to a non-initial value. See bug 40734940.Opera: The text-decoration-thickness property has no effect unless text-underline-offset, text-decoration-color, or text-decoration-style are set to a non-initial value. See bug 40734940.Opera Android: The text-decoration-thickness property has no effect unless text-underline-offset, text-decoration-color, or text-decoration-style are set to a non-initial value. See bug 40734940.Samsung Internet: The text-decoration-thickness property has no effect unless text-underline-offset, text-decoration-color, or text-decoration-style are set to a non-initial value. See bug 40734940.WebView Android: The text-decoration-thickness property has no effect unless text-underline-offset, text-decoration-color, or text-decoration-style are set to a non-initial value. See bug 40734940.
css.properties.text-decoration-thickness.auto 📋Safari3/25/2019 Chrome Android11/17/2020603
css.properties.text-decoration-thickness.from-font 📋Safari3/25/2019 Chrome Android11/17/2020603
css.properties.text-decoration-thickness.percentage Chrome Android11/17/2020 Safari3/5/20241204
css.properties.text-emphasis 📋Safari10/22/2013 Chrome Android3/1/20223052
css.properties.text-emphasis.circle 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.text-emphasis.currentColor 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.text-emphasis.dot 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.text-emphasis.double-circle 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.text-emphasis.filled 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.text-emphasis.none 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.text-emphasis.open 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.text-emphasis.sesame 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.text-emphasis.transparent 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.text-emphasis.triangle 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.text-emphasis-color 📋Safari10/22/2013 Chrome Android3/1/20223052
css.properties.text-emphasis-color.currentColor 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.text-emphasis-color.transparent 📋Chrome Android2/27/2013 Safari10/22/2013237
css.properties.text-emphasis-position 📋Safari10/22/2013 Chrome Android3/1/20223052
css.properties.text-emphasis-position.left Safari10/16/2014 Chrome Android10/24/20171104
css.properties.text-emphasis-position.over Safari10/22/2013 Chrome Android3/1/20223052
css.properties.text-emphasis-position.right Safari10/16/2014 Chrome Android10/24/20171104
css.properties.text-emphasis-position.under Safari10/22/2013 Chrome Android3/1/20223052
css.properties.text-emphasis-style 📋Safari10/22/2013 Chrome Android3/1/20223052
css.properties.text-emphasis-style.circle 📋Safari10/22/2013 Chrome Android3/1/20223052
css.properties.text-emphasis-style.dot 📋Safari10/22/2013 Chrome Android3/1/20223052
css.properties.text-emphasis-style.double-circle 📋Safari10/22/2013 Chrome Android3/1/20223052
css.properties.text-emphasis-style.filled 📋Safari10/22/2013 Chrome Android3/1/20223052
css.properties.text-emphasis-style.none 📋Safari10/22/2013 Chrome Android3/1/20223052
css.properties.text-emphasis-style.open 📋Safari10/22/2013 Chrome Android3/1/20223052
css.properties.text-emphasis-style.sesame 📋Safari10/22/2013 Chrome Android3/1/20223052
css.properties.text-emphasis-style.triangle 📋Safari10/22/2013 Chrome Android3/1/20223052
css.properties.text-indent 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.text-indent.each-line 📋Safari9/20/2021 Chrome Android3/10/20261632
css.properties.text-indent.hanging 📋Safari9/20/2021 Chrome Android3/10/20261632
css.properties.text-orientation 📋Chrome Android1/26/2016 Safari9/16/20201695
css.properties.text-orientation.mixed 📋Chrome Android1/26/2016 Safari3/24/20201519
css.properties.text-orientation.sideways 📋Chrome Android6/27/2012 Safari10/22/2013482
css.properties.text-orientation.upright 📋Chrome Android6/27/2012 Safari3/24/20202827
css.properties.text-overflow 📋Safari4/15/2005 Chrome Android6/27/20122630
Firefox: Until Firefox 10, handling of text-overflow on blocks with inline overflow on both horizontal sides was incorrect. Before Firefox 10, if only one value was specified (such as text-overflow: ellipsis;), text was ellipsed on both sides of the block, instead of only the end edge based on the block's text direction.Firefox for Android: Until Firefox for Android 10, handling of text-overflow on blocks with inline overflow on both horizontal sides was incorrect. Before Firefox for Android 10, if only one value was specified (such as text-overflow: ellipsis;), text was ellipsed on both sides of the block, instead of only the end edge based on the block's text direction.
css.properties.text-overflow.clip 📋Safari4/15/2005 Chrome Android6/27/20122630
css.properties.text-overflow.ellipsis 📋Safari4/15/2005 Chrome Android6/27/20122630
css.properties.text-rendering 📋Safari6/7/2010 Chrome Android6/27/2012751
Chrome: This property is only supported on Windows and Linux.Chrome: Initial versions had bugs on Windows and Linux that broke font substitution, small-caps, letter-spacing or caused text to overlap. See bug 40156511, bug 40430936, bug 40444347, bug 40286561.Chrome Android: This property is only supported on Windows and Linux.Chrome Android: Initial versions had bugs on Windows and Linux that broke font substitution, small-caps, letter-spacing or caused text to overlap. See bug 40156511, bug 40430936, bug 40444347, bug 40286561.Edge: This property is only supported on Windows and Linux.Edge: Initial versions had bugs on Windows and Linux that broke font substitution, small-caps, letter-spacing or caused text to overlap. See bug 40156511, bug 40430936, bug 40444347, bug 40286561.Firefox: This property is only supported on Windows and Linux.Firefox: The optimizeSpeed option has no effect on Firefox 4 because the standard code for text rendering is already fast and there is not a faster code path at this time. See bug 595688 for details.Quest Browser: This property is only supported on Windows and Linux.Quest Browser: Initial versions had bugs on Windows and Linux that broke font substitution, small-caps, letter-spacing or caused text to overlap. See bug 40156511, bug 40430936, bug 40444347, bug 40286561.Samsung Internet: This property is only supported on Windows and Linux. Samsung Internet is not on Windows or Linux.WebView Android: From version 3 to 4.3, there is a serious bug where text-rendering: optimizeLegibility causes custom web fonts to not render. This was fixed in version 4.4.
css.properties.text-rendering.auto Safari6/7/2010 Chrome Android6/27/2012751
Chrome: Chrome treats auto as optimizeSpeed.Chrome Android: Chrome Android treats auto as optimizeSpeed.Edge: Edge treats auto as optimizeSpeed.Firefox: If the font size is 20 pixels or higher, Firefox treats auto as optimizeLegibility. For smaller text, Firefox treats auto as optimizeSpeed. The 20-pixel threshold can be changed with the browser.display.auto_quality_min_font_size preference.Firefox for Android: If the font size is 20 pixels or higher, Firefox treats auto as optimizeLegibility. For smaller text, Firefox treats auto as optimizeSpeed. The 20-pixel threshold can be changed with the browser.display.auto_quality_min_font_size preference.Quest Browser: Quest Browser treats auto as optimizeSpeed.Opera: Opera treats auto as optimizeSpeed.Opera Android: Opera Android treats auto as optimizeSpeed.Safari: Safari treats auto as optimizeSpeed. See bug 41363.Safari on iOS: Safari on iOS treats auto as optimizeSpeed. See bug 41363.Samsung Internet: Samsung Internet treats auto as optimizeSpeed.WebView Android: WebView Android treats auto as optimizeSpeed.WebView on iOS: WebView on iOS treats auto as optimizeSpeed. See bug 41363.
css.properties.text-rendering.geometricPrecision Chrome Android6/27/2012 Safari7/25/201228
Chrome: Supports true geometric precision without rounding up or down to the nearest supported font size in the operating system.Chrome Android: Supports true geometric precision without rounding up or down to the nearest supported font size in the operating system.Edge: Supports true geometric precision without rounding up or down to the nearest supported font size in the operating system.Firefox: Firefox treats geometricPrecision the same as optimizeLegibility.Firefox for Android: Firefox treats geometricPrecision the same as optimizeLegibility.Quest Browser: Supports true geometric precision without rounding up or down to the nearest supported font size in the operating system.Opera: Supports true geometric precision without rounding up or down to the nearest supported font size in the operating system.Opera Android: Supports true geometric precision without rounding up or down to the nearest supported font size in the operating system.Samsung Internet: Supports true geometric precision without rounding up or down to the nearest supported font size in the operating system.WebView Android: Supports true geometric precision without rounding up or down to the nearest supported font size in the operating system.
css.properties.text-rendering.optimizeLegibility 📋Safari6/7/2010 Chrome Android11/14/20131256
css.properties.text-rendering.optimizeSpeed 📋Safari6/7/2010 Chrome Android11/14/20131256
css.properties.text-shadow 📋Safari10/24/2003 Chrome Android6/27/20123169
Firefox: Firefox versions before 57 have a bug whereby transitions will not work when transitioning from a text-shadow with a color specified to a text-shadow without a color specified (bug 726550).Firefox: From Firefox 4, the blur radius is capped at 300 for performance reasons.Firefox: Firefox theoretically supports infinite text-shadows (don't try it).Firefox: If the <color> value is unspecified, then Firefox uses the value of the element's color property.Firefox for Android: Firefox for Android versions before 57 have a bug whereby transitions will not work when transitioning from a text-shadow with a color specified to a text-shadow without a color specified (bug 726550).Firefox for Android: From Firefox for Android 4, the blur radius is capped at 300 for performance reasons.Firefox for Android: Firefox for Android theoretically supports infinite text-shadows (don't try it).Firefox for Android: If the <color> value is unspecified, then Firefox for Android uses the value of the element's color property.Opera: Opera supports a maximum of 6-9 text-shadows for performance reasons. The blur radius is limited to 100px.Opera: Opera 9.5 to 10.1 adheres to the old, reverse painting order (in CSS2, the first specified shadow is on the bottom).Safari: In Safari, any shadows that do not explicitly specify a color are transparent.Safari: Safari 1.1 to 3.2 only supports one text-shadow (displays the first shadow of a comma-separated list and ignores the rest). Safari 4.0 (WebKit 528) and later support multiple text-shadows.Safari on iOS: In Safari, any shadows that do not explicitly specify a color are transparent.Safari on iOS: Safari iOS 1 and 2 only support one text-shadow (displays the first shadow of a comma-separated list and ignores the rest). Safari iOS 3 (WebKit 528) and later support multiple text-shadows.WebView on iOS: In Safari, any shadows that do not explicitly specify a color are transparent.WebView on iOS: Safari iOS 1 and 2 only support one text-shadow (displays the first shadow of a comma-separated list and ignores the rest). Safari iOS 3 (WebKit 528) and later support multiple text-shadows.
css.properties.text-shadow.none 📋Safari10/24/2003 Chrome Android6/27/20123169
css.properties.text-transform 📋Safari6/23/2003 Chrome Android6/27/20123292
Chrome: The text-transform property does not work for ::first-line pseudo-elements (nor for the one-colon syntax). See bug 40214861.Chrome Android: The text-transform property does not work for ::first-line pseudo-elements (nor for the one-colon syntax). See bug 40214861.Quest Browser: The text-transform property does not work for ::first-line pseudo-elements (nor for the one-colon syntax). See bug 40214861.Opera: Since Opera 15, the text-transform property does not work for ::first-line pseudo-elements (nor for the one-colon syntax). See bug 40214861.Safari: The text-transform property does not work for ::first-line pseudo-elements (also not for the old one-colon syntax). See bug 3409.Safari on iOS: The text-transform property does not work for ::first-line pseudo-elements (also not for the old one-colon syntax). See bug 3409.Samsung Internet: The text-transform property does not work for ::first-line pseudo-elements (nor for the one-colon syntax). See bug 40214861.WebView Android: The text-transform property does not work for ::first-line pseudo-elements (nor for the one-colon syntax). See bug 40214861.WebView on iOS: The text-transform property does not work for ::first-line pseudo-elements (also not for the old one-colon syntax). See bug 3409.
css.properties.text-transform.capitalize 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Before Firefox 14, some punctuation characters could interfere with correct capitalization. See bug 731536.Firefox for Android: Before Firefox for Android 14, some punctuation characters could interfere with correct capitalization. See bug 731536.
css.properties.text-transform.lowercase 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.text-transform.lowercase_sigma Safari7/25/2012 Chrome Android10/2/2013434
css.properties.text-transform.none 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.text-transform.turkic_is Chrome Android11/14/2013 Safari10/16/2014336
css.properties.text-transform.uppercase 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.text-transform.uppercase_eszett Safari6/23/2003 Chrome Android6/27/20123292
css.properties.text-underline-offset 📋Safari3/25/2019 Chrome Android11/17/2020603
css.properties.text-underline-offset.auto 📋Safari3/25/2019 Chrome Android11/17/2020603
css.properties.text-underline-offset.percentage 📋Chrome Android11/17/2020 Safari12/11/20241485
css.properties.text-underline-position 📋Chrome Android2/26/2014 Safari3/25/20191853
css.properties.text-underline-position.auto 📋Chrome Android2/26/2014 Safari3/25/20191853
css.properties.text-underline-position.from-font 📋Safari3/25/2019 Chrome Android11/17/2020603
css.properties.text-underline-position.left 📋Chrome Android12/4/2018 Safari12/11/20242199
css.properties.text-underline-position.right 📋Chrome Android12/4/2018 Safari12/11/20242199
css.properties.text-underline-position.under 📋Chrome Android2/26/2014 Safari3/25/20191853
css.properties.text-wrap 📋Chrome Android5/30/2023 Safari3/5/2024280
css.properties.text-wrap.auto 📋Safari3/5/2024 Chrome Android10/15/2024224
css.properties.text-wrap.balance 📋Chrome Android5/30/2023 Safari5/13/2024349
css.properties.text-wrap.nowrap 📋Chrome Android5/30/2023 Safari3/5/2024280
css.properties.text-wrap.pretty 📋Chrome Android9/12/2023 Safari9/15/2025734
css.properties.text-wrap.stable 📋Safari5/13/2024 Chrome Android10/15/2024155
css.properties.text-wrap.wrap 📋Chrome Android5/30/2023 Safari3/5/2024280
css.properties.text-wrap-mode 📋Safari3/5/2024 Chrome Android10/15/2024224
css.properties.text-wrap-mode.nowrap Safari3/5/2024 Chrome Android10/15/2024224
css.properties.text-wrap-mode.wrap Safari3/5/2024 Chrome Android10/15/2024224
css.properties.text-wrap-style 📋Safari5/13/2024 Chrome Android10/15/2024155
css.properties.text-wrap-style.auto 📋Safari5/13/2024 Chrome Android10/15/2024155
css.properties.text-wrap-style.balance 📋Safari5/13/2024 Chrome Android10/15/2024155
css.properties.text-wrap-style.pretty 📋Chrome Android10/15/2024 Safari9/15/2025335
css.properties.text-wrap-style.stable 📋Safari5/13/2024 Chrome Android10/15/2024155
css.properties.timeline-scope 📋Chrome Android8/15/2023 Safari9/15/2025762
css.properties.timeline-scope.none 📋Chrome Android8/15/2023 Safari9/15/2025762
css.properties.top 📋Safari6/23/2003 Chrome Android6/27/20123292
Internet Explorer: In Internet Explorer versions before 7, when both top and bottom are specified, the element position is overconstrained and the top property has precedence; the computed value of bottom is set to -top, while its specified value is ignored.
css.properties.top.anchor 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.top.anchor-size 📋Chrome Android1/14/2025 Safari9/15/2025244
css.properties.top.auto 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.touch-action 📋Chrome Android7/16/2014 Safari9/19/20191891
Firefox: Not applicable to Firefox platforms that support neither pointer nor touch events.
css.properties.touch-action.manipulation Chrome Android7/16/2014 Safari9/19/20191891
Firefox: Not applicable to Firefox platforms that support neither pointer nor touch events.
css.properties.touch-action.none Chrome Android7/16/2014 Safari9/19/20191891
Firefox: Not applicable to Firefox platforms that support neither pointer nor touch events.
css.properties.touch-action.pan-x Chrome Android7/16/2014 Safari9/19/20191891
Firefox: Not applicable to Firefox platforms that support neither pointer nor touch events.
css.properties.touch-action.pan-y Chrome Android7/16/2014 Safari9/19/20191891
Firefox: Not applicable to Firefox platforms that support neither pointer nor touch events.
css.properties.touch-action.pinch-zoom Chrome Android2/1/2017 Safari9/19/2019960
Firefox: Not applicable to Firefox platforms that support neither pointer nor touch events.Firefox for Android: Not applicable to Firefox for Android platforms that support neither pointer nor touch events.
css.properties.transform 📋Chrome Android7/16/2014 Safari9/30/2015441
Internet Explorer: Internet Explorer does not support the global values initial and unset.Internet Explorer: Internet Explorer 5.5 or later supports a proprietary Matrix Filter which can be used to achieve a similar effect.WebView Android: Android 2.3 has a bug where input forms will "jump" when typing, if any container element has a -webkit-transform.
css.properties.transform.3d Safari6/8/2009 Chrome Android6/27/20121115
css.properties.transform.none 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transform-box 📋Safari9/19/2017 Chrome Android1/23/2018126
css.properties.transform-box.border-box 📋Safari9/19/2017 Chrome Android10/10/20232212
css.properties.transform-box.content-box 📋Safari3/24/2020 Chrome Android10/10/20231295
css.properties.transform-box.fill-box 📋Safari9/19/2017 Chrome Android1/23/2018126
css.properties.transform-box.stroke-box 📋Safari3/24/2020 Chrome Android10/10/20231295
css.properties.transform-box.view-box 📋Safari9/19/2017 Chrome Android1/23/2018126
css.properties.transform-origin 📋Chrome Android7/16/2014 Safari9/30/2015441
css.properties.transform-origin.bottom 📋Safari4/29/2005 Chrome Android6/27/20122616
css.properties.transform-origin.center 📋Safari4/29/2005 Chrome Android6/27/20122616
css.properties.transform-origin.left 📋Safari4/29/2005 Chrome Android6/27/20122616
css.properties.transform-origin.right 📋Safari4/29/2005 Chrome Android6/27/20122616
css.properties.transform-origin.svg_elements Safari7/25/2012 Chrome Android2/27/2013217
Firefox: Keywords and percentages refer to the canvas instead of the object itself. See bug 1209061.Firefox for Android: Keywords and percentages refer to the canvas instead of the object itself. See bug 1209061.Safari: Only supported for transformations applied using the CSS transform property (e.g. .className { transform: rotate(45deg); transform-origin: center; }). It has no effect on transformations applied using the transform SVG attribute (e.g. <rect style="transform-origin: center;" transform="rotate(45)" />).Safari on iOS: Only supported for transformations applied using the CSS transform property (e.g. .className { transform: rotate(45deg); transform-origin: center; }). It has no effect on transformations applied using the transform SVG attribute (e.g. <rect style="transform-origin: center;" transform="rotate(45)" />).WebView on iOS: Only supported for transformations applied using the CSS transform property (e.g. .className { transform: rotate(45deg); transform-origin: center; }). It has no effect on transformations applied using the transform SVG attribute (e.g. <rect style="transform-origin: center;" transform="rotate(45)" />).
css.properties.transform-origin.three_value_syntax Safari6/7/2010 Chrome Android6/27/2012751
css.properties.transform-origin.top 📋Safari4/29/2005 Chrome Android6/27/20122616
css.properties.transform-style 📋Chrome Android7/16/2014 Safari9/30/2015441
Safari: Before Safari 17, ::before and ::after pseudo elements were not included in the 3D rendering context (see bug 256430).
css.properties.transform-style.flat 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.transform-style.preserve-3d 📋Safari6/8/2009 Chrome Android6/27/20121115
css.properties.transition 📋Chrome Android4/3/2013 Safari9/30/2015910
Firefox: Before Firefox 57, transitions do not work when transitioning from a text-shadow with a color specified to a text-shadow without a color specified (see bug 726550).Firefox: Before Firefox 57, cancelling a filling animation (for example, with animation-fill-mode: forwards set) can trigger a transition set on the same element, although only once (see bug 1192592 and these test cases for more information).Firefox: Before Firefox 57, the background-position property can't be transitioned between two values containing different numbers of <position> values, for example background-position: 10px 10px; and background-position: 20px 20px, 30px 30px; (see bug 1390446).Firefox for Android: Before Firefox for Android 57, transitions do not work when transitioning from a text-shadow with a color specified to a text-shadow without a color specified (see bug 726550).Firefox for Android: Before Firefox for Android 57, cancelling a filling animation (for example, with animation-fill-mode: forwards set) can trigger a transition set on the same element, although only once (see bug 1192592 and these test cases for more information).Firefox for Android: Before Firefox for Android 57, the background-position property can't be transitioned between two values containing different numbers of <position> values, for example background-position: 10px 10px; and background-position: 20px 20px, 30px 30px; (see bug 1390446).
css.properties.transition.all 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition.allow-discrete 📋Chrome Android9/3/2014 Safari9/20/2016748
css.properties.transition.ease 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition.ease-in 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition.ease-in-out 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition.ease-out 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition.linear 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition.none 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition.normal 📋Chrome Android9/3/2014 Safari9/20/2016748
css.properties.transition.step-end 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition.step-start 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition.transition-behavior Chrome Android9/12/2023 Safari3/5/2024175
css.properties.transition-behavior 📋Chrome Android9/12/2023 Safari3/5/2024175
css.properties.transition-behavior.allow-discrete 📋Chrome Android9/12/2023 Safari3/5/2024175
css.properties.transition-behavior.normal 📋Chrome Android9/12/2023 Safari3/5/2024175
css.properties.transition-behavior.transitionable_content-visibility 📋Chrome Android9/12/2023 Safari9/16/2024370
css.properties.transition-behavior.transitionable_display 📋Chrome Android9/12/2023 Safari9/16/2024370
css.properties.transition-delay 📋Chrome Android4/3/2013 Safari9/30/2015910
css.properties.transition-duration 📋Chrome Android4/3/2013 Safari9/30/2015910
css.properties.transition-property 📋Chrome Android4/3/2013 Safari9/30/2015910
css.properties.transition-property.IDENT_value Safari6/8/2009 Chrome Android6/27/20121115
css.properties.transition-property.all 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition-property.none 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition-timing-function 📋Chrome Android4/3/2013 Safari9/30/2015910
css.properties.transition-timing-function.ease 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition-timing-function.ease-in 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition-timing-function.ease-in-out 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition-timing-function.ease-out 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition-timing-function.jump Chrome Android9/10/2019 Safari9/16/2020372
css.properties.transition-timing-function.linear 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition-timing-function.step-end 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.transition-timing-function.step-start 📋Safari3/18/2008 Chrome Android6/27/20121562
css.properties.translate 📋Safari4/26/2021 Chrome Android8/2/2022463
css.properties.translate.none 📋Safari4/26/2021 Chrome Android8/2/2022463
css.properties.unicode-bidi 📋Safari4/15/2005 Chrome Android6/27/20122630
css.properties.unicode-bidi.bidi-override 📋Safari4/15/2005 Chrome Android6/27/20122630
css.properties.unicode-bidi.embed 📋Safari4/15/2005 Chrome Android6/27/20122630
css.properties.unicode-bidi.isolate 📋Chrome Android1/26/2016 Safari9/19/2017602
Chrome: Before Chrome 47, -webkit-isolate could lock up the browser.Chrome: Since Chrome 19, the syntax from a previous version of the specification, where the isolate keyword could be used together with bidi-override, is allowed.Firefox: From Firefox 10 to Firefox 16 (inclusive), the isolate keyword could be used together with bidi-override, which was the syntax from a previous version of the specification. From Firefox 17, only one value is allowed. Use isolate-override instead the previous isolate bidi-override.Firefox for Android: From Firefox for Android 10 to Firefox for Android 16 (inclusive), the isolate keyword could be used together with bidi-override, which was the syntax from a previous version of the specification. From Firefox for Android 17, only one value is allowed. Use isolate-override instead the previous isolate bidi-override.Opera: Before Opera 34, -webkit-isolate could lock up the browser.Opera: Since Opera 15, the syntax from a previous version of the specification, where the isolate keyword could be used together with bidi-override, is allowed.Safari: Before Safari 9, -webkit-isolate could lock up the browser.Safari on iOS: Before Safari on iOS 9, -webkit-isolate could lock up the browser.WebView on iOS: Before WebView on iOS 9, -webkit-isolate could lock up the browser.
css.properties.unicode-bidi.isolate-override 📋Chrome Android1/26/2016 Safari9/19/2017602
css.properties.unicode-bidi.normal 📋Safari4/15/2005 Chrome Android6/27/20122630
css.properties.unicode-bidi.plaintext 📋Chrome Android1/26/2016 Safari9/19/2017602
Firefox: Before Firefox 50, the plaintext value was ignored for vertical writing modes (bug 1302734).Firefox: Before Firefox 15, plaintext didn't do anything to an inline element. The specification changed and the implementation was changed in Firefox 15.Firefox for Android: Before Firefox for Android 50, the plaintext value was ignored for vertical writing modes (bug 1302734).Firefox for Android: Before Firefox for Android 15, plaintext didn't do anything to an inline element. The specification changed and the implementation was changed in Firefox for Android 15.
css.properties.user-modify Safari10/26/2007 Chrome Android6/27/20121706
Firefox: While the CSS property is parsed and accepted, it does not have any effect.Firefox for Android: While the CSS property is parsed and accepted, it does not have any effect.
css.properties.user-modify.read-write-plaintext-only Safari10/26/2007 Chrome Android6/27/20121706
css.properties.user-select 📋Safari10/26/2007 Chrome Android10/19/20163281
css.properties.user-select.all Chrome Android9/7/2016 Safari9/12/20222196
css.properties.user-select.auto Safari4/29/2005 Chrome Android6/27/20122616
css.properties.user-select.none Safari4/29/2005 Chrome Android6/27/20122616
css.properties.user-select.text Safari4/29/2005 Chrome Android6/27/20122616
css.properties.vector-effect 📋Safari7/20/2011 Chrome Android6/27/2012343
css.properties.vector-effect.non-scaling-stroke 📋Safari7/20/2011 Chrome Android6/27/2012343
css.properties.vector-effect.none 📋Safari7/20/2011 Chrome Android6/27/2012343
css.properties.vertical-align 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.vertical-align.baseline 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.vertical-align.bottom 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.vertical-align.middle 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.vertical-align.sub 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.vertical-align.super 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.vertical-align.text-bottom 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.vertical-align.text-top 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.vertical-align.top 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.view-timeline 📋Chrome Android7/21/2023 Safari9/15/2025787
Firefox: Now supports the x and y values, and also the deprecated horizontal and vertical values.
css.properties.view-timeline.none 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.view-timeline-axis 📋Chrome Android7/21/2023 Safari9/15/2025787
Firefox: Now supports the x and y values, and also the deprecated horizontal and vertical values.
css.properties.view-timeline-axis.block 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.view-timeline-axis.inline 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.view-timeline-axis.x 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.view-timeline-axis.y 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.view-timeline-inset 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.view-timeline-inset.auto 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.view-timeline-name 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.view-timeline-name.none 📋Chrome Android7/21/2023 Safari9/15/2025787
css.properties.view-transition-class 📋Chrome Android5/14/2024 Safari12/11/2024211
css.properties.view-transition-class.none 📋Chrome Android5/14/2024 Safari12/11/2024211
css.properties.view-transition-name 📋Chrome Android3/7/2023 Safari9/16/2024559
css.properties.view-transition-name.match-element 📋Safari3/31/2025 Chrome Android5/27/202557
css.properties.view-transition-name.none 📋Chrome Android3/7/2023 Safari9/16/2024559
css.properties.visibility 📋Safari6/23/2003 Chrome Android6/27/20123292
Internet Explorer: Internet Explorer doesn't support visibility: initial.Internet Explorer: Internet Explorer doesn't support visibility: unset.Internet Explorer: Up to Internet Explorer 7, descendants of hidden elements will still be invisible even if they have visibility set to visible.
css.properties.visibility.collapse 📋Safari4/15/2005 Chrome Android6/27/20122630
Chrome: Before Chrome 62, visibility: collapse has the same effect as hidden for <tr>, <thead>, <tbody>, and <tfoot> elements, flex items, and ruby annotations, leaving a blank gap. It has no effect on <col> and <colgroup> elements.Chrome: Before Chrome 92, visibility: collapse supports <tr>, <thead>, <tbody>, and <tfoot> elements. For flex items and ruby annotations, it has the same effect as hidden, leaving a blank gap. It has no effect on <col> and <colgroup> elements.Chrome: Since Chrome 92, visibility: collapse supports <tr>, <thead>, <tbody>, <tfoot>, <col> and <colgroup> elements. For flex items and ruby annotations, it has the same effect as hidden, leaving a blank gap.Chrome Android: Before Chrome Android 62, visibility: collapse has the same effect as hidden for <tr>, <thead>, <tbody>, and <tfoot> elements, flex items, and ruby annotations, leaving a blank gap. It has no effect on <col> and <colgroup> elements.Chrome Android: Before Chrome Android 92, visibility: collapse supports <tr>, <thead>, <tbody>, and <tfoot> elements. For flex items and ruby annotations, it has the same effect as hidden, leaving a blank gap. It has no effect on <col> and <colgroup> elements.Chrome Android: Since Chrome Android 92, visibility: collapse supports <tr>, <thead>, <tbody>, <tfoot>, <col> and <colgroup> elements. For flex items and ruby annotations, it has the same effect as hidden, leaving a blank gap.Edge: For Edge 79 through Edge 91, visibility: collapse supports <tr>, <thead>, <tbody>, and <tfoot> elements. For flex items and ruby annotations, it has the same effect as hidden, leaving a blank gap. It has no effect on <col> and <colgroup> elements.Edge: Since Edge 92, visibility: collapse supports <tr>, <thead>, <tbody>, <tfoot>, <col> and <colgroup> elements. For flex items and ruby annotations, it has the same effect as hidden, leaving a blank gap.Firefox: Firefox doesn't hide borders when hiding <col> and <colgroup> elements if border-collapse: collapse is set.Firefox: Before Firefox 88, collapse is not supported on ruby annotations.Firefox for Android: Firefox for Android doesn't hide borders when hiding <col> and <colgroup> elements if border-collapse: collapse is set.Firefox for Android: Before Firefox for Android 88, collapse is not supported on ruby annotations.Quest Browser: Before Quest Browser 5.0, visibility: collapse has the same effect as hidden for <tr>, <thead>, <tbody>, and <tfoot> elements, flex items, and ruby annotations, leaving a blank gap. It has no effect on <col> and <colgroup> elements.Quest Browser: Before Quest Browser 17.0, visibility: collapse supports <tr>, <thead>, <tbody>, and <tfoot> elements. For flex items and ruby annotations, it has the same effect as hidden, leaving a blank gap. It has no effect on <col> and <colgroup> elements.Quest Browser: Since Quest Browser 17.0, visibility: collapse supports <tr>, <thead>, <tbody>, <tfoot>, <col> and <colgroup> elements. For flex items and ruby annotations, it has the same effect as hidden, leaving a blank gap.Opera: Before Opera 49, visibility: collapse has the same effect as hidden for <tr>, <thead>, <tbody>, and <tfoot> elements, flex items, and ruby annotations, leaving a blank gap. It has no effect on <col> and <colgroup> elements.Opera: Before Opera 78, visibility: collapse supports <tr>, <thead>, <tbody>, and <tfoot> elements. For flex items and ruby annotations, it has the same effect as hidden, leaving a blank gap. It has no effect on <col> and <colgroup> elements.Opera: Since Opera 78, visibility: collapse supports <tr>, <thead>, <tbody>, <tfoot>, <col> and <colgroup> elements. For flex items and ruby annotations, it has the same effect as hidden, leaving a blank gap.Opera Android: Before Opera Android 46, visibility: collapse has the same effect as hidden for <tr>, <thead>, <tbody>, and <tfoot> elements, flex items, and ruby annotations, leaving a blank gap. It has no effect on <col> and <colgroup> elements.Opera Android: Before Opera Android 65, visibility: collapse supports <tr>, <thead>, <tbody>, and <tfoot> elements. For flex items and ruby annotations, it has the same effect as hidden, leaving a blank gap. It has no effect on <col> and <colgroup> elements.Opera Android: Since Opera Android 65, visibility: collapse supports <tr>, <thead>, <tbody>, <tfoot>, <col> and <colgroup> elements. For flex items and ruby annotations, it has the same effect as hidden, leaving a blank gap.Safari: Safari treats visibility: collapse like hidden, leaving a white gap.Safari: Safari supports the collapse value only on <tr>, <thead>, <tbody>, and <tfoot>, but not on <col> and <colgroup> elements.Safari on iOS: Safari on iOS treats visibility: collapse like hidden, leaving a white gap.Safari on iOS: Safari on iOS supports the collapse value only on <tr>, <thead>, <tbody>, and <tfoot>, but not on <col> and <colgroup> elements.Samsung Internet: Before Samsung Internet 8.0, visibility: collapse has the same effect as hidden for <tr>, <thead>, <tbody>, and <tfoot> elements, flex items, and ruby annotations, leaving a blank gap. It has no effect on <col> and <colgroup> elements.Samsung Internet: Before Samsung Internet 16.0, visibility: collapse supports <tr>, <thead>, <tbody>, and <tfoot> elements. For flex items and ruby annotations, it has the same effect as hidden, leaving a blank gap. It has no effect on <col> and <colgroup> elements.Samsung Internet: Since Samsung Internet 16.0, visibility: collapse supports <tr>, <thead>, <tbody>, <tfoot>, <col> and <colgroup> elements. For flex items and ruby annotations, it has the same effect as hidden, leaving a blank gap.WebView Android: Before WebView Android 62, visibility: collapse has the same effect as hidden for <tr>, <thead>, <tbody>, and <tfoot> elements, flex items, and ruby annotations, leaving a blank gap. It has no effect on <col> and <colgroup> elements.WebView Android: Before WebView Android 92, visibility: collapse supports <tr>, <thead>, <tbody>, and <tfoot> elements. For flex items and ruby annotations, it has the same effect as hidden, leaving a blank gap. It has no effect on <col> and <colgroup> elements.WebView Android: Since WebView Android 92, visibility: collapse supports <tr>, <thead>, <tbody>, <tfoot>, <col> and <colgroup> elements. For flex items and ruby annotations, it has the same effect as hidden, leaving a blank gap.WebView on iOS: WebView on iOS treats visibility: collapse like hidden, leaving a white gap.WebView on iOS: WebView on iOS supports the collapse value only on <tr>, <thead>, <tbody>, and <tfoot>, but not on <col> and <colgroup> elements.
css.properties.visibility.hidden 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.visibility.visible 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.white-space 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.white-space.break-spaces 📋Chrome Android7/30/2019 Safari3/24/2020238
css.properties.white-space.collapse 📋Chrome Android5/30/2023 Safari9/16/2024475
css.properties.white-space.normal 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.white-space.nowrap 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.white-space.pre 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.white-space.pre-line 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.white-space.pre-wrap 📋Safari10/26/2007 Chrome Android6/27/20121706
Internet Explorer: From Internet Explorer 5.5 to 7, word-wrap: break-word; can be used for line breaks in pre elements.
css.properties.white-space.preserve 📋Chrome Android5/30/2023 Safari9/16/2024475
css.properties.white-space.preserve-breaks 📋Chrome Android5/30/2023 Safari9/16/2024475
css.properties.white-space.textarea_support Safari6/23/2003 Chrome Android6/27/20123292
css.properties.white-space.wrap 📋Chrome Android5/30/2023 Safari9/16/2024475
css.properties.white-space-collapse 📋Chrome Android5/30/2023 Safari3/5/2024280
css.properties.white-space-collapse.break-spaces 📋Chrome Android5/30/2023 Safari3/5/2024280
css.properties.white-space-collapse.collapse 📋Chrome Android5/30/2023 Safari3/5/2024280
css.properties.white-space-collapse.preserve 📋Chrome Android5/30/2023 Safari3/5/2024280
css.properties.white-space-collapse.preserve-breaks 📋Chrome Android5/30/2023 Safari3/5/2024280
css.properties.widows 📋Safari4/15/2005 Chrome Android2/27/20132875
css.properties.width 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.width.anchor-size 📋Chrome Android5/14/2024 Safari9/15/2025489
css.properties.width.auto 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.width.fit-content 📋Chrome Android10/14/2015 Safari9/19/2017706
css.properties.width.is_animatable Chrome Android4/3/2013 Safari10/22/2013202
css.properties.width.max-content 📋Chrome Android10/14/2015 Safari9/19/2017706
css.properties.width.min-content 📋Chrome Android10/14/2015 Safari9/19/2017706
css.properties.width.stretch 📋Safari10/22/2013 Chrome Android6/24/20254263
css.properties.will-change 📋Chrome Android7/16/2014 Safari3/21/2016614
css.properties.will-change.auto 📋Chrome Android7/16/2014 Safari3/21/2016614
css.properties.will-change.contents 📋Chrome Android7/16/2014 Safari3/21/2016614
css.properties.will-change.scroll-position 📋Chrome Android7/16/2014 Safari3/21/2016614
css.properties.word-break 📋Safari10/26/2007 Chrome Android6/27/20121706
Internet Explorer: No version of Internet Explorer supports the initial value.Internet Explorer: Don't use -ms-word-break, which is a synonym for word-break.
css.properties.word-break.break-all 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.word-break.break-word 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.word-break.keep-all 📋Chrome Android7/29/2015 Safari9/30/201563
css.properties.word-break.normal 📋Safari10/26/2007 Chrome Android6/27/20121706
css.properties.word-spacing 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.word-spacing.normal 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.word-spacing.percentages Safari10/22/2013 Chrome Android2/10/20264494
css.properties.word-spacing.svg_elements Safari7/20/2011 Chrome Android6/27/2012343
css.properties.writing-mode 📋Chrome Android1/26/2016 Safari3/27/2017426
Firefox: Firefox 42 added support for bidirectional and RTL scripts in vertical modes.Firefox for Android: Firefox for Android 42 added support for bidirectional and RTL scripts in vertical modes.Internet Explorer: Internet Explorer's implementation differs from the specification.Internet Explorer: Internet Explorer's implementation differs from the specification.
css.properties.writing-mode.horizontal-tb Safari9/30/2015 Chrome Android1/26/2016118
css.properties.writing-mode.lr Chrome Android1/26/2016 Safari3/27/2017426
css.properties.writing-mode.lr-tb Chrome Android1/26/2016 Safari3/27/2017426
css.properties.writing-mode.rl Chrome Android1/26/2016 Safari3/27/2017426
css.properties.writing-mode.rl-tb Chrome Android1/26/2016 Safari3/27/2017426
css.properties.writing-mode.sideways-lr Chrome Android1/14/2025 Safari3/31/202576
css.properties.writing-mode.sideways-rl Chrome Android1/14/2025 Safari3/31/202576
css.properties.writing-mode.tb Chrome Android1/26/2016 Safari3/27/2017426
css.properties.writing-mode.tb-rl Chrome Android1/26/2016 Safari3/27/2017426
css.properties.writing-mode.vertical-lr Safari9/30/2015 Chrome Android1/26/2016118
css.properties.writing-mode.vertical-rl Safari9/30/2015 Chrome Android1/26/2016118
css.properties.writing-mode.vertical_oriented_form_controls Safari3/5/2024 Chrome Android4/16/202442
Chrome: Supported for select, button, textarea, textual input, range slider, meter, and progress elements.Chrome: Supported for select, button, textarea and textual input elements.Chrome: Only supported for select and button elements.Chrome Android: Supported for select, button, textarea, textual input, range slider, meter, and progress elements.Chrome Android: Supported for select, button, textarea and textual input elements.Chrome Android: Only supported for select and button elements.Edge: Supported for select, button, textarea, textual input, range slider, meter, and progress elements.Edge: Supported for select, button, textarea and textual input elements.Edge: Only supported for select and button elements.Opera: Supported for select, button, textarea, textual input, range slider, meter, and progress elements.Opera: Supported for select, button, textarea and textual input elements.Opera: Only supported for select and button elements.Opera Android: Supported for select, button, textarea, textual input, range slider, meter, and progress elements.Opera Android: Supported for select, button, textarea and textual input elements.Opera Android: Only supported for select and button elements.Safari: Support for range sliders, textual inputs, and textareas onlySafari on iOS: Support for range sliders, textual inputs, and textareas onlySamsung Internet: Supported for select, button, textarea, textual input, range slider, meter, and progress elements.Samsung Internet: Supported for select, button, textarea and textual input elements.WebView Android: Supported for select, button, textarea, textual input, range slider, meter, and progress elements.WebView Android: Supported for select, button, textarea and textual input elements.WebView Android: Only supported for select and button elements.WebView on iOS: Support for range sliders, textual inputs, and textareas only
css.properties.x 📋Chrome Android4/15/2015 Safari9/30/2015168
css.properties.y 📋Chrome Android4/15/2015 Safari9/30/2015168
css.properties.z-index 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.z-index.auto 📋Safari6/23/2003 Chrome Android6/27/20123292
css.properties.z-index.negative_values Safari6/23/2003 Chrome Android6/27/20123292
css.properties.zoom 📋Safari3/18/2008 Chrome Android6/27/20121562
Firefox: Before Firefox 131, SVG elements are not zoomed properly. See bug 1905023 and bug 878346.Firefox for Android: Before Firefox for Android 131, SVG elements are not zoomed properly. See bug 1905023 and bug 878346.
css.selectors.-webkit-inner-spin-button Safari6/7/2010 Chrome Android6/27/2012751
css.selectors.-webkit-meter-bar Safari7/20/2011 Chrome Android6/27/2012343
css.selectors.-webkit-meter-even-less-good-value Safari7/20/2011 Chrome Android6/27/2012343
css.selectors.-webkit-meter-inner-element Chrome Android2/27/2013 Safari10/22/2013237
css.selectors.-webkit-meter-optimum-value Safari7/20/2011 Chrome Android6/27/2012343
css.selectors.-webkit-meter-suboptimum-value Safari7/20/2011 Chrome Android6/27/2012343
css.selectors.-webkit-progress-bar Chrome Android2/27/2013 Safari10/22/2013237
css.selectors.-webkit-progress-inner-element Chrome Android2/27/2013 Safari10/22/2013237
css.selectors.-webkit-progress-value Chrome Android2/27/2013 Safari10/22/2013237
css.selectors.-webkit-resizer Safari6/8/2009 Chrome Android6/27/20121115
css.selectors.-webkit-scrollbar Safari6/8/2009 Chrome Android6/27/20121115
Safari on iOS: From Safari 13, only display: none works with this pseudo-element. Other styles have no effect.WebView on iOS: From Safari 13, only display: none works with this pseudo-element. Other styles have no effect.
css.selectors.-webkit-scrollbar-button Safari6/8/2009 Chrome Android6/27/20121115
css.selectors.-webkit-scrollbar-corner Safari6/8/2009 Chrome Android6/27/20121115
css.selectors.-webkit-scrollbar-thumb Safari6/8/2009 Chrome Android6/27/20121115
css.selectors.-webkit-scrollbar-track Safari6/8/2009 Chrome Android6/27/20121115
css.selectors.-webkit-scrollbar-track-piece Safari6/8/2009 Chrome Android6/27/20121115
css.selectors.-webkit-search-cancel-button Safari10/26/2007 Chrome Android6/27/20121706
css.selectors.-webkit-search-results-button Safari10/26/2007 Chrome Android6/27/20121706
css.selectors.-webkit-slider-runnable-track Chrome Android4/3/2013 Safari9/16/20244184
css.selectors.-webkit-slider-thumb Chrome Android1/15/2014 Safari9/16/20243897
css.selectors.active 📋Safari6/23/2003 Chrome Android6/27/20123292
css.selectors.active.non_a_elements Safari6/23/2003 Chrome Android6/27/20123292
Safari on iOS: By default, Safari on iOS does not use the :active state unless there is a touchstart event handler on the relevant element or on the <body> element.WebView on iOS: By default, WebView on iOS does not use the :active state unless there is a touchstart event handler on the relevant element or on the <body> element.
css.selectors.active-view-transition 📋Chrome Android5/14/2024 Safari9/16/2024125
css.selectors.active-view-transition-type 📋Chrome Android5/14/2024 Safari12/11/2024211
css.selectors.after 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 57, Firefox had a bug where ::after pseudo-elements were still generated, even if the content property value were set to normal or none.Firefox: Before Firefox 3.5, only the CSS level 2 behavior of :after was supported, which disallowed position, float, list-style-* and some display properties.Firefox for Android: Before Firefox for Android 57, Firefox for Android had a bug where ::after pseudo-elements were still generated, even if the content property value were set to normal or none.Firefox for Android: Before Firefox for Android 4.5, only the CSS level 2 behavior of :after was supported, which disallowed position, float, list-style-* and some display properties.
css.selectors.after.animation_and_transition_support Chrome Android4/3/2013 Safari10/22/2013202
css.selectors.any-link 📋Safari9/30/2015 Chrome Android3/6/2018888
css.selectors.any-link.not_match_link Chrome Android3/6/2018 Safari9/20/20211294
css.selectors.attribute 📋Safari10/26/2007 Chrome Android6/27/20121706
css.selectors.attribute.case_insensitive_modifier Safari9/30/2015 Chrome Android3/9/2016161
css.selectors.autofill 📋Safari9/20/2021 Chrome Android2/7/2023505
Firefox: The :autofill pseudo-class matches autofilled username and password fields, but not other autocompleted fields. See bug 1923525.Firefox: The :-webkit-autofill pseudo-class matches autofilled username and password fields, but not other autocompleted fields. See bug 1923525.Firefox for Android: The :autofill pseudo-class matches autofilled username and password fields, but not other autocompleted fields. See bug 1923525.Firefox for Android: The :-webkit-autofill pseudo-class matches autofilled username and password fields, but not other autocompleted fields. See bug 1923525.
css.selectors.backdrop 📋Chrome Android9/3/2014 Safari3/14/20222749
css.selectors.backdrop.dialog Chrome Android1/15/2014 Safari3/14/20222980
css.selectors.backdrop.fullscreen Chrome Android9/4/2018 Safari3/27/20231665
css.selectors.backdrop.inherit_from_originating_element Chrome Android2/20/2024 Safari3/5/202414
css.selectors.backdrop.popover Chrome Android5/30/2023 Safari9/18/2023111
css.selectors.before 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 57, Firefox had a bug where ::before pseudo-elements were still generated, even if the content property value were set to normal or none.Firefox: Before Firefox 3.5, only the CSS level 2 behavior of :before was supported, which disallowed position, float, list-style-* and some display properties.Firefox for Android: Before Firefox 57, Firefox had a bug where ::before pseudo-elements were still generated, even if the content property value were set to normal or none.
css.selectors.before.animation_and_transition_support Chrome Android4/3/2013 Safari10/22/2013202
css.selectors.checked 📋Safari3/18/2008 Chrome Android6/27/20121562
Chrome: On macOS, styling <option> elements has no effect.Edge: On macOS, styling <option> elements has no effect.Firefox: From Firefox 56, <option> elements cannot be styled.Firefox: On macOS, styling <option> elements has no effect.Firefox for Android: From Firefox 56, <option> elements cannot be styled.Opera: On macOS, styling <option> elements has no effect.Safari: Styling <option> elements has no effect.Safari on iOS: Styling <option> elements has no effect.WebView on iOS: Styling <option> elements has no effect.
css.selectors.child 📋Safari6/23/2003 Chrome Android6/27/20123292
Internet Explorer: Before Internet Explorer 10, the combinator only works in standards mode.
css.selectors.class 📋Safari6/23/2003 Chrome Android6/27/20123292
css.selectors.cue 📋Chrome Android4/3/2013 Safari10/22/2013202
Firefox: From Firefox 69, only allowed properties apply to the ::cue pseudo-element with no argument. See Permitted properties for a list of the allowed properties.
css.selectors.cue.selector_argument Chrome Android4/3/2013 Safari10/22/2013202
css.selectors.default 📋Safari6/7/2010 Chrome Android6/27/2012751
css.selectors.defined 📋Safari9/20/2016 Chrome Android10/19/201629
css.selectors.descendant 📋Safari6/23/2003 Chrome Android6/27/20123292
css.selectors.details-content 📋Chrome Android11/12/2024 Safari3/31/2025139
Safari: Does not support chaining pseudo-elements after ::details-content. See bug 283446.Safari on iOS: Does not support chaining pseudo-elements after ::details-content. See bug 283446.WebView on iOS: Does not support chaining pseudo-elements after ::details-content. See bug 283446.
css.selectors.dir 📋Safari3/27/2023 Chrome Android12/5/2023253
css.selectors.disabled 📋Safari3/18/2008 Chrome Android6/27/20121562
Edge: Before Edge 79, Edge did not recognize :disabled on the <fieldset> element.Internet Explorer: Internet Explorer does not recognize :disabled on the <fieldset> element.
css.selectors.empty 📋Safari3/18/2008 Chrome Android6/27/20121562
css.selectors.enabled 📋Safari3/18/2008 Chrome Android6/27/20121562
css.selectors.file-selector-button 📋Chrome Android3/2/2021 Safari4/26/202155
css.selectors.first 📋Chrome Android6/27/2012 Safari7/25/201228
css.selectors.first-child 📋Safari3/18/2008 Chrome Android6/27/20121562
Internet Explorer: Internet Explorer 7 doesn't update :first-child styles when elements are added dynamically.Internet Explorer: In Internet Explorer 8, if an element is inserted dynamically by clicking on a link, then the :first-child style isn't applied until the link loses focus.
css.selectors.first-letter 📋Safari6/23/2003 Chrome Android6/27/20123292
css.selectors.first-line 📋Safari6/23/2003 Chrome Android6/27/20123292
Chrome: Before Chrome 62, the text-transform property does not work on ::first-line pseudo-elements. See bug 40214861.Chrome: Before Chrome 62, the text-transform property does not work on ::first-line pseudo-elements. See bug 40214861.Chrome Android: Before Chrome Android 62, the text-transform property does not work on ::first-line pseudo-elements. See bug 40214861.Chrome Android: Before Chrome Android 62, the text-transform property does not work on ::first-line pseudo-elements. See bug 40214861.Quest Browser: Before Quest Browser 5.0, the text-transform property does not work on ::first-line pseudo-elements. See bug 40214861.Quest Browser: Before Quest Browser 5.0, the text-transform property does not work on ::first-line pseudo-elements. See bug 40214861.Opera: From Opera 15 to Opera 49 (exclusive), the text-transform property does not work on ::first-line or :first-line pseudo-elements. See bug 40214861.Opera: From Opera 15 to Opera 49 (exclusive), the text-transform property does not work on ::first-line or :first-line pseudo-elements. See bug 40214861.Opera Android: From Opera 15 to Opera 49 (exclusive), the text-transform property does not work on ::first-line or :first-line pseudo-elements. See bug 40214861.Opera Android: From Opera 15 to Opera 49 (exclusive), the text-transform property does not work on ::first-line or :first-line pseudo-elements. See bug 40214861.Safari: The text-transform property does not work for ::first-line or :first-line pseudo-elements. See bug 3409.Safari: The text-transform property does not work for ::first-line or :first-line pseudo-elements. See bug 3409.Safari on iOS: The text-transform property does not work for ::first-line or :first-line pseudo-elements. See bug 3409.Safari on iOS: The text-transform property does not work for ::first-line or :first-line pseudo-elements. See bug 3409.Samsung Internet: Before Samsung Internet 8.0, the text-transform property does not work on ::first-line pseudo-elements. See bug 40214861.Samsung Internet: Before Samsung Internet 8.0, the text-transform property does not work on ::first-line pseudo-elements. See bug 40214861.WebView Android: Before WebView Android 62, the text-transform property does not work on ::first-line pseudo-elements. See bug 40214861.WebView Android: Before WebView Android 62, the text-transform property does not work on ::first-line pseudo-elements. See bug 40214861.WebView on iOS: The text-transform property does not work for ::first-line or :first-line pseudo-elements. See bug 3409.WebView on iOS: The text-transform property does not work for ::first-line or :first-line pseudo-elements. See bug 3409.
css.selectors.first-of-type 📋Safari3/18/2008 Chrome Android6/27/20121562
Edge: Before Edge 16, Microsoft Edge treats all unknown elements (such as custom elements) as the same element type.Internet Explorer: Internet Explorer treats all unknown elements (such as custom elements) as the same element type.
css.selectors.focus 📋Safari6/23/2003 Chrome Android6/27/20123292
css.selectors.focus-visible 📋Chrome Android10/20/2020 Safari3/14/2022510
css.selectors.focus-within 📋Safari3/27/2017 Chrome Android8/1/2017127
css.selectors.fullscreen 📋Chrome Android12/4/2018 Safari3/27/20231574
Safari on iOS: Only available on iPad, not on iPhone.Safari on iOS: Shows an overlay button which can not be disabled. Swiping down exits fullscreen mode, making it unsuitable for some use cases like games.Safari on iOS: Only available on iPad, not on iPhone.WebView on iOS: Only available on iPad, not on iPhone.WebView on iOS: Shows an overlay button which can not be disabled. Swiping down exits fullscreen mode, making it unsuitable for some use cases like games.WebView on iOS: Only available on iPad, not on iPhone.
css.selectors.future 📋Chrome Android2/27/2013 Safari10/22/2013237
css.selectors.grammar-error 📋Chrome Android1/23/2024 Safari3/5/202442
css.selectors.has 📋Safari3/14/2022 Chrome Android9/2/2022172
css.selectors.highlight 📋Chrome Android9/2/2022 Safari12/11/2023465
Firefox: Cannot yet be used with text-shadow. See bug 1845447.Firefox: Before Firefox 146, cannot be used with text-decoration. See bug 1845446.Firefox for Android: Cannot yet be used with text-shadow. See bug 1845447.Firefox for Android: Before Firefox for Android 146, cannot be used with text-decoration. See bug 1845446.Safari: The style is ignored when combined with user-select: none. See bug 278455.Safari on iOS: The style is ignored when combined with user-select: none. See bug 278455.WebView on iOS: The style is ignored when combined with user-select: none. See bug 278455.
css.selectors.host 📋Safari9/20/2016 Chrome Android10/19/201629
css.selectors.hostfunction 📋Safari9/20/2016 Chrome Android10/19/201629
Safari: Certain CSS selectors do not work (:host > .local-child) and styling slotted content (::slotted) is buggy.Safari on iOS: Certain CSS selectors do not work (:host > .local-child) and styling slotted content (::slotted) is buggy.WebView on iOS: Certain CSS selectors do not work (:host > .local-child) and styling slotted content (::slotted) is buggy.
css.selectors.hover 📋Safari4/29/2005 Chrome Android6/27/20122616
Safari on iOS: As of Safari for iOS 7.1.2, tapping a clickable element causes the element to enter the :hover state. The element will remain in the :hover state until a different element has entered the :hover state.WebView on iOS: As of Safari for iOS 7.1.2, tapping a clickable element causes the element to enter the :hover state. The element will remain in the :hover state until a different element has entered the :hover state.
css.selectors.hover.a_elements Safari4/29/2005 Chrome Android6/27/20122616
css.selectors.hover.all_elements Safari4/29/2005 Chrome Android6/27/20122616
Edge: In Edge, hovering over an element and then scrolling up or down without moving the pointer will leave the element in the :hover state until the pointer is moved.Internet Explorer: In Internet Explorer 8 to Internet Explorer 11, hovering over an element and then scrolling up or down without moving the pointer will leave the element in the :hover state until the pointer is moved. See bug 926665.Internet Explorer: In Internet Explorer 9 (and possibly earlier), if a <table> has a parent with a non-auto width, overflow-x: auto;, the <table> has enough content to horizontally overflow its parent, and there are :hover styles set on elements within the table, then hovering over said elements will cause the <table>'s height to increase. See a live demo that triggers the bug. One workaround for the bug is to set min-height: 0%; (the % unit must be specified, since unitless and px don't work) on the <table>'s parent element.
css.selectors.id 📋Safari6/23/2003 Chrome Android6/27/20123292
css.selectors.in-range 📋Safari7/20/2011 Chrome Android6/27/2012343
Chrome: Before Chrome 52, :in-range matched disabled and read-only inputs (see bug 41248615). In Chrome 52, it was changed to only match enabled read-write inputs.Chrome Android: Before Chrome Android 52, :in-range matched disabled and read-only inputs (see bug 41248615). In Chrome Android 52, it was changed to only match enabled read-write inputs.Firefox: Before Firefox 50, :in-range matched disabled and read-only inputs (see bug 1264157). In Firefox 50, it was changed to only match enabled read-write inputs.Quest Browser: Before Quest Browser 5.0, :in-range matched disabled and read-only inputs (see bug 41248615). In Quest Browser 5.0, it was changed to only match enabled read-write inputs.Opera: Before Opera 39, :in-range matched disabled and read-only inputs (see bug 41248615). In Opera 39, it was changed to only match enabled read-write inputs.Opera Android: Before Opera 39, :in-range matched disabled and read-only inputs (see bug 41248615). In Opera 39, it was changed to only match enabled read-write inputs.Safari: In Safari, :in-range matched disabled and read-only inputs (see bug 156530). It was later changed to only match enabled read-write inputs.Safari on iOS: In Safari on iOS, :in-range matched disabled and read-only inputs (see bug 156530). It was later changed to only match enabled read-write inputs.Samsung Internet: Before version 6.0, :in-range matched disabled and read-only inputs (see bug 41248615). In version 6.0, it was changed to only match enabled read-write inputs.WebView Android: Before version 52, :in-range matched disabled and read-only inputs (see bug 41248615). In version 52, it was changed to only match enabled read-write inputs.WebView on iOS: In WebView on iOS, :in-range matched disabled and read-only inputs (see bug 156530). It was later changed to only match enabled read-write inputs.
css.selectors.indeterminate 📋Safari10/26/2007 Chrome Android6/27/20121706
css.selectors.indeterminate.checkbox Safari10/26/2007 Chrome Android6/27/20121706
css.selectors.indeterminate.progress Safari7/20/2011 Chrome Android6/27/2012343
css.selectors.indeterminate.radio Chrome Android11/12/2014 Safari9/20/2016678
css.selectors.invalid 📋Safari6/7/2010 Chrome Android6/27/2012751
css.selectors.invalid.form Chrome Android1/21/2015 Safari9/30/2015252
css.selectors.is 📋Safari9/16/2020 Chrome Android1/19/2021125
Chrome: Doesn't support combinators.Chrome Android: Doesn't support combinators.Edge: Doesn't support combinators.Firefox: Doesn't support combinators.Firefox: See bug 906353.Firefox for Android: Doesn't support combinators.Firefox for Android: See bug 906353.Quest Browser: Doesn't support combinators.Opera: Doesn't support combinators.Opera Android: Doesn't support combinators.Safari: Doesn't support combinators.Safari on iOS: Doesn't support combinators.WebView Android: Doesn't support combinators.WebView on iOS: Doesn't support combinators.
css.selectors.is.forgiving_selector_list Safari9/16/2020 Chrome Android1/19/2021125
css.selectors.lang 📋Safari3/18/2008 Chrome Android6/27/20121562
css.selectors.last-child 📋Safari3/18/2008 Chrome Android6/27/20121562
css.selectors.last-of-type 📋Safari3/18/2008 Chrome Android6/27/20121562
Edge: Before Edge 16, Microsoft Edge treats all unknown elements (such as custom elements) as the same element type.Internet Explorer: Internet Explorer treats all unknown elements (such as custom elements) as the same element type.
css.selectors.left 📋Safari6/7/2010 Chrome Android6/27/2012751
css.selectors.link 📋Safari6/23/2003 Chrome Android6/27/20123292
css.selectors.link.not_match_link Chrome Android6/27/2012 Safari9/20/20213372
css.selectors.list 📋Safari6/23/2003 Chrome Android6/27/20123292
css.selectors.marker 📋Safari4/12/2018 Chrome Android10/20/2020922
Safari: Safari support is limited to color and font-size.Safari on iOS: Safari on iOS support is limited to color and font-size.WebView on iOS: WebView on iOS support is limited to color and font-size.
css.selectors.marker.animation_and_transition_support Chrome Android10/20/2020 Safari4/26/2021188
css.selectors.modal 📋Safari7/20/2022 Chrome Android9/2/202244
css.selectors.namespace 📋Safari10/26/2007 Chrome Android6/27/20121706
css.selectors.nesting 📋Chrome Android12/5/2023 Safari12/11/20236
Chrome: Does not support nested rules that start with a type selector.Chrome Android: Does not support nested rules that start with a type selector.Edge: Does not support nested rules that start with a type selector.Opera: Does not support nested rules that start with a type selector.Opera Android: Does not support nested rules that start with a type selector.Safari: Does not support nested rules that start with a type selector.Safari on iOS: Does not support nested rules that start with a type selector.Samsung Internet: Does not support nested rules that start with a type selector.WebView Android: Does not support nested rules that start with a type selector.WebView on iOS: Does not support nested rules that start with a type selector.
css.selectors.nesting.at-scope Chrome Android12/2/2025 Safari12/12/202510
css.selectors.next-sibling 📋Safari6/23/2003 Chrome Android6/27/20123292
Internet Explorer: Before Internet Explorer 10, the combinator only works in standards mode.Internet Explorer: Internet Explorer 7 doesn't update the style correctly when an element is dynamically placed before an element that matched the selector.Internet Explorer: In Internet Explorer 8, if an element is inserted dynamically by clicking on a link the first-child style isn't applied until the link loses focus.
css.selectors.not 📋Safari3/18/2008 Chrome Android6/27/20121562
css.selectors.not.selector_list Safari9/30/2015 Chrome Android1/19/20211938
css.selectors.nth-child 📋Safari3/18/2008 Chrome Android6/27/20121562
Opera: Before Opera 15, Opera does not handle dynamically inserted elements for :nth-child().Opera Android: Before Opera 15, Opera does not handle dynamically inserted elements for :nth-child().
css.selectors.nth-child.of_syntax Safari9/30/2015 Chrome Android3/7/20232715
css.selectors.nth-last-child 📋Safari3/18/2008 Chrome Android6/27/20121562
css.selectors.nth-last-child.of_syntax Safari9/30/2015 Chrome Android3/7/20232715
css.selectors.nth-last-of-type 📋Safari3/18/2008 Chrome Android6/27/20121562
Edge: Before Edge 16, Microsoft Edge treats all unknown elements (such as custom elements) as the same element type.Internet Explorer: Internet Explorer treats all unknown elements (such as custom elements) as the same element type.
css.selectors.nth-of-type 📋Safari3/18/2008 Chrome Android6/27/20121562
Edge: Before Edge 16, Microsoft Edge treats all unknown elements (such as custom elements) as the same element type.Internet Explorer: Internet Explorer treats all unknown elements (such as custom elements) as the same element type.
css.selectors.only-child 📋Safari3/18/2008 Chrome Android6/27/20121562
css.selectors.only-child.no_parent_required Chrome Android3/16/2017 Safari9/18/20232377
css.selectors.only-of-type 📋Safari3/18/2008 Chrome Android6/27/20121562
Edge: Before Edge 16, Microsoft Edge treats all unknown elements (such as custom elements) as the same element type.Internet Explorer: Internet Explorer treats all unknown elements (such as custom elements) as the same element type.
css.selectors.optional 📋Safari6/7/2010 Chrome Android6/27/2012751
css.selectors.out-of-range 📋Safari7/20/2011 Chrome Android6/27/2012343
css.selectors.part 📋Chrome Android3/12/2019 Safari3/24/2020378
css.selectors.past 📋Chrome Android2/27/2013 Safari10/22/2013237
css.selectors.picture-in-picture 📋Safari3/24/2020 Chrome Android2/7/20231050
css.selectors.placeholder 📋Chrome Android3/16/2017 Safari3/27/201711
css.selectors.placeholder-shown 📋Safari9/30/2015 Chrome Android12/2/201563
css.selectors.placeholder-shown.non_text_types Safari9/30/2015 Chrome Android12/2/201563
css.selectors.popover-open 📋Chrome Android5/30/2023 Safari9/18/2023111
css.selectors.read-only 📋Safari6/8/2009 Chrome Android6/27/20121115
css.selectors.read-write 📋Safari6/8/2009 Chrome Android6/27/20121115
css.selectors.required 📋Safari6/7/2010 Chrome Android6/27/2012751
css.selectors.right 📋Safari6/7/2010 Chrome Android6/27/2012751
css.selectors.root 📋Safari6/23/2003 Chrome Android6/27/20123292
css.selectors.scope 📋Chrome Android5/22/2013 Safari10/22/2013153
Firefox: Firefox 55 removes support for <style scoped> but not for the :scope pseudo-class, which is still supported. <style scoped> made it possible to explicitly set up element scopes, but ongoing discussions about the design of this feature as well as lack of other implementations resulted in the decision to remove it.Firefox for Android: Firefox for Android 55 removes support for <style scoped> but not for the :scope pseudo-class, which is still supported. <style scoped> made it possible to explicitly set up element scopes, but ongoing discussions about the design of this feature as well as lack of other implementations resulted in the decision to remove it.
css.selectors.scope.dom_api Chrome Android5/22/2013 Safari10/22/2013153
css.selectors.selection 📋Safari10/24/2003 Chrome Android6/27/20123169
css.selectors.slotted 📋Chrome Android4/13/2016 Safari9/20/2016160
css.selectors.spelling-error 📋Chrome Android1/23/2024 Safari3/5/202442
css.selectors.state 📋Safari3/5/2024 Chrome Android5/14/202470
Chrome: Uses a dashed-ident (such as :--foo) instead of :state().Chrome Android: Uses a dashed-ident (such as :--foo) instead of :state().Edge: Uses a dashed-ident (such as :--foo) instead of :state().Quest Browser: Uses a dashed-ident (such as :--foo) instead of :state().Opera: Uses a dashed-ident (such as :--foo) instead of :state().Opera Android: Uses a dashed-ident (such as :--foo) instead of :state().Samsung Internet: Uses a dashed-ident (such as :--foo) instead of :state().WebView Android: Uses a dashed-ident (such as :--foo) instead of :state().
css.selectors.subsequent-sibling 📋Safari10/26/2007 Chrome Android6/27/20121706
Internet Explorer: Before Internet Explorer 10, the combinator only works in standards mode.
css.selectors.target 📋Safari4/15/2005 Chrome Android6/27/20122630
css.selectors.target-text 📋Chrome Android3/2/2021 Safari12/11/20241380
css.selectors.type 📋Safari6/23/2003 Chrome Android6/27/20123292
css.selectors.type.namespaces Safari4/15/2005 Chrome Android6/27/20122630
css.selectors.universal 📋Safari6/23/2003 Chrome Android6/27/20123292
css.selectors.universal.namespaces Safari4/15/2005 Chrome Android6/27/20122630
css.selectors.user-invalid 📋Safari5/18/2023 Chrome Android10/31/2023166
css.selectors.user-valid 📋Safari5/18/2023 Chrome Android10/31/2023166
css.selectors.valid 📋Safari6/7/2010 Chrome Android6/27/2012751
css.selectors.valid.form Chrome Android1/21/2015 Safari9/30/2015252
css.selectors.view-transition 📋Chrome Android1/10/2023 Safari9/16/2024615
css.selectors.view-transition-group 📋Chrome Android1/10/2023 Safari9/16/2024615
css.selectors.view-transition-image-pair 📋Chrome Android1/10/2023 Safari9/16/2024615
css.selectors.view-transition-new 📋Chrome Android1/10/2023 Safari9/16/2024615
css.selectors.view-transition-old 📋Chrome Android1/10/2023 Safari9/16/2024615
css.selectors.visited 📋Safari6/23/2003 Chrome Android6/27/20123292
css.selectors.visited.not_match_link Chrome Android6/27/2012 Safari9/20/20213372
css.selectors.visited.privacy_measures Safari6/7/2010 Chrome Android6/27/2012751
css.selectors.where 📋Safari9/16/2020 Chrome Android1/19/2021125
css.selectors.where.forgiving_selector_list Safari9/16/2020 Chrome Android1/19/2021125
css.types.abs 📋Safari3/14/2022 Chrome Android6/24/20251198
css.types.acos 📋Safari3/14/2022 Chrome Android3/7/2023358
css.types.anchor 📋Chrome Android5/14/2024 Safari9/15/2025489
css.types.anchor-size 📋Chrome Android5/14/2024 Safari9/15/2025489
css.types.anchor-size.inset_margin Chrome Android1/14/2025 Safari9/15/2025244
css.types.angle 📋Safari6/8/2009 Chrome Android6/27/20121115
css.types.angle.deg Safari6/8/2009 Chrome Android6/27/20121115
css.types.angle.grad Safari6/8/2009 Chrome Android6/27/20121115
css.types.angle.rad Safari6/8/2009 Chrome Android6/27/20121115
css.types.angle.turn Safari6/8/2009 Chrome Android6/27/20121115
css.types.angle-percentage 📋Safari6/8/2009 Chrome Android6/27/20121115
css.types.asin 📋Safari3/14/2022 Chrome Android3/7/2023358
css.types.atan 📋Safari3/14/2022 Chrome Android3/7/2023358
css.types.atan2 📋Safari3/14/2022 Chrome Android3/7/2023358
css.types.attr 📋Safari3/18/2008 Chrome Android6/27/20121562
css.types.attr.declaration-value 📋Chrome Android2/4/2025 Safari3/31/202555
css.types.basic-shape 📋Chrome Android9/3/2014 Safari3/27/2017936
css.types.basic-shape.animation Chrome Android9/3/2014 Safari3/27/2017936
css.types.basic-shape.circle 📋Chrome Android9/3/2014 Safari3/27/2017936
css.types.basic-shape.ellipse 📋Chrome Android9/3/2014 Safari3/27/2017936
css.types.basic-shape.inset 📋Chrome Android9/3/2014 Safari3/27/2017936
css.types.basic-shape.path 📋Chrome Android7/27/2016 Safari3/24/20201336
css.types.basic-shape.path.clip-path 📋Safari3/24/2020 Chrome Android1/19/2021301
css.types.basic-shape.path.offset-path 📋Chrome Android2/1/2017 Safari9/12/20222049
css.types.basic-shape.polygon 📋Chrome Android9/3/2014 Safari3/27/2017936
css.types.basic-shape.rect 📋Chrome Android10/31/2023 Safari12/11/202341
Chrome: Only supported on the offset-path property.Chrome Android: Only supported on the offset-path property.Edge: Only supported on the offset-path property.Opera: Only supported on the offset-path property.Opera Android: Only supported on the offset-path property.Samsung Internet: Only supported on the offset-path property.WebView Android: Only supported on the offset-path property.
css.types.basic-shape.shape 📋Safari3/31/2025 Chrome Android4/1/20251
css.types.basic-shape.xywh 📋Chrome Android10/31/2023 Safari12/11/202341
Chrome: Only supported on the offset-path property.Chrome Android: Only supported on the offset-path property.Edge: Only supported on the offset-path property.Opera: Only supported on the offset-path property.Opera Android: Only supported on the offset-path property.Samsung Internet: Only supported on the offset-path property.WebView Android: Only supported on the offset-path property.
css.types.blend-mode 📋Safari10/16/2014 Chrome Android6/6/2017964
css.types.calc 📋Chrome Android7/10/2013 Safari10/22/2013104
Firefox: Before Firefox 59 calc() is not supported in rgb() and other color functions.Firefox: Before Firefox 57 calc(1*2*3) is not parsed successfully.Firefox: Firefox 57 increased the number of places calc() could substitute another value. See bug 1350857.Firefox for Android: Before Firefox for Android 59 calc() is not supported in rgb() and other color functions.Firefox for Android: Before Firefox for Android 57 calc(1*2*3) is not parsed successfully.Firefox for Android: Firefox for Android 57 increased the number of places calc() could substitute another value. See bug 1350857.
css.types.calc.color_component Safari3/27/2023 Chrome Android10/31/2023218
css.types.calc.gradient_color_stops Safari7/25/2012 Chrome Android7/10/2013350
css.types.calc.nested Chrome Android6/8/2016 Safari9/19/2017468
css.types.calc.number_values Safari7/25/2012 Chrome Android11/14/2013477
css.types.calc.typed_division_produces_unitless_number 📋Chrome Android9/2/2025 Safari9/15/202513
css.types.calc-keyword 📋Chrome Android3/1/2022 Safari3/14/202213
css.types.calc-keyword.NaN Chrome Android3/1/2022 Safari9/12/2022195
css.types.calc-keyword.e Safari3/14/2022 Chrome Android2/7/2023330
css.types.calc-keyword.infinity Chrome Android3/1/2022 Safari9/12/2022195
css.types.calc-keyword.pi Safari3/14/2022 Chrome Android1/10/2023302
css.types.clamp 📋Chrome Android12/17/2019 Safari3/24/202098
css.types.color 📋Safari6/23/2003 Chrome Android6/27/20123292
css.types.color.color 📋Safari9/20/2021 Chrome Android3/7/2023533
Safari: Only supports display-p3 and srgb predefined color profiles.Safari on iOS: Only supports display-p3 and srgb predefined color profiles.WebView on iOS: Only supports display-p3 and srgb predefined color profiles.
css.types.color.color.colorSpace_parameter_accepts_display-p3-linear_value 📋Safari12/12/2025 Chrome Android1/13/202632
css.types.color.color.mixed_type_parameters Safari9/20/2021 Chrome Android3/7/2023533
css.types.color.color.relative_syntax 📋Chrome Android10/31/2023 Safari9/16/2024321
Safari: Implementation based on older spec version. As a result, calculations with channel values do not work correctly, requiring values to be specified as percentages with units (%).Safari on iOS: Implementation based on older spec version. As a result, calculations with channel values do not work correctly, requiring values to be specified as percentages with units (%).WebView on iOS: Implementation based on older spec version. As a result, calculations with channel values do not work correctly, requiring values to be specified as percentages with units (%).
css.types.color.color-mix 📋Safari12/13/2022 Chrome Android3/7/202384
css.types.color.currentcolor 📋Safari6/8/2009 Chrome Android6/27/20121115
css.types.color.hsl 📋Safari3/18/2008 Chrome Android6/27/20121562
css.types.color.hsl.alpha_parameter Chrome Android3/6/2018 Safari3/25/2019384
css.types.color.hsl.mixed_type_parameters Chrome Android1/23/2024 Safari9/16/2024237
css.types.color.hsl.relative_syntax 📋Chrome Android5/14/2024 Safari9/16/2024125
Chrome: s and l channel values incorrectly resolve to numbers between 0-1 rather than 0-100. As a result, channel value calculations require s and l values to be specified as decimal percentage equivalents (e.g. 0.2 for 20%). See bug 330096624.Chrome Android: s and l channel values incorrectly resolve to numbers between 0-1 rather than 0-100. As a result, channel value calculations require s and l values to be specified as decimal percentage equivalents (e.g. 0.2 for 20%). See bug 330096624.Edge: s and l channel values incorrectly resolve to numbers between 0-1 rather than 0-100. As a result, channel value calculations require s and l values to be specified as decimal percentage equivalents (e.g. 0.2 for 20%). See bug 330096624.Opera: s and l channel values incorrectly resolve to numbers between 0-1 rather than 0-100. As a result, channel value calculations require s and l values to be specified as decimal percentage equivalents (e.g. 0.2 for 20%). See bug 330096624.Opera Android: s and l channel values incorrectly resolve to numbers between 0-1 rather than 0-100. As a result, channel value calculations require s and l values to be specified as decimal percentage equivalents (e.g. 0.2 for 20%). See bug 330096624.Safari: Implementation based on older spec version. As a result, calculations with channel values do not work correctly, requiring values to be specified with units (deg for h, % for s and l).Safari on iOS: Implementation based on older spec version. As a result, calculations with channel values do not work correctly, requiring values to be specified with units (deg for h, % for s and l).Samsung Internet: s and l channel values incorrectly resolve to numbers between 0-1 rather than 0-100. As a result, channel value calculations require s and l values to be specified as decimal percentage equivalents (e.g. 0.2 for 20%). See bug 330096624.WebView Android: s and l channel values incorrectly resolve to numbers between 0-1 rather than 0-100. As a result, channel value calculations require s and l values to be specified as decimal percentage equivalents (e.g. 0.2 for 20%). See bug 330096624.WebView on iOS: Implementation based on older spec version. As a result, calculations with channel values do not work correctly, requiring values to be specified with units (deg for h, % for s and l).
css.types.color.hsl.space_separated_parameters Chrome Android3/6/2018 Safari3/25/2019384
css.types.color.hwb 📋Safari9/20/2021 Chrome Android4/26/2022218
css.types.color.hwb.mixed_type_parameters Chrome Android1/23/2024 Safari9/16/2024237
css.types.color.hwb.relative_syntax 📋Chrome Android5/14/2024 Safari9/16/2024125
Chrome: w and b channel values incorrectly resolve to numbers between 0-1 rather than 0-100. As a result, channel value calculations require w and b values to be specified as decimal percentage equivalents (e.g. 0.2 for 20%). See bug 330096624.Chrome Android: w and b channel values incorrectly resolve to numbers between 0-1 rather than 0-100. As a result, channel value calculations require w and b values to be specified as decimal percentage equivalents (e.g. 0.2 for 20%). See bug 330096624.Edge: w and b channel values incorrectly resolve to numbers between 0-1 rather than 0-100. As a result, channel value calculations require w and b values to be specified as decimal percentage equivalents (e.g. 0.2 for 20%). See bug 330096624.Opera: w and b channel values incorrectly resolve to numbers between 0-1 rather than 0-100. As a result, channel value calculations require w and b values to be specified as decimal percentage equivalents (e.g. 0.2 for 20%). See bug 330096624.Opera Android: w and b channel values incorrectly resolve to numbers between 0-1 rather than 0-100. As a result, channel value calculations require w and b values to be specified as decimal percentage equivalents (e.g. 0.2 for 20%). See bug 330096624.Safari: Implementation based on older spec version. As a result, calculations with channel values do not work correctly, requiring values to be specified with units (deg for h, % for w and b).Safari on iOS: Implementation based on older spec version. As a result, calculations with channel values do not work correctly, requiring values to be specified with units (deg for h, % for w and b).Samsung Internet: w and b channel values incorrectly resolve to numbers between 0-1 rather than 0-100. As a result, channel value calculations require w and b values to be specified as decimal percentage equivalents (e.g. 0.2 for 20%). See bug 330096624.WebView Android: w and b channel values incorrectly resolve to numbers between 0-1 rather than 0-100. As a result, channel value calculations require w and b values to be specified as decimal percentage equivalents (e.g. 0.2 for 20%). See bug 330096624.WebView on iOS: Implementation based on older spec version. As a result, calculations with channel values do not work correctly, requiring values to be specified with units (deg for h, % for w and b).
css.types.color.lab 📋Safari9/20/2021 Chrome Android3/7/2023533
css.types.color.lab.mixed_type_parameters Safari12/13/2022 Chrome Android8/15/2023245
css.types.color.lab.relative_syntax 📋Safari3/27/2023 Chrome Android10/31/2023218
css.types.color.lch 📋Safari9/20/2021 Chrome Android3/7/2023533
css.types.color.lch.mixed_type_parameters Safari12/13/2022 Chrome Android8/15/2023245
css.types.color.lch.relative_syntax 📋Chrome Android10/31/2023 Safari9/16/2024321
Safari: Implementation based on older spec version. As a result, calculations with h channel values do not work correctly, requiring values to be specified with units (deg).Safari on iOS: Implementation based on older spec version. As a result, calculations with h channel values do not work correctly, requiring values to be specified with units (deg).WebView on iOS: Implementation based on older spec version. As a result, calculations with h channel values do not work correctly, requiring values to be specified with units (deg).
css.types.color.light-dark 📋Chrome Android3/19/2024 Safari5/13/202455
css.types.color.named-color 📋Safari6/23/2003 Chrome Android6/27/20123292
Internet Explorer: Internet Explorer 8 and later support gray color keywords spelled with an e (grey, darkgrey, darkslategrey, dimgrey, lightgrey, and lightslategrey). Internet Explorer 3 to Internet Explorer 7 only support the keywords spelled with a (gray, darkgray, darkslategray, dimgray, lightgray, and lightslategray).
css.types.color.named-color.rebeccapurple Chrome Android10/8/2014 Safari9/30/2015357
css.types.color.named-color.transparent 📋Safari3/18/2008 Chrome Android6/27/20121562
css.types.color.oklab 📋Safari3/14/2022 Chrome Android3/7/2023358
css.types.color.oklab.mixed_type_parameters Safari12/13/2022 Chrome Android8/15/2023245
css.types.color.oklab.relative_syntax 📋Safari3/27/2023 Chrome Android2/20/2024330
Chrome: l channel values incorrectly resolve to numbers between 0-100 rather than 0-1. As a result, channel value calculations require l values to be specified as percentage numbers without units (e.g. 20 for 0.2). See bug 40940488.Chrome Android: l channel values incorrectly resolve to numbers between 0-100 rather than 0-1. As a result, channel value calculations require l values to be specified as percentage numbers without units (e.g. 20 for 0.2). See bug 40940488.Edge: l channel values incorrectly resolve to numbers between 0-100 rather than 0-1. As a result, channel value calculations require l values to be specified as percentage numbers without units (e.g. 20 for 0.2). See bug 40940488.Opera: l channel values incorrectly resolve to numbers between 0-100 rather than 0-1. As a result, channel value calculations require l values to be specified as percentage numbers without units (e.g. 20 for 0.2). See bug 40940488.Opera Android: l channel values incorrectly resolve to numbers between 0-100 rather than 0-1. As a result, channel value calculations require l values to be specified as percentage numbers without units (e.g. 20 for 0.2). See bug 40940488.Samsung Internet: l channel values incorrectly resolve to numbers between 0-100 rather than 0-1. As a result, channel value calculations require l values to be specified as percentage numbers without units (e.g. 20 for 0.2). See bug 40940488.WebView Android: l channel values incorrectly resolve to numbers between 0-100 rather than 0-1. As a result, channel value calculations require l values to be specified as percentage numbers without units (e.g. 20 for 0.2). See bug 40940488.
css.types.color.oklch 📋Safari3/14/2022 Chrome Android3/7/2023358
css.types.color.oklch.mixed_type_parameters Safari12/13/2022 Chrome Android8/15/2023245
css.types.color.oklch.relative_syntax 📋Chrome Android2/20/2024 Safari9/16/2024209
Chrome: l channel values incorrectly resolve to numbers between 0-100 rather than 0-1. As a result, channel value calculations require l values to be specified as percentage numbers without units (e.g. 20 for 0.2). See bug 40940488.Chrome Android: l channel values incorrectly resolve to numbers between 0-100 rather than 0-1. As a result, channel value calculations require l values to be specified as percentage numbers without units (e.g. 20 for 0.2). See bug 40940488.Edge: l channel values incorrectly resolve to numbers between 0-100 rather than 0-1. As a result, channel value calculations require l values to be specified as percentage numbers without units (e.g. 20 for 0.2). See bug 40940488.Opera: l channel values incorrectly resolve to numbers between 0-100 rather than 0-1. As a result, channel value calculations require l values to be specified as percentage numbers without units (e.g. 20 for 0.2). See bug 40940488.Opera Android: l channel values incorrectly resolve to numbers between 0-100 rather than 0-1. As a result, channel value calculations require l values to be specified as percentage numbers without units (e.g. 20 for 0.2). See bug 40940488.Safari: Implementation based on older spec version. As a result, calculations with h channel values do not work correctly, requiring values to be specified with units (deg).Safari on iOS: Implementation based on older spec version. As a result, calculations with h channel values do not work correctly, requiring values to be specified with units (deg).Samsung Internet: l channel values incorrectly resolve to numbers between 0-100 rather than 0-1. As a result, channel value calculations require l values to be specified as percentage numbers without units (e.g. 20 for 0.2). See bug 40940488.WebView Android: l channel values incorrectly resolve to numbers between 0-100 rather than 0-1. As a result, channel value calculations require l values to be specified as percentage numbers without units (e.g. 20 for 0.2). See bug 40940488.WebView on iOS: Implementation based on older spec version. As a result, calculations with h channel values do not work correctly, requiring values to be specified with units (deg).
css.types.color.rgb 📋Safari6/23/2003 Chrome Android6/27/20123292
css.types.color.rgb.alpha_parameter Chrome Android3/6/2018 Safari3/25/2019384
css.types.color.rgb.float_values Chrome Android4/17/2018 Safari3/25/2019342
css.types.color.rgb.mixed_type_parameters Chrome Android2/20/2024 Safari9/16/2024209
css.types.color.rgb.relative_syntax 📋Chrome Android2/20/2024 Safari9/16/2024209
Chrome: Channel values incorrectly resolve to numbers between 0-1 rather than 0-255. As a result, channel value calculations require values to be specified as decimal percentage equivalents (e.g. 0.3 for 30%, which would be equivalent to a 76.5 <number> value). See bug 41490327.Chrome Android: Channel values incorrectly resolve to numbers between 0-1 rather than 0-255. As a result, channel value calculations require values to be specified as decimal percentage equivalents (e.g. 0.3 for 30%, which would be equivalent to a 76.5 <number> value). See bug 41490327.Edge: Channel values incorrectly resolve to numbers between 0-1 rather than 0-255. As a result, channel value calculations require values to be specified as decimal percentage equivalents (e.g. 0.3 for 30%, which would be equivalent to a 76.5 <number> value). See bug 41490327.Opera: Channel values incorrectly resolve to numbers between 0-1 rather than 0-255. As a result, channel value calculations require values to be specified as decimal percentage equivalents (e.g. 0.3 for 30%, which would be equivalent to a 76.5 <number> value). See bug 41490327.Opera Android: Channel values incorrectly resolve to numbers between 0-1 rather than 0-255. As a result, channel value calculations require values to be specified as decimal percentage equivalents (e.g. 0.3 for 30%, which would be equivalent to a 76.5 <number> value). See bug 41490327.Safari: Implementation based on older spec version. As a result, channel value calculations do not work correctly, requiring values to be specified as percentages with units (e.g. 30%, which would be equivalent to a 76.5 <number> value). See bug 267647.Safari on iOS: Implementation based on older spec version. As a result, channel value calculations do not work correctly, requiring values to be specified as percentages with units (e.g. 30%, which would be equivalent to a 76.5 <number> value). See bug 267647.Samsung Internet: Channel values incorrectly resolve to numbers between 0-1 rather than 0-255. As a result, channel value calculations require values to be specified as decimal percentage equivalents (e.g. 0.3 for 30%, which would be equivalent to a 76.5 <number> value). See bug 41490327.WebView Android: Channel values incorrectly resolve to numbers between 0-1 rather than 0-255. As a result, channel value calculations require values to be specified as decimal percentage equivalents (e.g. 0.3 for 30%, which would be equivalent to a 76.5 <number> value). See bug 41490327.WebView on iOS: Implementation based on older spec version. As a result, channel value calculations do not work correctly, requiring values to be specified as percentages with units (e.g. 30%, which would be equivalent to a 76.5 <number> value). See bug 267647.
css.types.color.rgb.space_separated_parameters Chrome Android3/6/2018 Safari3/25/2019384
css.types.color.rgb_hexadecimal_notation 📋Safari6/23/2003 Chrome Android6/27/20123292
css.types.color.rgb_hexadecimal_notation.alpha_hexadecimal_notation Safari9/20/2016 Chrome Android10/24/2017399
css.types.color.system-color 📋Safari6/23/2003 Chrome Android6/27/20123292
css.types.color.system-color.accentcolor_accentcolortext 📋Safari5/18/2023 Chrome Android7/21/202364
Safari: Only supports a fallback: The native color when accent colour (in macOS' appearance panel) is set to 'multicolour'. On iOS falls back to the blue accent colourSafari on iOS: Only supports a fallback: The native color when accent colour (in macOS' appearance panel) is set to 'multicolour'. On iOS falls back to the blue accent colourWebView on iOS: Only supports a fallback: The native color when accent colour (in macOS' appearance panel) is set to 'multicolour'. On iOS falls back to the blue accent colour
css.types.color.transparent Safari6/23/2003 Chrome Android6/27/20123292
css.types.cos 📋Safari3/14/2022 Chrome Android3/7/2023358
css.types.counter 📋Safari10/26/2007 Chrome Android6/27/20121706
css.types.counters 📋Safari10/26/2007 Chrome Android6/27/20121706
css.types.dimension 📋Safari6/23/2003 Chrome Android6/27/20123292
css.types.easing-function 📋Safari3/18/2008 Chrome Android6/27/20121562
css.types.easing-function.cubic-bezier 📋Chrome Android6/27/2012 Safari7/25/201228
css.types.easing-function.linear-function 📋Chrome Android5/2/2023 Safari12/11/2023223
css.types.easing-function.steps 📋Safari7/20/2011 Chrome Android6/27/2012343
css.types.easing-function.steps.jump Chrome Android9/10/2019 Safari9/16/2020372
css.types.env 📋Safari4/12/2018 Chrome Android9/4/2018145
css.types.env.safe-area-inset-bottom 📋Safari9/19/2017 Chrome Android9/4/2018350
css.types.env.safe-area-inset-left 📋Safari9/19/2017 Chrome Android9/4/2018350
css.types.env.safe-area-inset-right 📋Safari9/19/2017 Chrome Android9/4/2018350
css.types.env.safe-area-inset-top 📋Safari9/19/2017 Chrome Android9/4/2018350
css.types.exp 📋Safari3/14/2022 Chrome Android12/5/2023631
css.types.filter-function 📋Safari7/25/2012 Chrome Android9/7/20161505
css.types.filter-function.blur 📋Safari7/25/2012 Chrome Android9/7/20161505
css.types.filter-function.brightness 📋Safari7/25/2012 Chrome Android9/7/20161505
css.types.filter-function.contrast 📋Safari7/25/2012 Chrome Android9/7/20161505
css.types.filter-function.drop-shadow 📋Safari7/25/2012 Chrome Android9/7/20161505
css.types.filter-function.grayscale 📋Safari7/25/2012 Chrome Android9/7/20161505
css.types.filter-function.hue-rotate 📋Safari7/25/2012 Chrome Android9/7/20161505
css.types.filter-function.invert 📋Safari7/25/2012 Chrome Android9/7/20161505
css.types.filter-function.opacity 📋Safari7/25/2012 Chrome Android9/7/20161505
css.types.filter-function.saturate 📋Safari7/25/2012 Chrome Android9/7/20161505
css.types.filter-function.sepia 📋Safari7/25/2012 Chrome Android9/7/20161505
css.types.flex 📋Chrome Android8/21/2013 Safari3/27/20171314
css.types.global_keywords Safari6/23/2003 Chrome Android6/27/20123292
css.types.global_keywords.inherit 📋Safari6/23/2003 Chrome Android6/27/20123292
css.types.global_keywords.initial 📋Safari2/2/2004 Chrome Android6/27/20123068
css.types.global_keywords.revert 📋Safari3/21/2016 Chrome Android7/27/20201589
css.types.global_keywords.revert-layer 📋Chrome Android3/1/2022 Safari3/14/202213
css.types.global_keywords.unset 📋Chrome Android3/11/2015 Safari3/21/2016376
css.types.gradient 📋Chrome Android4/3/2013 Safari10/22/2013202
Firefox: Gradients are limited to background-image, border-image, and mask-image.Firefox for Android: Gradients are limited to background-image, border-image, and mask-image.
css.types.gradient.conic-gradient 📋Chrome Android9/4/2018 Safari3/25/2019202
css.types.gradient.conic-gradient.doubleposition Chrome Android1/29/2019 Safari3/25/201955
css.types.gradient.conic-gradient.hue_interpolation_method Safari12/13/2022 Chrome Android3/7/202384
css.types.gradient.conic-gradient.interpolation_color_space Safari12/13/2022 Chrome Android3/7/202384
css.types.gradient.conic-gradient.single_color_stop 📋Safari3/31/2025 Chrome Android4/1/20251
css.types.gradient.linear-gradient 📋Chrome Android4/3/2013 Safari10/22/2013202
Firefox: Since Firefox 42, the prefixed version of gradients can be disabled by setting layout.css.prefixes.gradients to false.Firefox: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.Firefox for Android: Since Firefox for Android 42, the prefixed version of gradients can be disabled by setting layout.css.prefixes.gradients to false.Firefox for Android: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.Internet Explorer: Internet Explorer 5.5 through 9.0 supported gradients via a proprietary filter: -ms-filter: progid:DXImageTransform.Microsoft.Gradient().Opera: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.Opera: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.Opera Android: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.Opera Android: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.Safari: Safari 4 was supporting an experimental -webkit-gradient(linear,…) function. It is more limited than the later standard version: you cannot specify both a position and an angle like in linear-gradient(). This old outdated syntax is still supported for compatibility purposes.Safari: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.Safari on iOS: Safari on iOS 3.2 was supporting an experimental -webkit-gradient(linear,…) function. It is more limited than the later standard version: you cannot specify both a position and an angle like in linear-gradient(). This old outdated syntax is still supported for compatibility purposes.Safari on iOS: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.WebView on iOS: WebView on iOS 3.2 was supporting an experimental -webkit-gradient(linear,…) function. It is more limited than the later standard version: you cannot specify both a position and an angle like in linear-gradient(). This old outdated syntax is still supported for compatibility purposes.WebView on iOS: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.
css.types.gradient.linear-gradient.doubleposition Chrome Android12/4/2018 Safari3/25/2019111
css.types.gradient.linear-gradient.hue_interpolation_method Safari12/13/2022 Chrome Android3/7/202384
css.types.gradient.linear-gradient.interpolation_color_space Safari12/13/2022 Chrome Android3/7/202384
css.types.gradient.linear-gradient.interpolation_hints Safari10/22/2013 Chrome Android1/21/2015456
css.types.gradient.linear-gradient.premultiplied_gradients Chrome Android8/21/2013 Safari9/20/20212952
css.types.gradient.linear-gradient.single_color_stop 📋Safari3/31/2025 Chrome Android4/1/20251
css.types.gradient.linear-gradient.to Chrome Android4/3/2013 Safari10/22/2013202
css.types.gradient.linear-gradient.unitless_0_angle Chrome Android4/3/2013 Safari10/22/2013202
Firefox: Accepted only in -webkit-linear-gradient() and -moz-linear-gradient(), not linear-gradient().Firefox for Android: Accepted only in -webkit-linear-gradient() and -moz-linear-gradient(), not linear-gradient().
css.types.gradient.radial-gradient 📋Chrome Android4/3/2013 Safari10/22/2013202
Firefox: Since Firefox 42, the prefixed version of gradients can be disabled by setting layout.css.prefixes.gradients to false.Firefox for Android: Since Firefox for Android 42, the prefixed version of gradients can be disabled by setting layout.css.prefixes.gradients to false.Internet Explorer: Internet Explorer 5.5 through 9.0 supported gradients via a proprietary filter: -ms-filter: progid:DXImageTransform.Microsoft.Gradient().Safari: Safari 4 was supporting an experimental -webkit-gradient(radial,…) function. This old outdated syntax is still supported for compatibility purposes.Safari on iOS: Safari on iOS 3.2 was supporting an experimental -webkit-gradient(radial,…) function. This old outdated syntax is still supported for compatibility purposes.WebView on iOS: WebView on iOS 3.2 was supporting an experimental -webkit-gradient(radial,…) function. This old outdated syntax is still supported for compatibility purposes.
css.types.gradient.radial-gradient.at Chrome Android4/3/2013 Safari10/22/2013202
css.types.gradient.radial-gradient.doubleposition Chrome Android12/4/2018 Safari3/25/2019111
css.types.gradient.radial-gradient.hue_interpolation_method Safari12/13/2022 Chrome Android3/7/202384
css.types.gradient.radial-gradient.interpolation_color_space Safari12/13/2022 Chrome Android3/7/202384
css.types.gradient.radial-gradient.interpolation_hints Safari10/22/2013 Chrome Android1/21/2015456
css.types.gradient.radial-gradient.premultiplied_gradients Chrome Android8/21/2013 Safari9/20/20212952
css.types.gradient.radial-gradient.single_color_stop 📋Safari3/31/2025 Chrome Android4/1/20251
css.types.gradient.repeating-conic-gradient 📋Chrome Android9/4/2018 Safari3/25/2019202
css.types.gradient.repeating-conic-gradient.hue_interpolation_method Safari12/13/2022 Chrome Android3/7/202384
css.types.gradient.repeating-conic-gradient.interpolation_color_space Safari12/13/2022 Chrome Android3/7/202384
css.types.gradient.repeating-conic-gradient.single_color_stop 📋Safari3/31/2025 Chrome Android4/1/20251
css.types.gradient.repeating-linear-gradient 📋Chrome Android4/3/2013 Safari10/22/2013202
Firefox: Before Firefox 36, gradients weren't applied on the pre-multiplied color space, leading to shades of grey unexpectedly appearing when used with transparency.Firefox: Since Firefox 42, the prefixed version of gradients can be disabled by setting layout.css.prefixes.gradients to false.Firefox: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.Firefox for Android: Before Firefox for Android 36, gradients weren't applied on the pre-multiplied color space, leading to shades of grey unexpectedly appearing when used with transparency.Firefox for Android: Since Firefox for Android 42, the prefixed version of gradients can be disabled by setting layout.css.prefixes.gradients to false.Firefox for Android: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.Internet Explorer: Internet Explorer 5.5 through 9.0 supported gradients via a proprietary filter: -ms-filter: progid:DXImageTransform.Microsoft.Gradient().Opera: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.Opera: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.Opera Android: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.Opera Android: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.Safari: Safari 4 was supporting an experimental -webkit-gradient(linear,…) function. It is more limited than the later standard version: you cannot specify both a position and an angle like in repeating-linear-gradient(). This old outdated syntax is still supported for compatibility purposes.Safari: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.Safari on iOS: Safari on iOS 3.2 was supporting an experimental -webkit-gradient(linear,…) function. It is more limited than the later standard version: you cannot specify both a position and an angle like in repeating-linear-gradient(). This old outdated syntax is still supported for compatibility purposes.Safari on iOS: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.WebView on iOS: WebView on iOS 3.2 was supporting an experimental -webkit-gradient(linear,…) function. It is more limited than the later standard version: you cannot specify both a position and an angle like in repeating-linear-gradient(). This old outdated syntax is still supported for compatibility purposes.WebView on iOS: Considers <angle> to start to the right, instead of the top. I.e. it considered an angle of 0deg as a direction indicator pointing to the right.
css.types.gradient.repeating-linear-gradient.doubleposition Chrome Android12/4/2018 Safari3/25/2019111
css.types.gradient.repeating-linear-gradient.hue_interpolation_method Safari12/13/2022 Chrome Android3/7/202384
css.types.gradient.repeating-linear-gradient.interpolation_color_space Safari12/13/2022 Chrome Android3/7/202384
css.types.gradient.repeating-linear-gradient.interpolation_hints Safari10/22/2013 Chrome Android1/21/2015456
css.types.gradient.repeating-linear-gradient.single_color_stop 📋Safari3/31/2025 Chrome Android4/1/20251
css.types.gradient.repeating-linear-gradient.to Chrome Android4/3/2013 Safari10/22/2013202
css.types.gradient.repeating-linear-gradient.unitless_0_angle Chrome Android4/3/2013 Safari10/22/2013202
Firefox: Accepted only in -webkit-repeating-linear-gradient() and -moz-repeating-linear-gradient(), not repeating-linear-gradient().Firefox for Android: Accepted only in -webkit-repeating-linear-gradient() and -moz-repeating-linear-gradient(), not repeating-linear-gradient().
css.types.gradient.repeating-radial-gradient 📋Chrome Android4/3/2013 Safari10/22/2013202
Firefox: Before Firefox 36, gradients weren't applied on the pre-multiplied color space, leading to shades of grey unexpectedly appearing when used with transparency.Firefox: Since Firefox 42, the prefixed version of gradients can be disabled by setting layout.css.prefixes.gradients to false.Firefox for Android: Before Firefox 36, gradients weren't applied on the pre-multiplied color space, leading to shades of grey unexpectedly appearing when used with transparency.Firefox for Android: Since Firefox 42, the prefixed version of gradients can be disabled by setting layout.css.prefixes.gradients to false.Safari: Safari 4 was supporting an experimental -webkit-gradient(radial,…) function. This old outdated syntax is still supported for compatibility purposes.Safari on iOS: Safari on iOS 3.2 was supporting an experimental -webkit-gradient(radial,…) function. This old outdated syntax is still supported for compatibility purposes.WebView on iOS: WebView on iOS 3.2 was supporting an experimental -webkit-gradient(radial,…) function. This old outdated syntax is still supported for compatibility purposes.
css.types.gradient.repeating-radial-gradient.at Chrome Android4/3/2013 Safari10/22/2013202
Firefox: Before Firefox 36, gradients weren't applied on the pre-multiplied color space, leading to shades of grey unexpectedly appearing when used with transparency.Firefox: Since Firefox 42, the prefixed version of gradients can be disabled by setting layout.css.prefixes.gradients to false.Firefox for Android: Before Firefox for Android 36, gradients weren't applied on the pre-multiplied color space, leading to shades of grey unexpectedly appearing when used with transparency.Firefox for Android: Since Firefox for Android 42, the prefixed version of gradients can be disabled by setting layout.css.prefixes.gradients to false.
css.types.gradient.repeating-radial-gradient.doubleposition Chrome Android12/4/2018 Safari3/25/2019111
css.types.gradient.repeating-radial-gradient.hue_interpolation_method Safari12/13/2022 Chrome Android3/7/202384
css.types.gradient.repeating-radial-gradient.interpolation_color_space Safari12/13/2022 Chrome Android3/7/202384
css.types.gradient.repeating-radial-gradient.interpolation_hints Safari10/22/2013 Chrome Android1/21/2015456
css.types.gradient.repeating-radial-gradient.single_color_stop 📋Safari3/31/2025 Chrome Android4/1/20251
css.types.hypot 📋Safari3/14/2022 Chrome Android12/5/2023631
css.types.image 📋Safari6/23/2003 Chrome Android6/27/20123292
css.types.image.cross-fade 📋Chrome Android6/27/2012 Safari9/20/20161546
Chrome: Supports the original dual-image with percentage implementation only.Chrome: See bug 40470742 for supporting the unprefixed cross-fade() function.Chrome Android: Supports the original dual-image with percentage implementation only.Chrome Android: See bug 40470742 for supporting the unprefixed cross-fade() function.Edge: Supports the original dual-image with percentage implementation only.Edge: See bug 40470742 for supporting the unprefixed cross-fade() function.Quest Browser: Supports the original dual-image with percentage implementation only.Quest Browser: See bug 40470742 for supporting the unprefixed cross-fade() function.Opera: Supports the original dual-image with percentage implementation only.Opera: See bug 40470742 for supporting the unprefixed cross-fade() function.Opera Android: Supports the original dual-image with percentage implementation only.Opera Android: See bug 40470742 for supporting the unprefixed cross-fade() function.Safari: Supports the original dual-image with percentage implementation only.Safari: Supports the original dual-image with percentage implementation only.Safari on iOS: Support for the original dual-image with percentage implementation only.Safari on iOS: Supports the original dual-image with percentage implementation only.Samsung Internet: Supports the original dual-image with percentage implementation only.Samsung Internet: See bug 40470742 for supporting the unprefixed cross-fade() function.WebView Android: Supports the original dual-image with percentage implementation only.WebView Android: See bug 40470742 for supporting the unprefixed cross-fade() function.WebView on iOS: Support for the original dual-image with percentage implementation only.WebView on iOS: Supports the original dual-image with percentage implementation only.
css.types.image.image-set 📋Chrome Android5/2/2023 Safari9/18/2023139
Chrome: Support for url images only and x is the only supported resolution unit.Chrome Android: Support for url images only and x is the only supported resolution unit.Edge: Support for url images only and x is the only supported resolution unit.Firefox: The type() function is not supported as an argument to image-set().Firefox for Android: The type() function is not supported as an argument to image-set().Quest Browser: Support for url images only and x is the only supported resolution unit.Opera: Support for url images only and x is the only supported resolution unit.Opera Android: Support for url images only and x is the only supported resolution unit.Safari: The type() function is not supported as an argument to image-set().Safari: The type() function is not supported as an argument to image-set().Safari: Support for url images only and x is the only supported resolution unit.Safari: Support for url images only and x is the only supported resolution unit.Safari on iOS: The type() function is not supported as an argument to image-set().Safari on iOS: The type() function is not supported as an argument to image-set().Safari on iOS: Support for url images only and x is the only supported resolution unit.Safari on iOS: Support for url images only and x is the only supported resolution unit.Samsung Internet: Support for url images only and x is the only supported resolution unit.WebView Android: Support for url images only and x is the only supported resolution unit.WebView on iOS: The type() function is not supported as an argument to image-set().WebView on iOS: The type() function is not supported as an argument to image-set().WebView on iOS: Support for url images only and x is the only supported resolution unit.WebView on iOS: Support for url images only and x is the only supported resolution unit.
css.types.integer 📋Safari6/23/2003 Chrome Android6/27/20123292
css.types.length 📋Safari6/23/2003 Chrome Android6/27/20123292
css.types.length.Q Chrome Android12/5/2017 Safari3/24/2020840
css.types.length.cap Chrome Android10/10/2023 Safari12/11/202362
css.types.length.ch Chrome Android5/22/2013 Safari10/22/2013153
Firefox: From Firefox 1 to Firefox 3, ch was the width of the M character.Firefox: From Firefox 1 to Firefox 3, ch did not work with border-width and outline-width CSS properties.
css.types.length.container_query_length_units Chrome Android9/2/2022 Safari9/12/202210
css.types.length.em Safari6/23/2003 Chrome Android6/27/20123292
css.types.length.ex Safari6/23/2003 Chrome Android6/27/20123292
css.types.length.ic Safari3/14/2022 Chrome Android9/27/2022197
css.types.length.lh 📋Chrome Android1/10/2023 Safari3/27/202376
css.types.length.rcap 📋Chrome Android10/10/2023 Safari12/11/202362
css.types.length.rch 📋Chrome Android3/7/2023 Safari12/11/2023279
css.types.length.rem Safari6/7/2010 Chrome Android6/27/2012751
css.types.length.rex 📋Chrome Android3/7/2023 Safari12/11/2023279
css.types.length.ric 📋Chrome Android3/7/2023 Safari12/11/2023279
css.types.length.rlh 📋Chrome Android3/7/2023 Safari3/27/202320
css.types.length.vb Safari3/14/2022 Chrome Android11/29/2022260
css.types.length.vh Safari7/25/2012 Chrome Android2/27/2013217
Firefox: Starting with version 21, viewport-percentage lengths are invalid in @page.Firefox for Android: Starting with version 21, viewport-percentage lengths are invalid in @page.
css.types.length.vi Safari3/14/2022 Chrome Android11/29/2022260
css.types.length.viewport_percentage_units_dynamic Safari3/14/2022 Chrome Android11/29/2022260
css.types.length.viewport_percentage_units_large Safari3/14/2022 Chrome Android11/29/2022260
css.types.length.viewport_percentage_units_small Safari3/14/2022 Chrome Android11/29/2022260
css.types.length.vmax Chrome Android4/3/2013 Safari10/22/2013202
Firefox: Starting with version 21, viewport-percentage lengths are invalid in @page.Firefox for Android: Starting with version 21, viewport-percentage lengths are invalid in @page.
css.types.length.vmin Chrome Android4/3/2013 Safari10/22/2013202
Firefox: Starting with version 21, viewport-percentage lengths are invalid in @page.Firefox for Android: Starting with version 21, viewport-percentage lengths are invalid in @page.
css.types.length.vw Safari7/25/2012 Chrome Android2/27/2013217
Firefox: Starting with version 21, viewport-percentage lengths are invalid in @page.Firefox for Android: Starting with version 21, viewport-percentage lengths are invalid in @page.
css.types.length-percentage 📋Safari6/23/2003 Chrome Android6/27/20123292
css.types.line-style 📋Safari6/23/2003 Chrome Android6/27/20123292
css.types.log 📋Safari3/14/2022 Chrome Android12/5/2023631
css.types.max 📋Safari4/12/2018 Chrome Android12/17/2019614
css.types.min 📋Safari4/12/2018 Chrome Android12/17/2019614
css.types.mod 📋Safari3/14/2022 Chrome Android5/14/2024792
css.types.mod.mixed_type_parameters 📋Safari12/11/2023 Chrome Android5/14/2024155
css.types.number 📋Safari6/23/2003 Chrome Android6/27/20123292
css.types.number.scientific_notation Chrome Android5/27/2015 Safari3/27/2017670
css.types.overflow 📋Safari6/23/2003 Chrome Android6/27/20123292
Internet Explorer: From version 4 to 6, Internet Explorer enlarges an element with visible (default value) to fit the content inside it.
css.types.overflow.clip Chrome Android4/13/2021 Safari9/12/2022517
css.types.overflow.overlay Safari9/17/2018 Chrome Android5/30/20231716
Chrome: Before version 114, the overlay keyword caused non-standard behavior, allowing scrollbars to overlay content without taking up layout space. From version 114, the keyword aliases to the standard auto keyword. See bug 40444262.Chrome Android: Before version 114, the overlay keyword caused non-standard behavior, allowing scrollbars to overlay content without taking up layout space. From version 114, the keyword aliases to the standard auto keyword. See bug 40444262.Edge: Before version 114, the overlay keyword caused non-standard behavior, allowing scrollbars to overlay content without taking up layout space. From version 114, the keyword aliases to the standard auto keyword. See bug 40444262.Quest Browser: Before version false, the overlay keyword caused non-standard behavior, allowing scrollbars to overlay content without taking up layout space. From version false, the keyword aliases to the standard auto keyword. See bug 40444262.Opera: Before version 100, the overlay keyword caused non-standard behavior, allowing scrollbars to overlay content without taking up layout space. From version 100, the keyword aliases to the standard auto keyword. See bug 40444262.Safari: Before version 12, the overlay keyword caused non-standard behavior, allowing scrollbars to overlay content without taking up layout space. From version 12, the keyword aliases to the standard auto keyword. See bug 189811.Safari on iOS: Before version 12, the overlay keyword caused non-standard behavior, allowing scrollbars to overlay content without taking up layout space. From version 12, the keyword aliases to the standard auto keyword. See bug 189811.WebView Android: Before version 114, the overlay keyword caused non-standard behavior, allowing scrollbars to overlay content without taking up layout space. From version 114, the keyword aliases to the standard auto keyword. See bug 40444262.WebView on iOS: Before version 12, the overlay keyword caused non-standard behavior, allowing scrollbars to overlay content without taking up layout space. From version 12, the keyword aliases to the standard auto keyword. See bug 189811.
css.types.percentage 📋Safari6/23/2003 Chrome Android6/27/20123292
css.types.position 📋Safari6/23/2003 Chrome Android6/27/20123292
css.types.position.four_value_syntax Chrome Android2/27/2013 Safari10/22/2013237
css.types.position.keyword_value_syntax Safari6/23/2003 Chrome Android6/27/20123292
css.types.pow 📋Safari3/14/2022 Chrome Android12/5/2023631
css.types.progress 📋Chrome Android6/24/2025 Safari9/15/202583
css.types.ratio 📋Safari6/7/2010 Chrome Android6/27/2012751
css.types.ray 📋Safari9/12/2022 Chrome Android8/15/2023337
css.types.ray.position Chrome Android8/15/2023 Safari12/11/2023118
css.types.ray.size Chrome Android8/15/2023 Safari9/18/202334
css.types.rem 📋Safari3/14/2022 Chrome Android5/14/2024792
css.types.rem.mixed_type_parameters 📋Safari12/11/2023 Chrome Android5/14/2024155
css.types.resolution 📋Chrome Android8/21/2013 Safari9/12/20223309
Firefox: Supports <integer> values only.Firefox for Android: Supports <integer> values only.
css.types.resolution.dpcm Chrome Android8/21/2013 Safari9/12/20223309
css.types.resolution.dpi Chrome Android8/21/2013 Safari9/12/20223309
css.types.resolution.dppx Chrome Android8/21/2013 Safari9/12/20223309
css.types.resolution.x Chrome Android7/24/2018 Safari9/12/20221511
css.types.round 📋Safari3/14/2022 Chrome Android5/14/2024792
css.types.round.mixed_type_parameters 📋Safari12/11/2023 Chrome Android5/14/2024155
css.types.shape 📋Safari4/15/2005 Chrome Android6/27/20122630
css.types.shape.rect Safari4/15/2005 Chrome Android6/27/20122630
Internet Explorer: For Internet Explorer versions 5.5 through 7, the rect() function uses spaces (instead of commas) to separate parameters. For Internet Explorer 8 and later versions, only the standard comma-separated syntax is supported.
css.types.sibling-count 📋Chrome Android6/24/2025 Safari12/12/2025171
css.types.sibling-index 📋Chrome Android6/24/2025 Safari12/12/2025171
css.types.sign 📋Safari3/14/2022 Chrome Android6/24/20251198
css.types.sign.typed_division_produces_unitless_number 📋Chrome Android9/2/2025 Safari9/15/202513
css.types.sin 📋Safari3/14/2022 Chrome Android3/7/2023358
css.types.sqrt 📋Safari3/14/2022 Chrome Android12/5/2023631
css.types.string 📋Safari6/23/2003 Chrome Android6/27/20123292
css.types.string.unicode_escaped_characters Safari6/23/2003 Chrome Android6/27/20123292
css.types.tan 📋Safari3/14/2022 Chrome Android3/7/2023358
css.types.text-edge 📋Safari12/11/2024 Chrome Android2/4/202555
css.types.text-edge.alphabetic 📋Safari12/11/2024 Chrome Android2/4/202555
css.types.text-edge.cap 📋Safari12/11/2024 Chrome Android2/4/202555
css.types.text-edge.ex 📋Safari12/11/2024 Chrome Android2/4/202555
css.types.text-edge.text 📋Safari12/11/2024 Chrome Android2/4/202555
css.types.time 📋Safari3/18/2008 Chrome Android6/27/20121562
css.types.transform-function 📋Safari3/18/2008 Chrome Android6/27/20121562
Internet Explorer: Internet Explorer 9 supports 2D but not 3D transforms. In version 9, mixing 2D and 3D transform functions invalidates the entire property.
css.types.transform-function.matrix 📋Safari3/18/2008 Chrome Android6/27/20121562
Firefox: Before Firefox 16, the translation values of matrix() could be <length>s, in addition to the standard <number>.
css.types.transform-function.matrix3d 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 16, the translation values of matrix3d() could be <length>s, in addition to the standard <number>.
css.types.transform-function.perspective 📋Safari6/8/2009 Chrome Android6/27/20121115
css.types.transform-function.perspective.none 📋Chrome Android1/4/2022 Safari3/14/202269
css.types.transform-function.rotate 📋Safari3/18/2008 Chrome Android6/27/20121562
css.types.transform-function.rotate3d 📋Safari6/8/2009 Chrome Android6/27/20121115
css.types.transform-function.rotateX 📋Safari6/8/2009 Chrome Android6/27/20121115
css.types.transform-function.rotateY 📋Safari6/8/2009 Chrome Android6/27/20121115
css.types.transform-function.rotateZ 📋Safari6/8/2009 Chrome Android6/27/20121115
css.types.transform-function.scale 📋Safari3/18/2008 Chrome Android6/27/20121562
css.types.transform-function.scale3d 📋Safari6/8/2009 Chrome Android6/27/20121115
css.types.transform-function.scaleX 📋Safari3/18/2008 Chrome Android6/27/20121562
css.types.transform-function.scaleY 📋Safari3/18/2008 Chrome Android6/27/20121562
css.types.transform-function.scaleZ 📋Safari6/8/2009 Chrome Android6/27/20121115
css.types.transform-function.skew 📋Safari3/18/2008 Chrome Android6/27/20121562
Firefox: Firefox 14 removed experimental support for skew(), but it was reintroduced in Firefox 15.
css.types.transform-function.skewX 📋Safari3/18/2008 Chrome Android6/27/20121562
css.types.transform-function.skewY 📋Safari3/18/2008 Chrome Android6/27/20121562
css.types.transform-function.translate 📋Safari3/18/2008 Chrome Android6/27/20121562
css.types.transform-function.translate3d 📋Safari6/8/2009 Chrome Android6/27/20121115
css.types.transform-function.translateX 📋Safari3/18/2008 Chrome Android6/27/20121562
css.types.transform-function.translateY 📋Safari3/18/2008 Chrome Android6/27/20121562
css.types.transform-function.translateZ 📋Safari6/8/2009 Chrome Android6/27/20121115
css.types.url 📋Safari6/23/2003 Chrome Android6/27/20123292
css.types.var 📋Chrome Android3/9/2016 Safari3/21/201612

HTML Data

API First Browser Date Last Browser Date Days Notes
html.elements.a 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Starting with Firefox 41, <a> without href attribute is no longer classified as interactive content: clicking it inside <label> will activate labelled content (bug 1167816).Firefox for Android: Starting with Firefox for Android 41, <a> without href attribute is no longer classified as interactive content: clicking it inside <label> will activate labelled content (bug 1167816).
html.elements.a.charset 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.a.coords 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: You can no longer nest an <a> element inside a <map> element to create a hotspot region - coords and shape attribute support removed.Firefox for Android: You can no longer nest an <a> element inside a <map> element to create a hotspot region - coords and shape attribute support removed.
html.elements.a.download 📋Chrome Android6/27/2012 Safari3/27/20171734
Chrome: Starting in Chrome 65, cross-origin downloads are not supported on the <a> element.Chrome Android: Starting in Chrome Android 65, cross-origin downloads are not supported on the <a> element.Edge: Starting in Edge 79, cross-origin downloads are not supported on the <a> element.Edge: Until Edge 14 (build 14357), attempting to download data URIs caused Edge to crash (bug 7160092).Edge: Edge 17 or older didn't follow the attributes' value to determine filename (bug 7260192).Firefox for Android: The attribute's filename value only affects the suggested file name for the blob: and data: URI schemes. Other schemes ignore the suggested filename. See bug 1845642.Quest Browser: Starting in Quest Browser 5.0, cross-origin downloads are not supported on the <a> element.Opera: Starting in Opera 52, cross-origin downloads are not supported on the <a> element.Opera Android: Starting in Opera Android 47, cross-origin downloads are not supported on the <a> element.Samsung Internet: Starting in Samsung Internet 9.0, cross-origin downloads are not supported on the <a> element.WebView Android: Starting in WebView Android 65, cross-origin downloads are not supported on the <a> element.
html.elements.a.href 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.a.href.href_top Safari6/8/2009 Chrome Android6/27/20121115
html.elements.a.hreflang 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.a.implicit_noopener Safari3/25/2019 Chrome Android1/19/2021666
html.elements.a.name 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.a.ping 📋Chrome Android6/27/2012 Safari7/25/201228
Firefox: This property is exposed but has no effect if the browser.send_pings preference is not set to true. See bug 951104.Firefox for Android: This property is exposed but has no effect if the browser.send_pings preference is not set to true. See bug 951104.
html.elements.a.referrerpolicy 📋Chrome Android6/8/2016 Safari9/16/20201561
html.elements.a.rel 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.a.rel.noopener 📋Chrome Android3/9/2016 Safari3/27/2017383
Firefox: Before Firefox 63, rel="noopener" created windows with all features disabled by default. Starting with Firefox 63, these windows have the same features enabled by default as any other window.Firefox for Android: Before Firefox for Android 63, rel="noopener" created windows with all features disabled by default. Starting with Firefox for Android 63, these windows have the same features enabled by default as any other window.
html.elements.a.rel.noreferrer 📋Safari6/7/2010 Chrome Android6/27/2012751
Internet Explorer: Only supported in IE11 in later versions of Windows 10 (creators update). (Per caniuse.com.)
html.elements.a.rev 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.a.shape 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: You can no longer nest an <a> element inside a <map> element to create a hotspot region - coords and shape attribute support removed.Firefox for Android: You can no longer nest an <a> element inside a <map> element to create a hotspot region - coords and shape attribute support removed.
html.elements.a.target 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.a.text_fragments Chrome Android2/4/2020 Safari10/24/2022993
html.elements.a.type 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.abbr 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 4, this element implemented the HTMLSpanElement interface instead of the standard HTMLElement interface.
html.elements.acronym 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.address 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.area 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.area.alt 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.area.coords 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.area.download 📋Chrome Android10/19/2016 Safari3/27/2017159
html.elements.area.href 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.area.implicit_noopener Safari3/25/2019 Chrome Android1/19/2021666
html.elements.area.nohref 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.area.ping 📋Chrome Android6/27/2012 Safari7/25/201228
Firefox: This property is exposed but has no effect if the browser.send_pings preference is not set to true. See bug 951104.Firefox for Android: This property is exposed but has no effect if the browser.send_pings preference is not set to true. See bug 951104.
html.elements.area.referrerpolicy 📋Chrome Android6/8/2016 Safari9/16/20201561
html.elements.area.rel 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.area.rel.noopener 📋Chrome Android3/9/2016 Safari3/27/2017383
Firefox: Before Firefox 63, rel="noopener" created windows with all features disabled by default. Starting with Firefox 63, these windows have the same features enabled by default as any other window.Firefox for Android: Before Firefox for Android 63, rel="noopener" created windows with all features disabled by default. Starting with Firefox for Android 63, these windows have the same features enabled by default as any other window.
html.elements.area.rel.noreferrer 📋Safari6/7/2010 Chrome Android6/27/2012751
Internet Explorer: Only supported in IE11 in later versions of Windows 10 (creators update). (Per caniuse.com.)
html.elements.area.shape 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.area.target 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.article 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.aside 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.audio 📋Safari3/18/2008 Chrome Android6/27/20121562
Firefox: For Firefox to play audio, the server must serve the file using the correct MIME type.Firefox for Android: For Firefox for Android to play audio, the server must serve the file using the correct MIME type.
html.elements.audio.controls 📋Safari3/18/2008 Chrome Android6/27/20121562
html.elements.audio.crossorigin 📋Chrome Android2/26/2014 Safari9/20/2016937
Firefox: With crossorigin="use-credentials", cookies aren't sent during seek. See bug 1532722.Firefox for Android: With crossorigin="use-credentials", cookies aren't sent during seek. See bug 1532722.
html.elements.audio.disableremoteplayback 📋Chrome Android2/1/2017 Safari3/24/20201147
html.elements.audio.loop 📋Safari3/18/2008 Chrome Android6/27/20121562
html.elements.audio.muted 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.audio.preload 📋Safari3/18/2008 Chrome Android6/27/20121562
Chrome: Defaults to metadata in Chrome 64.Chrome Android: Defaults to metadata in Chrome Android 64.Quest Browser: Defaults to metadata in Quest Browser 5.0.Opera: Defaults to metadata in Opera 51.Opera Android: Defaults to metadata in Opera 51.Samsung Internet: Defaults to metadata in Samsung Internet 9.0.WebView Android: Defaults to metadata in Chrome 64.
html.elements.audio.src 📋Safari3/18/2008 Chrome Android6/27/20121562
html.elements.b 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Before Firefox 4, this element implemented the HTMLSpanElement interface instead of the standard HTMLElement interface.
html.elements.base 📋Safari10/26/2007 Chrome Android6/27/20121706
Internet Explorer: Before Internet Explorer 7, <base> can be positioned anywhere in the document and the nearest value of <base> is used.
html.elements.base.href 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.base.href.forbid_data_javascript_urls Chrome Android4/25/2017 Safari3/24/20201064
html.elements.base.href.relative_url Safari10/26/2007 Chrome Android6/27/20121706
html.elements.base.target 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.bdi 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.bdo 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.big 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.blockquote 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.blockquote.cite Safari6/8/2009 Chrome Android6/27/20121115
html.elements.body 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.body.alink Safari6/8/2009 Chrome Android6/27/20121115
html.elements.body.background Safari6/8/2009 Chrome Android6/27/20121115
html.elements.body.bgcolor Safari6/8/2009 Chrome Android6/27/20121115
html.elements.body.bottommargin Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 35, it was supported in Quirks Mode only.Firefox for Android: Before Firefox for Android 35, it was supported in Quirks Mode only.
html.elements.body.leftmargin Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 35, it was supported in Quirks Mode only.Firefox for Android: Before Firefox for Android 35, it was supported in Quirks Mode only.
html.elements.body.link Safari6/8/2009 Chrome Android6/27/20121115
html.elements.body.rightmargin Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 35, it was supported in Quirks Mode only.Firefox for Android: Before Firefox for Android 35, it was supported in Quirks Mode only.
html.elements.body.text Safari6/8/2009 Chrome Android6/27/20121115
html.elements.body.topmargin Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 35, it was supported in Quirks Mode only.Firefox for Android: Before Firefox for Android 35, it was supported in Quirks Mode only.
html.elements.body.vlink Safari6/8/2009 Chrome Android6/27/20121115
html.elements.br 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.br.clear Safari6/8/2009 Chrome Android6/27/20121115
html.elements.button 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.button.command 📋Chrome Android4/1/2025 Safari12/12/2025255
html.elements.button.command.request-close 📋Chrome Android8/5/2025 Safari12/12/2025129
html.elements.button.commandfor 📋Chrome Android4/1/2025 Safari12/12/2025255
html.elements.button.commandfor.implicit_anchor_reference 📋Chrome Android4/1/2025 Safari12/12/2025255
html.elements.button.disabled 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.button.form Safari7/20/2011 Chrome Android6/27/2012343
html.elements.button.formaction Safari7/20/2011 Chrome Android6/27/2012343
html.elements.button.formenctype Safari7/20/2011 Chrome Android6/27/2012343
html.elements.button.formmethod Safari7/20/2011 Chrome Android6/27/2012343
html.elements.button.formnovalidate Safari7/20/2011 Chrome Android6/27/2012343
html.elements.button.formtarget Safari7/20/2011 Chrome Android6/27/2012343
html.elements.button.name Safari6/8/2009 Chrome Android6/27/20121115
html.elements.button.popovertarget 📋Chrome Android5/30/2023 Safari9/18/2023111
html.elements.button.popovertarget.implicit_anchor_reference 📋Chrome Android2/4/2025 Safari9/15/2025223
html.elements.button.popovertargetaction 📋Chrome Android5/30/2023 Safari9/18/2023111
html.elements.button.type Safari6/8/2009 Chrome Android6/27/20121115
html.elements.button.value Safari6/8/2009 Chrome Android6/27/20121115
html.elements.canvas 📋Safari4/29/2005 Chrome Android6/27/20122616
Firefox: Before Firefox 5, the canvas width and height were signed integers instead of unsigned integers.Firefox: Before Firefox 6, a <canvas> element with a zero width or height would be rendered as if it had default dimensions.Firefox: Before Firefox 12, if JavaScript is disabled, the <canvas> element was being rendered instead of showing the fallback content as per the specification. Since then, the fallback content is rendered instead.Firefox for Android: Before Firefox for Android 5, the canvas width and height were signed integers instead of unsigned integers.Firefox for Android: Before Firefox for Android 6, a <canvas> element with a zero width or height would be rendered as if it had default dimensions.Firefox for Android: Before Firefox for Android 14, if JavaScript is disabled, the <canvas> element was being rendered instead of showing the fallback content as per the specification. Since then, the fallback content is rendered instead.Safari: Although early versions of Apple's Safari browser don't require the closing tag, the specification indicates that it is required, so you should be sure to include it for broadest compatibility. Before version 2, Safari will render the content of the fallback in addition to the canvas itself unless you use CSS tricks to mask it.
html.elements.canvas.height 📋Safari4/29/2005 Chrome Android6/27/20122616
Firefox: Before Firefox 5, the canvas width and height were signed integers instead of unsigned integers.Firefox: Before Firefox 6, a <canvas> element with a zero width or height would be rendered as if it had default dimensions.Firefox: Before Firefox 12, if JavaScript is disabled, the <canvas> element was being rendered instead of showing the fallback content as per the specification. Since then, the fallback content is rendered instead.Firefox for Android: Before Firefox for Android 5, the canvas width and height were signed integers instead of unsigned integers.Firefox for Android: Before Firefox for Android 6, a <canvas> element with a zero width or height would be rendered as if it had default dimensions.Firefox for Android: Before Firefox for Android 14, if JavaScript is disabled, the <canvas> element was being rendered instead of showing the fallback content as per the specification. Since then, the fallback content is rendered instead.Safari: Although early versions of Apple's Safari browser don't require the closing tag, the specification indicates that it is required, so you should be sure to include it for broadest compatibility. Before version 2, Safari will render the content of the fallback in addition to the canvas itself unless you use CSS tricks to mask it.
html.elements.canvas.width 📋Safari4/29/2005 Chrome Android6/27/20122616
Firefox: Before Firefox 5, the canvas width and height were signed integers instead of unsigned integers.Firefox: Before Firefox 6, a <canvas> element with a zero width or height would be rendered as if it had default dimensions.Firefox: Before Firefox 12, if JavaScript is disabled, the <canvas> element was being rendered instead of showing the fallback content as per the specification. Since then, the fallback content is rendered instead.Firefox for Android: Before Firefox for Android 5, the canvas width and height were signed integers instead of unsigned integers.Firefox for Android: Before Firefox for Android 6, a <canvas> element with a zero width or height would be rendered as if it had default dimensions.Firefox for Android: Before Firefox for Android 14, if JavaScript is disabled, the <canvas> element was being rendered instead of showing the fallback content as per the specification. Since then, the fallback content is rendered instead.Safari: Although early versions of Apple's Safari browser don't require the closing tag, the specification indicates that it is required, so you should be sure to include it for broadest compatibility. Before version 2, Safari will render the content of the fallback in addition to the canvas itself unless you use CSS tricks to mask it.
html.elements.caption 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.caption.align Safari6/8/2009 Chrome Android6/27/20121115
html.elements.center 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 4, this element implemented the HTMLSpanElement interface instead of the standard HTMLElement interface.Firefox for Android: Before Firefox for Android 4, this element implemented the HTMLSpanElement interface instead of the standard HTMLElement interface.
html.elements.cite 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.code 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.col 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.col.align 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.col.span 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.col.valign 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.col.width 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.colgroup 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.colgroup.align 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.colgroup.span 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.colgroup.valign 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.colgroup.width 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.data 📋Safari9/20/2016 Chrome Android10/24/2017399
html.elements.data.value 📋Safari9/20/2016 Chrome Android10/24/2017399
html.elements.datalist 📋Chrome Android2/26/2014 Safari3/25/20191853
Firefox for Android: The dropdown menu containing available options does not appear. See bug 1535985.
html.elements.datalist.input_type_color 📋Chrome Android2/26/2014 Safari3/25/20191853
html.elements.datalist.input_type_date 📋Chrome Android2/26/2014 Safari4/26/20212616
html.elements.datalist.input_type_email 📋Chrome Android2/26/2014 Safari3/25/20191853
html.elements.datalist.input_type_number 📋Chrome Android2/26/2014 Safari3/25/20191853
html.elements.datalist.input_type_range 📋Chrome Android3/16/2017 Safari3/25/2019739
html.elements.datalist.input_type_search 📋Chrome Android2/26/2014 Safari3/25/20191853
html.elements.datalist.input_type_tel 📋Chrome Android2/26/2014 Safari3/25/20191853
html.elements.datalist.input_type_text 📋Chrome Android2/26/2014 Safari3/25/20191853
html.elements.datalist.input_type_time 📋Chrome Android2/26/2014 Safari4/26/20212616
html.elements.datalist.input_type_url 📋Chrome Android2/26/2014 Safari3/25/20191853
html.elements.dd 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 4, this element was implemented using the HTMLSpanElement interface instead of HTMLElement.
html.elements.del 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.del.cite Safari10/26/2007 Chrome Android6/27/20121706
html.elements.del.datetime Safari10/26/2007 Chrome Android6/27/20121706
html.elements.details 📋Chrome Android6/27/2012 Safari7/25/201228
Firefox: Before Firefox 57, there was a bug meaning that <details> elements can't be made open by default using the open attribute if they have a CSS animation active on them.Firefox for Android: There is a bug meaning that <details> elements can't be made open by default using the open attribute if they have a CSS animation active on them.
html.elements.details.name Chrome Android12/5/2023 Safari12/11/20236
html.elements.details.open Chrome Android6/27/2012 Safari7/25/201228
html.elements.details.search_match_opens Chrome Android1/4/2022 Safari12/12/20251438
Firefox: The browser does not correctly scroll to the matching text. See bug 2006040.Firefox for Android: The browser does not correctly scroll to the matching text. See bug 2006040.Safari: The browser does not correctly scroll to the matching text. See bug 304174.Safari on iOS: The browser does not correctly scroll to the matching text. See bug 304174.WebView on iOS: The browser does not correctly scroll to the matching text. See bug 304174.
html.elements.dfn 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.dialog 📋Chrome Android9/3/2014 Safari3/14/20222749
html.elements.dialog.open Chrome Android9/3/2014 Safari3/14/20222749
html.elements.dir 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.dir.compact Safari6/8/2009 Chrome Android6/27/20121115
html.elements.div 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.div.align Safari10/26/2007 Chrome Android6/27/20121706
html.elements.dl 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.dt 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.em 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.embed 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.embed.align 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.embed.height 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.embed.name 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.embed.src 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.embed.type 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.embed.width 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.fieldset 📋Safari6/8/2009 Chrome Android6/27/20121115
Chrome: Before version 86, this element did not support flexbox and grid layouts within this element. See bug 41027853.Chrome Android: Before version 86, this element did not support flexbox and grid layouts within this element. See bug 41027853.Edge: Before version 86, this element did not support flexbox and grid layouts within this element. See bug 4511145.Quest Browser: Before version 12.0, this element did not support flexbox and grid layouts within this element. See bug 41027853.Samsung Internet: Before version 14.0, this element did not support flexbox and grid layouts within this element. See bug 41027853.WebView Android: Before version 86, this element did not support flexbox and grid layouts within this element. See bug 41027853.
html.elements.fieldset.disabled 📋Safari7/25/2012 Chrome Android2/27/2013217
Edge: Does not work with nested fieldsets. For example: <fieldset disabled><fieldset><!--Still enabled--></fieldset></fieldset>Internet Explorer: Not all form control descendants of a disabled fieldset are properly disabled in IE11; see IE bug 817488: input[type='file'] not disabled inside disabled fieldset and IE bug 962368: Can still edit input[type='text'] within fieldset[disabled].
html.elements.fieldset.form 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.fieldset.name 📋Safari7/25/2012 Chrome Android2/27/2013217
html.elements.figcaption 📋Safari7/20/2011 Chrome Android6/27/2012343
html.elements.figure 📋Safari7/20/2011 Chrome Android6/27/2012343
html.elements.font 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.font.color Safari6/8/2009 Chrome Android6/27/20121115
html.elements.font.face Safari6/8/2009 Chrome Android6/27/20121115
html.elements.font.size Safari6/8/2009 Chrome Android6/27/20121115
html.elements.footer 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.form 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.form.accept-charset 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.form.action 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.form.autocomplete 📋Chrome Android6/27/2012 Safari7/25/201228
Chrome: The Google Chrome UI for auto-complete request varies, depending on whether autocomplete is set to off on <input> elements as well as their form. Specifically, when a form has autocomplete set to off and its <input> element's autocomplete attribute is not set, then if the user asks for autofill suggestions for the <input> element, Chrome might display a message saying 'autocomplete has been disabled for this form.' On the other hand, if both the form and the input element have autocomplete set to off, the browser will not display that message. For this reason, you should set autocomplete to off for each <input> that has custom auto-completion.Chrome Android: The Chrome Android UI for auto-complete request varies, depending on whether autocomplete is set to off on <input> elements as well as their form. Specifically, when a form has autocomplete set to off and its <input> element's autocomplete attribute is not set, then if the user asks for autofill suggestions for the <input> element, Chrome Android might display a message saying 'autocomplete has been disabled for this form.' On the other hand, if both the form and the input element have autocomplete set to off, the browser will not display that message. For this reason, you should set autocomplete to off for each <input> that has custom auto-completion.Quest Browser: The Quest Browser UI for auto-complete request varies, depending on whether autocomplete is set to off on <input> elements as well as their form. Specifically, when a form has autocomplete set to off and its <input> element's autocomplete attribute is not set, then if the user asks for autofill suggestions for the <input> element, Quest Browser might display a message saying 'autocomplete has been disabled for this form.' On the other hand, if both the form and the input element have autocomplete set to off, the browser will not display that message. For this reason, you should set autocomplete to off for each <input> that has custom auto-completion.Opera: The Opera UI for auto-complete request varies, depending on whether autocomplete is set to off on <input> elements as well as their form. Specifically, when a form has autocomplete set to off and its <input> element's autocomplete attribute is not set, then if the user asks for autofill suggestions for the <input> element, Opera might display a message saying 'autocomplete has been disabled for this form.' On the other hand, if both the form and the input element have autocomplete set to off, the browser will not display that message. For this reason, you should set autocomplete to off for each <input> that has custom auto-completion.Opera Android: The Opera Android UI for auto-complete request varies, depending on whether autocomplete is set to off on <input> elements as well as their form. Specifically, when a form has autocomplete set to off and its <input> element's autocomplete attribute is not set, then if the user asks for autofill suggestions for the <input> element, Opera Android might display a message saying 'autocomplete has been disabled for this form.' On the other hand, if both the form and the input element have autocomplete set to off, the browser will not display that message. For this reason, you should set autocomplete to off for each <input> that has custom auto-completion.Samsung Internet: The Samsung Internet UI for auto-complete request varies, depending on whether autocomplete is set to off on <input> elements as well as their form. Specifically, when a form has autocomplete set to off and its <input> element's autocomplete attribute is not set, then if the user asks for autofill suggestions for the <input> element, Samsung Internet might display a message saying 'autocomplete has been disabled for this form.' On the other hand, if both the form and the input element have autocomplete set to off, the browser will not display that message. For this reason, you should set autocomplete to off for each <input> that has custom auto-completion.WebView Android: The WebView Android UI for auto-complete request varies, depending on whether autocomplete is set to off on <input> elements as well as their form. Specifically, when a form has autocomplete set to off and its <input> element's autocomplete attribute is not set, then if the user asks for autofill suggestions for the <input> element, WebView Android might display a message saying 'autocomplete has been disabled for this form.' On the other hand, if both the form and the input element have autocomplete set to off, the browser will not display that message. For this reason, you should set autocomplete to off for each <input> that has custom auto-completion.
html.elements.form.autocomplete.one-time-code Safari9/17/2018 Chrome Android7/27/2020679
html.elements.form.autocomplete.webauthn 📋Chrome Android11/29/2022 Safari3/27/2023118
html.elements.form.enctype 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.form.method 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.form.name 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.form.novalidate 📋Chrome Android6/27/2012 Safari3/27/20171734
html.elements.form.rel 📋Safari3/14/2022 Chrome Android11/29/2022260
html.elements.form.target 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.frame 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.frame.frameborder Safari10/26/2007 Chrome Android6/27/20121706
html.elements.frame.marginheight Safari10/26/2007 Chrome Android6/27/20121706
html.elements.frame.marginwidth Safari10/26/2007 Chrome Android6/27/20121706
html.elements.frame.name Safari10/26/2007 Chrome Android6/27/20121706
html.elements.frame.noresize Safari10/26/2007 Chrome Android6/27/20121706
html.elements.frame.scrolling Safari10/26/2007 Chrome Android6/27/20121706
html.elements.frame.src Safari10/26/2007 Chrome Android6/27/20121706
html.elements.frameset 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.frameset.cols Safari10/26/2007 Chrome Android6/27/20121706
html.elements.frameset.rows Safari10/26/2007 Chrome Android6/27/20121706
html.elements.h1 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.h2 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.h3 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.h4 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.h5 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.h6 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.head 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.header 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.hgroup 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.hr 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.hr.align Safari6/8/2009 Chrome Android6/27/20121115
html.elements.hr.color Chrome Android2/26/2014 Safari3/27/20171125
html.elements.hr.noshade Safari6/8/2009 Chrome Android6/27/20121115
html.elements.hr.size Safari6/8/2009 Chrome Android6/27/20121115
html.elements.hr.width Safari6/8/2009 Chrome Android6/27/20121115
html.elements.html 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.html.version 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.html.xmlns Safari6/23/2003 Chrome Android6/27/20123292
html.elements.i 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.iframe 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: The resize CSS property doesn't have any effect on this element due to bug 680823.Firefox for Android: The resize CSS property doesn't have any effect on this element due to bug 680823.Safari: Safari has a bug that prevents iframes from loading if the iframe element was hidden when added to the page. iframeElement.src = iframeElement.src should cause it to load the iframe.Safari on iOS: Safari on iOS has a bug that prevents iframes from loading if the iframe element was hidden when added to the page. iframeElement.src = iframeElement.src should cause it to load the iframe.WebView on iOS: WebView on iOS has a bug that prevents iframes from loading if the iframe element was hidden when added to the page. iframeElement.src = iframeElement.src should cause it to load the iframe.
html.elements.iframe.align 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.iframe.allow 📋Chrome Android8/1/2017 Safari4/12/2018254
html.elements.iframe.allow.camera 📋Chrome Android1/23/2018 Safari4/12/201879
html.elements.iframe.allow.display-capture 📋Safari9/19/2019 Chrome Android9/21/2021733
html.elements.iframe.allow.microphone 📋Chrome Android1/23/2018 Safari4/12/201879
html.elements.iframe.allow.screen-wake-lock 📋Chrome Android7/27/2020 Safari3/27/2023973
html.elements.iframe.allowfullscreen 📋Chrome Android10/8/2014 Safari3/27/2017901
Safari on iOS: Only available on iPad, not on iPhone.Safari on iOS: Shows an overlay button which can not be disabled. Swiping down exits fullscreen mode, making it unsuitable for some use cases like games.WebView on iOS: Only available on iPad, not on iPhone.WebView on iOS: Shows an overlay button which can not be disabled. Swiping down exits fullscreen mode, making it unsuitable for some use cases like games.
html.elements.iframe.cross-origin-top-navigation-by-user-activation Chrome Android7/24/2018 Safari9/19/2019422
Chrome: If a top-navigation is blocked, users are prompted for permission to redirect, and an error is reported in the developer console.Chrome Android: If a top-navigation is blocked, users are prompted for permission to redirect, and an error is reported in the developer console.Edge: If a top-navigation is blocked, users are prompted for permission to redirect, and an error is reported in the developer console.Firefox: If a top-navigation is blocked, users are prompted for permission to redirect, and an error is reported in the developer console.Firefox for Android: If a top-navigation is blocked, users are prompted for permission to redirect, and an error is reported in the developer console.Quest Browser: If a top-navigation is blocked, users are prompted for permission to redirect, and an error is reported in the developer console.Opera: If a top-navigation is blocked, users are prompted for permission to redirect, and an error is reported in the developer console.Opera Android: If a top-navigation is blocked, users are prompted for permission to redirect, and an error is reported in the developer console.Safari: If a top-navigation is blocked, no redirect occurs, and an error is reported in the developer console.Safari on iOS: If a top-navigation is blocked, no redirect occurs, and an error is reported in the developer console.Samsung Internet: If a top-navigation is blocked, users are prompted for permission to redirect, and an error is reported in the developer console.WebView Android: If a top-navigation is blocked, users are prompted for permission to redirect, and an error is reported in the developer console.WebView on iOS: If a top-navigation is blocked, no redirect occurs, and an error is reported in the developer console.
html.elements.iframe.frameborder 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.iframe.height 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.iframe.loading 📋Chrome Android9/10/2019 Safari3/27/20231294
html.elements.iframe.longdesc 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.iframe.marginheight 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.iframe.marginwidth 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.iframe.name 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.iframe.referrerpolicy 📋Chrome Android6/8/2016 Safari9/16/20201561
html.elements.iframe.sandbox 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.iframe.sandbox.allow-downloads 📋Chrome Android5/19/2020 Safari9/18/20231217
html.elements.iframe.sandbox.allow-forms 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.iframe.sandbox.allow-modals 📋Chrome Android10/14/2015 Safari4/12/2018911
html.elements.iframe.sandbox.allow-popups 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.iframe.sandbox.allow-popups-to-escape-sandbox 📋Chrome Android10/14/2015 Safari4/12/2018911
html.elements.iframe.sandbox.allow-same-origin 📋Safari6/7/2010 Chrome Android6/27/2012751
Chrome: Chrome 70 and earlier block script execution without allow-scripts, even if allow-same-origin is set. For example, any bound handlers for click events of nodes inside an iframe throw an error for blocked script execution.Chrome Android: Chrome Android 70 and earlier block script execution without allow-scripts, even if allow-same-origin is set. For example, any bound handlers for click events of nodes inside an iframe throw an error for blocked script execution.Edge: Edge 79 and earlier block script execution without allow-scripts, even if allow-same-origin is set. For example, any bound handlers for click events of nodes inside an iframe throw an error for blocked script execution.Quest Browser: Quest Browser 6.0 and earlier block script execution without allow-scripts, even if allow-same-origin is set. For example, any bound handlers for click events of nodes inside an iframe throw an error for blocked script execution.Opera: Opera 57 and earlier block script execution without allow-scripts, even if allow-same-origin is set. For example, any bound handlers for click events of nodes inside an iframe throw an error for blocked script execution.Opera Android: Opera Android 49 and earlier block script execution without allow-scripts, even if allow-same-origin is set. For example, any bound handlers for click events of nodes inside an iframe throw an error for blocked script execution.Safari: Safari blocks script execution without allow-scripts even if allow-same-origin is set. For example, any bound handlers for click events of nodes inside an iframe throw an error for blocked script execution.Safari on iOS: Safari blocks script execution without allow-scripts even if allow-same-origin is set. For example, any bound handlers for click events of nodes inside an iframe throw an error for blocked script execution.Samsung Internet: Samsung Internet 10.0 and earlier block script execution without allow-scripts, even if allow-same-origin is set. For example, any bound handlers for click events of nodes inside an iframe throw an error for blocked script execution.WebView Android: WebView Android 70 and earlier block script execution without allow-scripts, even if allow-same-origin is set. For example, any bound handlers for click events of nodes inside an iframe throw an error for blocked script execution.WebView on iOS: Safari blocks script execution without allow-scripts even if allow-same-origin is set. For example, any bound handlers for click events of nodes inside an iframe throw an error for blocked script execution.
html.elements.iframe.sandbox.allow-scripts 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.iframe.sandbox.allow-storage-access-by-user-activation Safari4/12/2018 Chrome Android5/2/20231846
html.elements.iframe.sandbox.allow-top-navigation 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.iframe.sandbox.allow-top-navigation-by-user-activation 📋Chrome Android4/25/2017 Safari4/12/2018352
html.elements.iframe.scrolling 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.iframe.src 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.iframe.srcdoc 📋Safari7/25/2012 Chrome Android2/27/2013217
html.elements.iframe.width 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.img 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.img.align 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.img.alt 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.img.aspect_ratio_computed_from_attributes Chrome Android12/17/2019 Safari9/20/2021643
Safari: Safari doesn't preserve space for images without a valid src, which may disrupt layouts that rely on lazy loading (see bug 224197).Safari on iOS: Safari on iOS doesn't preserve space for images without a valid src, which may disrupt layouts that rely on lazy loading (see bug 224197).WebView on iOS: WebView on iOS doesn't preserve space for images without a valid src, which may disrupt layouts that rely on lazy loading (see bug 224197).
html.elements.img.border 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.img.crossorigin 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.img.decoding 📋Chrome Android3/6/2018 Safari4/12/201837
html.elements.img.fetchpriority 📋Chrome Android4/26/2022 Safari12/11/2023594
html.elements.img.height 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.img.hspace 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.img.ismap 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.img.loading 📋Chrome Android9/10/2019 Safari3/14/2022916
html.elements.img.longdesc 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.img.name 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.img.referrerpolicy 📋Chrome Android6/8/2016 Safari9/16/20201561
html.elements.img.sizes 📋Chrome Android10/8/2014 Safari3/21/2016530
html.elements.img.src 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.img.srcset 📋Chrome Android4/2/2014 Safari10/16/2014197
html.elements.img.usemap 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.img.usemap.case_sensitive Chrome Android4/25/2017 Safari9/19/2017147
html.elements.img.vspace 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.img.width 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.input 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Before Firefox 89, manipulating the content of <input> elements using Document.execCommand() commands requires workarounds (see bug 1220696).Firefox for Android: Before Firefox for Android 89, manipulating the content of <input> elements using Document.execCommand() commands requires workarounds (see bug 1220696).
html.elements.input.accept 📋Safari6/23/2003 Chrome Android6/27/20123292
Safari on iOS: Does not support audio/* MIME type. See bug 242110.WebView on iOS: Does not support audio/* MIME type. See bug 242110.
html.elements.input.align 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.alt 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.autocomplete 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.input.checked 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.dirname 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.input.disabled 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.form 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.formaction 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.input.formenctype 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.input.formmethod 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.input.formnovalidate 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.input.formtarget 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.input.max 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.input.maxlength 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.min 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.input.minlength 📋Chrome Android1/21/2015 Safari3/27/2017796
html.elements.input.multiple 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.input.name 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.pattern 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.input.placeholder 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.input.popovertarget 📋Chrome Android5/30/2023 Safari9/18/2023111
html.elements.input.popovertarget.implicit_anchor_reference 📋Chrome Android2/4/2025 Safari9/15/2025223
html.elements.input.popovertargetaction 📋Chrome Android5/30/2023 Safari9/18/2023111
html.elements.input.readonly 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.required 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.input.size 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.src 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.step 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.input.type_button 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.type_checkbox 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.type_color 📋Chrome Android2/27/2013 Safari3/25/20192217
Firefox for Android: Firefox for Android doesn't allow the user to choose a custom color, only one of the predefined ones.
html.elements.input.type_color.list 📋Chrome Android2/26/2014 Safari3/25/20191853
html.elements.input.type_date 📋Chrome Android2/27/2013 Safari4/26/20212980
html.elements.input.type_date.disables_invalid_values_in_picker_ui Chrome Android2/27/2013 Safari4/26/20212980
html.elements.input.type_date.list 📋Chrome Android2/26/2014 Safari4/26/20212616
html.elements.input.type_datetime-local 📋Chrome Android2/27/2013 Safari4/26/20212980
Firefox: Only displays a date picker without a time picker, see bug 1726107 and bug 1726108.Firefox for Android: Only displays a date picker without a time picker, see bug 1726107 and bug 1726108.Safari: Safari only displays a date picker and does not display a time picker.
html.elements.input.type_email 📋Safari6/7/2010 Chrome Android6/27/2012751
Safari on iOS: Doesn't do validation, but instead offers a custom 'email' keyboard, which is designed to make entering email addresses easier.Safari on iOS: The custom 'email' keyboard does not provide a comma key, so users cannot enter multiple email addresses.Safari on iOS: Automatically applies a default style of opacity: 0.4 to disable textual <input> elements, including those of type 'email'. Other major browsers don't currently share this particular default style.WebView on iOS: Doesn't do validation, but instead offers a custom 'email' keyboard, which is designed to make entering email addresses easier.WebView on iOS: The custom 'email' keyboard does not provide a comma key, so users cannot enter multiple email addresses.WebView on iOS: Automatically applies a default style of opacity: 0.4 to disable textual <input> elements, including those of type 'email'. Other major browsers don't currently share this particular default style.
html.elements.input.type_email.list 📋Chrome Android2/26/2014 Safari3/25/20191853
html.elements.input.type_file 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: You can set as well as get the value of HTMLInputElement.files in all modern browsers; this was most recently added to Firefox, in version 57 (see bug 1384030).
html.elements.input.type_hidden 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.type_image 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.type_number 📋Safari7/20/2011 Chrome Android6/27/2012343
Chrome: Prevents users from typing non-numeric content.Chrome Android: Prevents users from typing non-numeric content.Firefox: Allows users to type non-numeric content, with the value reflecting an empty string.Firefox for Android: Allows users to type non-numeric content, with the value reflecting an empty string.Quest Browser: Prevents users from typing non-numeric content.Opera: Prevents users from typing non-numeric content.Opera Android: Prevents users from typing non-numeric content.Safari: Allows users to type non-numeric content, with the value reflecting an empty string.Safari on iOS: Allows users to type non-numeric content, with the value reflecting an empty string.Samsung Internet: Prevents users from typing non-numeric content.WebView Android: Prevents users from typing non-numeric content.WebView on iOS: Allows users to type non-numeric content, with the value reflecting an empty string.
html.elements.input.type_number.list 📋Chrome Android2/26/2014 Safari3/25/20191853
html.elements.input.type_password 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.type_radio 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.type_range 📋Safari3/18/2008 Chrome Android3/16/20173285
WebView Android: Pre-Chromium Android WebView recognizes the range type, but doesn't implement a range-specific control.
html.elements.input.type_range.list 📋Chrome Android3/16/2017 Safari3/25/2019739
html.elements.input.type_range.tick_marks Chrome Android5/31/2018 Safari3/25/2019298
html.elements.input.type_range.vertical_orientation Safari5/18/2023 Chrome Android4/16/2024334
Chrome: Vertical orientation available via the writing-mode property (see Creating vertical controls).Chrome: Vertical orientation available by setting the non-standard -webkit-appearance: slider-vertical style on the input element. You shouldn't use this, since it's proprietary, unless you include appropriate fallbacks for users of other browsers.Chrome Android: Vertical orientation available via the writing-mode property (see Creating vertical controls).Chrome Android: Vertical orientation available by setting the non-standard -webkit-appearance: slider-vertical style on the input element. You shouldn't use this, since it's proprietary, unless you include appropriate fallbacks for users of other browsers.Edge: Vertical orientation available by setting the writing-mode: bt-lr style on the input element.Firefox: Vertical orientation available via the writing-mode property (see Creating vertical controls).Firefox: Supported using the non-standard orient="vertical" attribute.Firefox for Android: Vertical orientation available via the writing-mode property (see Creating vertical controls).Firefox for Android: Supported using the non-standard orient="vertical" attribute.Internet Explorer: Vertical orientation available by setting the writing-mode: bt-lr style on the input element.Quest Browser: Vertical orientation available by setting the non-standard -webkit-appearance: slider-vertical style on the input element. You shouldn't use this, since it's proprietary, unless you include appropriate fallbacks for users of other browsers.Opera: Vertical orientation available via the writing-mode property (see Creating vertical controls).Opera: Vertical orientation available by setting the non-standard -webkit-appearance: slider-vertical style on the input element. You shouldn't use this, since it's proprietary, unless you include appropriate fallbacks for users of other browsers.Opera Android: Vertical orientation available via the writing-mode property (see Creating vertical controls).Opera Android: Vertical orientation available by setting the non-standard -webkit-appearance: slider-vertical style on the input element. You shouldn't use this, since it's proprietary, unless you include appropriate fallbacks for users of other browsers.Safari: Vertical orientation available via the writing-mode property (see Creating vertical controls).Safari: Vertical orientation available by setting the non-standard -webkit-appearance: slider-vertical style on the input element. You shouldn't use this, since it's proprietary, unless you include appropriate fallbacks for users of other browsers.Safari on iOS: Vertical orientation available via the writing-mode property (see Creating vertical controls).Safari on iOS: Vertical orientation available by setting the non-standard -webkit-appearance: slider-vertical style on the input element. You shouldn't use this, since it's proprietary, unless you include appropriate fallbacks for users of other browsers.Samsung Internet: Vertical orientation available via the writing-mode property (see Creating vertical controls).Samsung Internet: Vertical orientation available by setting the non-standard -webkit-appearance: slider-vertical style on the input element. You shouldn't use this, since it's proprietary, unless you include appropriate fallbacks for users of other browsers.WebView Android: Vertical orientation available via the writing-mode property (see Creating vertical controls).WebView Android: Vertical orientation available by setting the non-standard -webkit-appearance: slider-vertical style on the input element. You shouldn't use this, since it's proprietary, unless you include appropriate fallbacks for users of other browsers.WebView on iOS: Vertical orientation available via the writing-mode property (see Creating vertical controls).WebView on iOS: Vertical orientation available by setting the non-standard -webkit-appearance: slider-vertical style on the input element. You shouldn't use this, since it's proprietary, unless you include appropriate fallbacks for users of other browsers.
html.elements.input.type_reset 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Unlike other browsers, Firefox by default persists the dynamic disabled state of a <button> across page loads. Use the autocomplete attribute to control this feature.Firefox for Android: Unlike other browsers, Firefox for Android by default persists the dynamic disabled state of a <button> across page loads. Use the autocomplete attribute to control this feature.
html.elements.input.type_search 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.input.type_search.list 📋Chrome Android2/26/2014 Safari3/25/20191853
html.elements.input.type_submit 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Unlike other browsers, Firefox by default persists the dynamic disabled state of a <button> across page loads. Use the autocomplete attribute to control this feature.Firefox for Android: Unlike other browsers, Firefox for Android by default persists the dynamic disabled state of a <button> across page loads. Use the autocomplete attribute to control this feature.
html.elements.input.type_tel 📋Safari6/8/2009 Chrome Android6/27/20121115
Chrome: The field type doesn't demonstrate any special behavior.Safari: The field type doesn't demonstrate any special behavior.
html.elements.input.type_tel.list 📋Chrome Android2/26/2014 Safari3/25/20191853
html.elements.input.type_text 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.type_text.list 📋Chrome Android2/26/2014 Safari3/25/20191853
html.elements.input.type_time 📋Chrome Android2/27/2013 Safari4/26/20212980
html.elements.input.type_time.list 📋Chrome Android2/26/2014 Safari4/26/20212616
html.elements.input.type_url 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.type_url.list 📋Chrome Android2/26/2014 Safari3/25/20191853
html.elements.input.usemap 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.input.webkitdirectory Safari4/12/2018 Chrome Android1/14/20252469
Chrome Android: In Chrome for Android 131, choosing a directory crashes the browser (see bug 376834374).Chrome Android: Before version 131, users cannot choose a directory, only individual files (see bug 40248532.Safari on iOS: Before version 18.4, the attribute can be set but users cannot choose a directory, only individual files (see bug 271705).WebView Android: In Chrome for Android 131, choosing a directory crashes the browser (see bug 376834374).WebView Android: Before version 131, users cannot choose a directory, only individual files (see bug 40248532.WebView on iOS: Before version 18.4, the attribute can be set but users cannot choose a directory, only individual files (see bug 271705).
html.elements.ins 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.ins.cite Safari10/26/2007 Chrome Android6/27/20121706
html.elements.ins.datetime Safari10/26/2007 Chrome Android6/27/20121706
html.elements.kbd 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 4, creating a <kbd> element incorrectly resulted in an HTMLSpanElement object, instead of the expected HTMLElement.
html.elements.label 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.label.for 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.legend 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.legend.align Safari6/8/2009 Chrome Android6/27/20121115
html.elements.li 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.li.type 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.li.value 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.link 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.link.as 📋Chrome Android4/13/2016 Safari9/20/2016160
html.elements.link.blocking 📋Chrome Android9/2/2022 Safari12/11/2024831
html.elements.link.charset 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.link.crossorigin 📋Chrome Android4/2/2014 Safari9/20/2016902
Firefox: Before Firefox 83, crossorigin is not supported for rel="icon".Firefox for Android: Before Firefox for Android 83, crossorigin is not supported for rel="icon".
html.elements.link.disabled 📋Safari6/8/2009 Chrome Android6/27/20121115
Chrome: In Chrome and other Blink-based browsers, adding the disabled attribute using JavaScript does not remove the stylesheet from document.styleSheets.Chrome Android: In Chrome Android and other Blink-based browsers, adding the disabled attribute using JavaScript does not remove the stylesheet from document.styleSheets.Edge: Since Edge 79, adding the disabled attribute using JavaScript does not remove the stylesheet from document.styleSheets.Quest Browser: In Quest Browser and other Blink-based browsers, adding the disabled attribute using JavaScript does not remove the stylesheet from document.styleSheets.Opera: In Chrome and other Blink-based browsers, adding the disabled attribute using JavaScript does not remove the stylesheet from document.styleSheets.Opera Android: In Chrome and other Blink-based browsers, adding the disabled attribute using JavaScript does not remove the stylesheet from document.styleSheets.Samsung Internet: In Samsung Internet and other Blink-based browsers, adding the disabled attribute using JavaScript does not remove the stylesheet from document.styleSheets.WebView Android: In WebView Android and other Blink-based browsers, adding the disabled attribute using JavaScript does not remove the stylesheet from document.styleSheets.
html.elements.link.fetchpriority 📋Chrome Android4/26/2022 Safari12/11/2023594
html.elements.link.href 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.link.hreflang 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.link.imagesizes 📋Chrome Android3/12/2019 Safari12/11/20231735
html.elements.link.imagesrcset 📋Chrome Android3/12/2019 Safari12/11/20231735
html.elements.link.integrity 📋Chrome Android9/1/2015 Safari4/12/2018954
html.elements.link.media 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.link.referrerpolicy 📋Chrome Android6/8/2016 Safari9/16/20201561
html.elements.link.rel 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.link.rel.dns-prefetch 📋Safari6/7/2010 Chrome Android10/14/20151955
Firefox: Only HTTP pages were supported.Firefox for Android: Only HTTP pages were supported.
html.elements.link.rel.icon Safari3/18/2008 Chrome Android6/27/20121562
Chrome: If both ICO and PNG are available, will use ICO over PNG if ICO has better matching sizes set. (Per caniuse.com.).Edge: In version 79 and later (Blink-based Edge), if both ICO and PNG are available, will use ICO over PNG if ICO has better matching sizes set. (Per caniuse.com.)Firefox: Before Firefox 83, the crossorigin attribute is not supported for rel="icon".Firefox: The media attribute is not supported for rel="icon", see bug 1603885.Opera: In version 15 and later (Blink-based Opera), if both ICO and PNG are available, will use ICO over PNG if ICO has better matching sizes set. (Per caniuse.com.)Safari: If both ICO and PNG are available, will ALWAYS use ICO file, regardless of sizes set. (Per caniuse.com.)Safari on iOS: Does not use favicons at all (but may have alternative for bookmarks, etc.). (Per caniuse.com.)WebView on iOS: Does not use favicons at all (but may have alternative for bookmarks, etc.). (Per caniuse.com.)
html.elements.link.rel.manifest 📋Chrome Android11/12/2014 Safari9/18/20233232
html.elements.link.rel.modulepreload 📋Chrome Android4/17/2018 Safari9/18/20231980
html.elements.link.rel.modulepreload.as-json 📋Safari12/12/2025 Chrome Android4/7/2026116
html.elements.link.rel.modulepreload.as-script 📋Chrome Android4/17/2018 Safari9/18/20231980
html.elements.link.rel.preconnect 📋Chrome Android10/14/2015 Safari4/12/2018911
Firefox: Before Firefox 41, it doesn't obey the crossorigin attribute.Firefox for Android: Before Firefox for Android 41, it doesn't obey the crossorigin attribute.
html.elements.link.rel.prefetch 📋Chrome Android6/27/2012 Safari3/24/20202827
Chrome: Requires secure contextChrome Android: Requires secure contextEdge: Requires secure contextFirefox: Requires secure contextFirefox for Android: Requires secure contextQuest Browser: Requires secure contextOpera: Requires secure contextOpera Android: Requires secure contextSamsung Internet: Requires secure contextWebView Android: Requires secure context
html.elements.link.rel.preload 📋Chrome Android4/13/2016 Safari4/12/2018729
Firefox: Disabled due to various web compatibility issues (e.g. bug 1405761).Firefox for Android: Disabled due to various web compatibility issues (e.g. bug 1405761).
html.elements.link.rel.preload.as-fetch Chrome Android4/13/2016 Safari4/12/2018729
Firefox: Disabled due to various web compatibility issues (e.g. bug 1405761).Firefox for Android: Disabled due to various web compatibility issues (e.g. bug 1405761).
html.elements.link.rel.preload.as-font Chrome Android4/13/2016 Safari4/12/2018729
Firefox: Disabled due to various web compatibility issues (e.g. bug 1405761).Firefox for Android: Disabled due to various web compatibility issues (e.g. bug 1405761).
html.elements.link.rel.preload.as-image Chrome Android4/13/2016 Safari4/12/2018729
Firefox: Disabled due to various web compatibility issues (e.g. bug 1405761).Firefox for Android: Disabled due to various web compatibility issues (e.g. bug 1405761).
html.elements.link.rel.preload.as-script Chrome Android4/13/2016 Safari4/12/2018729
Firefox: Disabled due to various web compatibility issues (e.g. bug 1405761).Firefox for Android: Disabled due to various web compatibility issues (e.g. bug 1405761).
html.elements.link.rel.preload.as-style Chrome Android4/13/2016 Safari4/12/2018729
Firefox: Disabled due to various web compatibility issues (e.g. bug 1405761).Firefox for Android: Disabled due to various web compatibility issues (e.g. bug 1405761).
html.elements.link.rel.preload.as-track Chrome Android4/13/2016 Safari4/12/2018729
html.elements.link.rev 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.link.sizes 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.link.target 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.link.type 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.main 📋Chrome Android4/3/2013 Safari10/22/2013202
html.elements.map 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Before Firefox 5, in Quirks Mode, empty maps were no longer skipped over in favor of non-empty ones when matching.Firefox: Before Firefox 17, the default styling of the <map> HTML element was display: block;. This is now display: inline; and matches the behavior of the other browsers. It was already the case in Quirks Mode.
html.elements.map.name Safari6/23/2003 Chrome Android6/27/20123292
html.elements.mark 📋Safari7/20/2011 Chrome Android6/27/2012343
html.elements.marquee 📋Safari2/2/2004 Chrome Android6/27/20123068
Firefox: Implements the HTMLDivElement interface.Firefox for Android: Implements the HTMLDivElement interface.
html.elements.marquee.behavior Safari2/2/2004 Chrome Android6/27/20123068
html.elements.marquee.bgcolor Safari2/2/2004 Chrome Android6/27/20123068
html.elements.marquee.direction Safari2/2/2004 Chrome Android6/27/20123068
html.elements.marquee.height Safari2/2/2004 Chrome Android6/27/20123068
html.elements.marquee.hspace Safari2/2/2004 Chrome Android6/27/20123068
html.elements.marquee.loop Safari2/2/2004 Chrome Android6/27/20123068
html.elements.marquee.scrollamount Safari2/2/2004 Chrome Android6/27/20123068
html.elements.marquee.scrolldelay Safari2/2/2004 Chrome Android6/27/20123068
html.elements.marquee.truespeed Safari2/2/2004 Chrome Android6/27/20123068
html.elements.marquee.vspace Safari2/2/2004 Chrome Android6/27/20123068
html.elements.marquee.width Safari2/2/2004 Chrome Android6/27/20123068
html.elements.menu 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.meta 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.meta.charset 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.meta.content 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.meta.http-equiv 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.meta.http-equiv.content-language 📋Safari3/27/2017 Chrome Android6/6/201771
html.elements.meta.http-equiv.content-security-policy 📋Safari3/27/2017 Chrome Android6/6/201771
html.elements.meta.http-equiv.content-type 📋Safari3/27/2017 Chrome Android6/6/201771
html.elements.meta.http-equiv.refresh 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.meta.name 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.meta.name.color-scheme 📋Safari3/25/2019 Chrome Android4/7/2020379
html.elements.meta.name.referrer 📋Chrome Android6/27/2012 Safari4/12/20182115
Chrome: Until Chrome 46, content values weren't constrained to the values listed in the spec.Chrome Android: Until Chrome Android 46, content values weren't constrained to the values listed in the spec.Firefox: The referrer value wasn't taken into account when navigation was happening via the context menu or middle click until Firefox 39.Firefox for Android: The referrer value wasn't taken into account when navigation was happening via the context menu or middle click until Firefox for Android 39.Internet Explorer: Browsers initially supported an early draft of the specification which can only use a meta tag and is only compatible with the origin value from the new spec.Quest Browser: Until Quest Browser 5.0, content values weren't constrained to the values listed in the spec.Opera: Until Opera 33, content values weren't constrained to the values listed in the spec.Opera Android: Until Opera Android 33, content values weren't constrained to the values listed in the spec.Samsung Internet: Until Samsung Internet 5.0, content values weren't constrained to the values listed in the spec.WebView Android: Until WebView Android 46, content values weren't constrained to the values listed in the spec.
html.elements.meta.name.theme-color 📋Chrome Android7/20/2021 Safari9/20/202162
Chrome: Chrome uses the color only on installed progressive web apps.Chrome: Chrome reports support, but does not actually use the color anywhere.Chrome Android: Chrome for Android does not use the color on devices with native dark mode enabled unless it's an installed progressive web app or a trusted web activity.Edge: Edge uses the color only on installed progressive web apps.Quest Browser: Chrome for Android does not use the color on devices with native dark mode enabled unless it's an installed progressive web app or a trusted web activity.
html.elements.meta.scheme 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.meter 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.meter.high 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.meter.low 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.meter.max 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.meter.min 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.meter.optimum 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.meter.value 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.nav 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.nobr 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.noembed 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.noframes 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.noscript 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.object 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.object.archive 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.object.border 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.object.classid 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.object.codetype 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.object.data 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.object.declare 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.object.form 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.object.height 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.object.name 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.object.standby 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.object.type 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.object.usemap 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.object.width 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.ol 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.ol.compact Safari10/26/2007 Chrome Android6/27/20121706
html.elements.ol.reversed 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.ol.start 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.ol.type 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.optgroup 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.optgroup.disabled 📋Chrome Android6/27/2012 Safari10/22/2013482
Safari: Before Safari 7, the attribute can be set, but has no effect.Safari on iOS: The attribute can be set, but has no effect.WebView on iOS: The attribute can be set, but has no effect.
html.elements.optgroup.label 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.option 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.option.disabled 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.option.label 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before 77, Firefox didn't display the value of the label attribute as option text if element's content was empty. See bug 40545.Firefox: Historically, Firefox has allowed keyboard and mouse events to bubble up from the <option> element to the parent <select> element, although this behavior is inconsistent across many browsers. For better Web compatibility (and for technical reasons), they will not bubble up when Firefox is in multi-process mode and the <select> element is displayed as a drop-down list. The behavior is unchanged if the <select> is presented inline and it has either the multiple attribute defined or a size attribute set to more than 1. Rather than watching <option> elements for events, you should watch for change events on <select>. See bug 1090602 for details.Firefox: When Mozilla introduced dedicated content threads to Firefox (through the Electrolysis, or e10s, project), support for styling <option> elements was removed temporarily. Starting in Firefox 54, you can apply foreground and background colors to <option> elements again, using the color and background-color CSS properties. See bug 910022 for more information. Note that this is still disabled in Linux due to lack of contrast (see bug 1338283 for progress on this).Firefox for Android: Before 77, Firefox didn't display the value of the label attribute as option text if element's content was empty. See bug 40545.
html.elements.option.selected 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.option.value 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.output 📋Chrome Android6/27/2012 Safari10/22/2013482
html.elements.output.for 📋Chrome Android6/27/2012 Safari10/22/2013482
html.elements.output.form 📋Chrome Android6/27/2012 Safari10/22/2013482
html.elements.output.name 📋Chrome Android6/27/2012 Safari10/22/2013482
html.elements.p 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.param 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.param.name Safari6/8/2009 Chrome Android6/27/20121115
html.elements.param.type Safari6/8/2009 Chrome Android6/27/20121115
html.elements.param.value Safari6/8/2009 Chrome Android6/27/20121115
html.elements.param.valuetype Safari6/8/2009 Chrome Android6/27/20121115
html.elements.picture 📋Chrome Android10/8/2014 Safari3/21/2016530
html.elements.plaintext 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 4, this element implemented the HTMLSpanElement interface instead of the standard HTMLElement interface.
html.elements.pre 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.pre.width Safari10/26/2007 Chrome Android6/27/20121706
Chrome: Specifying the width attribute has no layout effect.Chrome Android: Specifying the width attribute has no layout effect.Edge: Specifying the width attribute has no layout effect.Firefox: Since Firefox 29, specifying the width attribute has no layout effect.Firefox for Android: Since Firefox for Android 29, specifying the width attribute has no layout effect.Internet Explorer: Specifying the width attribute has no layout effect.Quest Browser: Specifying the width attribute has no layout effect.Opera: Specifying the width attribute has no layout effect.Opera Android: Specifying the width attribute has no layout effect.Safari: Specifying the width attribute has no layout effect.Safari on iOS: Specifying the width attribute has no layout effect.Samsung Internet: Specifying the width attribute has no layout effect.WebView Android: Specifying the width attribute has no layout effect.WebView on iOS: Specifying the width attribute has no layout effect.
html.elements.progress 📋Chrome Android6/27/2012 Safari7/25/201228
Firefox: Before Firefox 14, the <progress> element was incorrectly classified as a form element, and therefore had a form attribute. This has been fixed.Firefox: Firefox provides the ::-moz-progress-bar pseudo-element, which lets you style the part of the interior of the progress bar representing the amount of work completed so far.Firefox for Android: Before Firefox for Android 14, the <progress> element was incorrectly classified as a form element, and therefore had a form attribute. This has been fixed.Firefox for Android: Firefox for Android provides the ::-moz-progress-bar pseudo-element, which lets you style the part of the interior of the progress bar representing the amount of work completed so far.Safari on iOS: Safari on iOS does not support indeterminate progress bars (they are rendered like 0%-completed progress bars).WebView on iOS: WebView on iOS does not support indeterminate progress bars (they are rendered like 0%-completed progress bars).
html.elements.progress.max 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.progress.value 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.q 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.q.cite 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.rb 📋Safari6/7/2010 Chrome Android6/27/2012751
Chrome: Blink has support for parsing the rb element, but not for rendering rb content as expected.Chrome Android: Blink has support for parsing the rb element, but not for rendering rb content as expected.Edge: Blink has support for parsing the rb element, but not for rendering rb content as expected.Quest Browser: Blink has support for parsing the rb element, but not for rendering rb content as expected.Opera: Blink has support for parsing the rb element, but not for rendering rb content as expected.Opera Android: Blink has support for parsing the rb element, but not for rendering rb content as expected.Safari: Safari has support for parsing the rb element, but not for rendering rb content as expected.Safari on iOS: Safari on iOS has support for parsing the rb element, but not for rendering rb content as expected.Samsung Internet: Blink has support for parsing the rb element, but not for rendering rb content as expected.WebView Android: Blink has support for parsing the rb element, but not for rendering rb content as expected.WebView on iOS: WebView on iOS has support for parsing the rb element, but not for rendering rb content as expected.
html.elements.rp 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.rt 📋Safari6/7/2010 Chrome Android6/27/2012751
Chrome: Nested <rt> elements do not render correctly due to missing display: ruby-text styling. See bug 347597919.Chrome Android: Nested <rt> elements do not render correctly due to missing display: ruby-text styling. See bug 347597919.Quest Browser: Nested <rt> elements do not render correctly due to missing display: ruby-text styling. See bug 347597919.Opera: Nested <rt> elements do not render correctly due to missing display: ruby-text styling. See bug 347597919.Opera Android: Nested <rt> elements do not render correctly due to missing display: ruby-text styling. See bug 347597919.Safari: Nested <rt> elements do not render correctly due to missing display: ruby-text styling. See bug 265316.Safari on iOS: Nested <rt> elements do not render correctly due to missing display: ruby-text styling. See bug 265316.Samsung Internet: Nested <rt> elements do not render correctly due to missing display: ruby-text styling. See bug 347597919.WebView Android: Nested <rt> elements do not render correctly due to missing display: ruby-text styling. See bug 347597919.WebView on iOS: Nested <rt> elements do not render correctly due to missing display: ruby-text styling. See bug 265316.
html.elements.rtc 📋Safari10/16/2014 Chrome Android12/2/2015412
html.elements.ruby 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.s 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 4, this element implemented the HTMLSpanElement interface instead of the standard HTMLElement interface.
html.elements.samp 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.script 📋Safari10/26/2007 Chrome Android6/27/20121706
Firefox: Starting in Firefox 4, inserting <script> elements that have been created by calling document.createElement("script") no longer enforces execution in insertion order. This change lets Firefox properly abide by the specification. To make script-inserted external scripts execute in their insertion order, set .async=false on them.
html.elements.script.async 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.script.blocking 📋Chrome Android9/2/2022 Safari12/11/2024831
html.elements.script.crossorigin 📋Safari7/25/2012 Chrome Android2/27/2013217
Safari: The crossorigin attribute was implemented in WebKit in WebKit bug 81438.Safari on iOS: The crossorigin attribute was implemented in WebKit in WebKit bug 81438.WebView on iOS: The crossorigin attribute was implemented in WebKit in WebKit bug 81438.
html.elements.script.defer 📋Safari10/26/2007 Chrome Android6/27/20121706
Chrome: Chrome does not defer scripts with the defer attribute when the page is served as XHTML (application/xhtml+xml), see bug 41253514 and bug 41408348Chrome Android: Chrome Android does not defer scripts with the defer attribute when the page is served as XHTML (application/xhtml+xml), see bug 41253514 and bug 41408348Firefox: Since Firefox 3.6, the defer attribute is ignored on scripts that don't have the src attribute. However, in Firefox 3.5 even inline scripts are deferred if the defer attribute is set.Internet Explorer: Before version 10, Internet Explorer implemented defer by a proprietary specification. Since version 10 it conforms to the W3C specification.Quest Browser: Quest Browser does not defer scripts with the defer attribute when the page is served as XHTML (application/xhtml+xml), see bug 41253514 and bug 41408348Opera: Opera does not defer scripts with the defer attribute when the page is served as XHTML (application/xhtml+xml), see bug 41253514 and bug 41408348Opera Android: Opera Android does not defer scripts with the defer attribute when the page is served as XHTML (application/xhtml+xml), see bug 41253514 and bug 41408348Samsung Internet: Samsung Internet does not defer scripts with the defer attribute when the page is served as XHTML (application/xhtml+xml), see bug 41253514 and bug 41408348WebView Android: WebView Android does not defer scripts with the defer attribute when the page is served as XHTML (application/xhtml+xml), see bug 41253514 and bug 41408348
html.elements.script.fetchpriority 📋Chrome Android4/26/2022 Safari12/11/2023594
html.elements.script.integrity 📋Chrome Android9/1/2015 Safari4/12/2018954
html.elements.script.nomodule 📋Chrome Android9/5/2017 Safari9/19/201714
html.elements.script.referrerpolicy 📋Chrome Android10/17/2018 Safari9/16/2020700
html.elements.script.src 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.script.type 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.script.type.importmap 📋Chrome Android3/2/2021 Safari3/27/2023755
html.elements.script.type.importmap.integrity 📋Chrome Android7/23/2024 Safari9/16/202455
html.elements.script.type.importmap.multiple_import_maps 📋Chrome Android2/4/2025 Safari3/31/202555
html.elements.script.type.module Safari3/27/2017 Chrome Android9/5/2017162
Chrome: Module scripts without the async attribute do not load when the page is served as XHTML (application/xhtml+xml). See bug 40518469.Chrome Android: Module scripts without the async attribute do not load when the page is served as XHTML (application/xhtml+xml). See bug 40518469.Edge: Module scripts without the async attribute do not load when the page is served as XHTML (application/xhtml+xml). See bug 40518469.Quest Browser: Module scripts without the async attribute do not load when the page is served as XHTML (application/xhtml+xml). See bug 40518469.Opera: Module scripts without the async attribute do not load when the page is served as XHTML (application/xhtml+xml). See bug 40518469.Opera Android: Module scripts without the async attribute do not load when the page is served as XHTML (application/xhtml+xml). See bug 40518469.Safari: Module scripts do not load when the page is served as XHTML (application/xhtml+xml).Safari on iOS: Module scripts do not load when the page is served as XHTML (application/xhtml+xml).Samsung Internet: Module scripts without the async attribute do not load when the page is served as XHTML (application/xhtml+xml). See bug 40518469.WebView Android: Module scripts without the async attribute do not load when the page is served as XHTML (application/xhtml+xml). See bug 40518469.WebView on iOS: Module scripts do not load when the page is served as XHTML (application/xhtml+xml).
html.elements.script.type.speculationrules 📋Chrome Android1/10/2023 Safari12/12/20251067
Chrome: Initial support included same-origin prerendering only.Chrome Android: Initial support included same-origin prerendering only.Edge: Initial support included same-origin prerendering only.Quest Browser: Initial support included same-origin prerendering only.Opera: Initial support included same-origin prerendering only.Opera Android: Initial support included same-origin prerendering only.Samsung Internet: Initial support included same-origin prerendering only.WebView Android: Initial support included same-origin prerendering only.
html.elements.script.type.speculationrules.eagerness 📋Chrome Android1/23/2024 Safari12/12/2025689
Safari: Only conservative is supported for document rules (though moderate automatically falls back to conservative). Only eager and immediate is supported for list rules.Safari on iOS: Only conservative is supported for document rules (though moderate automatically falls back to conservative). Only eager and immediate is supported for list rules.
html.elements.script.type.speculationrules.prefetch 📋Chrome Android6/21/2022 Safari12/12/20251270
html.elements.script.type.speculationrules.referrer_policy 📋Chrome Android3/7/2023 Safari12/12/20251011
html.elements.script.type.speculationrules.relative_to 📋Chrome Android1/23/2024 Safari12/12/2025689
html.elements.script.type.speculationrules.source_optional 📋Chrome Android2/20/2024 Safari12/12/2025661
html.elements.script.type.speculationrules.tag 📋Chrome Android4/29/2025 Safari12/12/2025227
html.elements.script.type.speculationrules.urls 📋Chrome Android6/21/2022 Safari12/12/20251270
html.elements.script.type.speculationrules.where 📋Chrome Android1/23/2024 Safari12/12/2025689
html.elements.search 📋Safari9/18/2023 Chrome Android10/10/202322
html.elements.section 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.select 📋Safari6/23/2003 Chrome Android6/27/20123292
Chrome: border-radius on <select> elements is ignored unless -webkit-appearance is overridden to an appropriate value.Chrome Android: border-radius on <select> elements is ignored unless -webkit-appearance is overridden to an appropriate value.Firefox: Historically, Firefox has allowed keyboard and mouse events to bubble up from the <option> element to the parent <select> element, although this behavior is inconsistent across many browsers. For better Web compatibility (and for technical reasons), when Firefox is in multi-process mode the <select> element is displayed as a drop-down list. The behavior is unchanged if the <select> is presented inline and it has either the multiple attribute defined or a size attribute set to more than 1. Rather than watching <option> elements for events, you should watch for change events on <select>. See bug 1090602 for details.Firefox for Android: Firefox for Android, by default, sets a background-image gradient on all <select multiple> elements. This can be disabled using background-image: none.Quest Browser: border-radius on <select> elements is ignored unless -webkit-appearance is overridden to an appropriate value.Safari: border-radius on <select> elements is ignored unless -webkit-appearance is overridden to an appropriate value.Safari on iOS: border-radius on <select> elements is ignored unless -webkit-appearance is overridden to an appropriate value.Samsung Internet: border-radius on <select> elements is ignored unless -webkit-appearance is overridden to an appropriate value.WebView Android: border-radius on <select> elements is ignored unless -webkit-appearance is overridden to an appropriate value.WebView on iOS: border-radius on <select> elements is ignored unless -webkit-appearance is overridden to an appropriate value.
html.elements.select.autocomplete 📋Safari3/21/2016 Chrome Android4/17/2018757
html.elements.select.disabled 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.select.form 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.select.multiple 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.select.name 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.select.required 📋Safari7/20/2011 Chrome Android6/27/2012343
html.elements.slot 📋Chrome Android9/7/2016 Safari9/20/201613
html.elements.slot.name Chrome Android9/7/2016 Safari9/20/201613
html.elements.small 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.source 📋Safari3/18/2008 Chrome Android6/27/20121562
Firefox: Until Firefox 15, Firefox picked the first source element that has a type matching the MIME-type of a supported media format; see bug 449363 for details.Firefox for Android: Until Firefox for Android 15, Firefox for Android picked the first source element that has a type matching the MIME-type of a supported media format; see bug 449363 for details.
html.elements.source.height 📋Chrome Android4/13/2021 Safari9/20/2021160
html.elements.source.media 📋Safari3/18/2008 Chrome Android6/27/20121562
Firefox: media is supported in <source> within <picture>, <audio>, and <video>. In Firefox 53-119, media is supported only in <source> within <picture>.Firefox for Android: media is supported in <source> within <picture>, <audio>, and <video>. In Firefox for Android 53-119, media is supported only in <source> within <picture>.
html.elements.source.sizes 📋Chrome Android10/8/2014 Safari3/21/2016530
Chrome: Supports a subset of the syntax for resolution switching (using the x descriptor), but not the full syntax that can be used with sizes (using the w descriptor).Chrome Android: Supports a subset of the syntax for resolution switching (using the x descriptor), but not the full syntax that can be used with sizes (using the w descriptor).Opera: Supports a subset of the syntax for resolution switching (using the x descriptor), but not the full syntax that can be used with sizes (using the w descriptor).Opera Android: Supports a subset of the syntax for resolution switching (using the x descriptor), but not the full syntax that can be used with sizes (using the w descriptor).Samsung Internet: Supports a subset of the syntax for resolution switching (using the x descriptor), but not the full syntax that can be used with sizes (using the w descriptor).WebView Android: Supports a subset of the syntax for resolution switching (using the x descriptor), but not the full syntax that can be used with sizes (using the w descriptor).
html.elements.source.src 📋Safari3/18/2008 Chrome Android6/27/20121562
html.elements.source.srcset 📋Chrome Android10/8/2014 Safari3/21/2016530
Chrome: Supports a subset of the syntax for resolution switching (using the x descriptor), but not the full syntax that can be used with sizes (using the w descriptor).Chrome Android: Supports a subset of the syntax for resolution switching (using the x descriptor), but not the full syntax that can be used with sizes (using the w descriptor).Opera: Supports a subset of the syntax for resolution switching (using the x descriptor), but not the full syntax that can be used with sizes (using the w descriptor).Opera Android: Supports a subset of the syntax for resolution switching (using the x descriptor), but not the full syntax that can be used with sizes (using the w descriptor).Samsung Internet: Supports a subset of the syntax for resolution switching (using the x descriptor), but not the full syntax that can be used with sizes (using the w descriptor).WebView Android: Supports a subset of the syntax for resolution switching (using the x descriptor), but not the full syntax that can be used with sizes (using the w descriptor).
html.elements.source.type 📋Safari3/18/2008 Chrome Android6/27/20121562
html.elements.source.width 📋Chrome Android4/13/2021 Safari9/20/2021160
html.elements.span 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.strike 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 4, this element implemented the HTMLSpanElement interface instead of the standard HTMLElement interface.Firefox for Android: Before Firefox for Android 4, this element implemented the HTMLSpanElement interface instead of the standard HTMLElement interface.
html.elements.strong 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 4, creating a <strong> element incorrectly resulted in an HTMLSpanElement object, instead of the expected HTMLElement.
html.elements.style 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.style.blocking 📋Chrome Android9/2/2022 Safari12/11/2024831
html.elements.style.media 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.style.type 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Before 75, Firefox accepted any CSS media (MIME) type, with optional parameters. Starting in 75, this has been restricted to the string 'text/css', per the spec.
html.elements.sub 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.summary 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.sup 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.table 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.table.align Safari6/23/2003 Chrome Android6/27/20123292
html.elements.table.bgcolor Safari6/23/2003 Chrome Android6/27/20123292
html.elements.table.border Safari6/23/2003 Chrome Android6/27/20123292
html.elements.table.cellpadding Safari6/23/2003 Chrome Android6/27/20123292
html.elements.table.cellspacing Safari6/23/2003 Chrome Android6/27/20123292
html.elements.table.frame Safari6/23/2003 Chrome Android6/27/20123292
html.elements.table.rules Safari6/23/2003 Chrome Android6/27/20123292
html.elements.table.summary Safari6/23/2003 Chrome Android6/27/20123292
html.elements.table.width Safari6/23/2003 Chrome Android6/27/20123292
html.elements.tbody 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.tbody.align Safari10/26/2007 Chrome Android6/27/20121706
html.elements.tbody.bgcolor Safari6/23/2003 Chrome Android6/27/20123292
html.elements.tbody.valign Safari10/26/2007 Chrome Android6/27/20121706
html.elements.td 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.td.abbr Safari6/23/2003 Chrome Android6/27/20123292
html.elements.td.align Safari10/26/2007 Chrome Android6/27/20121706
html.elements.td.axis Safari6/23/2003 Chrome Android6/27/20123292
html.elements.td.bgcolor Safari6/23/2003 Chrome Android6/27/20123292
html.elements.td.colspan Safari6/23/2003 Chrome Android6/27/20123292
html.elements.td.headers Safari6/23/2003 Chrome Android6/27/20123292
html.elements.td.rowspan Safari6/23/2003 Chrome Android6/27/20123292
html.elements.td.scope Safari6/23/2003 Chrome Android6/27/20123292
html.elements.td.valign Safari10/26/2007 Chrome Android6/27/20121706
html.elements.td.width Safari6/23/2003 Chrome Android6/27/20123292
html.elements.template 📋Chrome Android4/3/2013 Safari10/16/2014561
html.elements.template.shadowrootclonable 📋Chrome Android4/16/2024 Safari5/13/202427
html.elements.template.shadowrootdelegatesfocus 📋Safari3/27/2023 Chrome Android3/19/2024358
html.elements.template.shadowrootmode 📋Chrome Android3/7/2023 Safari3/27/202320
html.elements.template.shadowrootreferencetarget Chrome Android2/4/2025 Safari9/15/2025223
html.elements.template.shadowrootserializable 📋Chrome Android5/14/2024 Safari9/16/2024125
html.elements.textarea 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 6, when a <textarea> was focused, the insertion point was placed at the end of the text by default. Other major browsers place the insertion point at the beginning of the text.Firefox: A default background-image gradient is applied to all <textarea> elements, which can be disabled using background-image: none.Firefox: Before Firefox 89, manipulating the content of <textarea> elements using Document.execCommand() commands requires workarounds (see bug 1220696).Firefox for Android: Before Firefox for Android 6, when a <textarea> was focused, the insertion point was placed at the end of the text by default. Other major browsers place the insertion point at the beginning of the text.Firefox for Android: A default background-image gradient is applied to all <textarea> elements, which can be disabled using background-image: none.Firefox for Android: Before Firefox for Android 89, manipulating the content of <textarea> elements using Document.execCommand() commands requires workarounds (see bug 1220696).Safari on iOS: Unlike other major browsers, a default style of opacity: 0.4 is applied to disabled <textarea> elements.WebView on iOS: Unlike other major browsers, a default style of opacity: 0.4 is applied to disabled <textarea> elements.
html.elements.textarea.autocomplete 📋Safari3/21/2016 Chrome Android4/17/2018757
html.elements.textarea.autocomplete.one-time-code Safari9/17/2018 Chrome Android7/27/2020679
html.elements.textarea.cols 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.textarea.dirname 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.textarea.disabled 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.textarea.form 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.textarea.maxlength 📋Safari6/7/2010 Chrome Android6/27/2012751
Safari: Before Safari 17, newline characters counted as two characters instead of one. See bug 249916.Safari on iOS: Before Safari on iOS 17, newline characters counted as two characters instead of one. See bug 249916.WebView on iOS: Before WebView on iOS 17, newline characters counted as two characters instead of one. See bug 249916.
html.elements.textarea.minlength 📋Chrome Android1/21/2015 Safari3/27/2017796
html.elements.textarea.name 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.textarea.placeholder 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.textarea.placeholder.line_breaks Chrome Android7/16/2014 Safari9/12/20222980
html.elements.textarea.readonly 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.textarea.required 📋Safari6/7/2010 Chrome Android6/27/2012751
html.elements.textarea.rows 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.textarea.wrap 📋Chrome Android6/27/2012 Safari7/25/201228
html.elements.tfoot 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.tfoot.align Safari10/26/2007 Chrome Android6/27/20121706
html.elements.tfoot.bgcolor Safari6/23/2003 Chrome Android6/27/20123292
html.elements.tfoot.valign Safari10/26/2007 Chrome Android6/27/20121706
html.elements.th 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.th.abbr Safari6/23/2003 Chrome Android6/27/20123292
html.elements.th.align Safari10/26/2007 Chrome Android6/27/20121706
html.elements.th.axis Safari6/23/2003 Chrome Android6/27/20123292
html.elements.th.bgcolor Safari6/23/2003 Chrome Android6/27/20123292
html.elements.th.colspan Safari6/23/2003 Chrome Android6/27/20123292
html.elements.th.headers Safari6/23/2003 Chrome Android6/27/20123292
html.elements.th.rowspan Safari6/23/2003 Chrome Android6/27/20123292
html.elements.th.scope Safari6/23/2003 Chrome Android6/27/20123292
html.elements.th.valign Safari10/26/2007 Chrome Android6/27/20121706
html.elements.th.width Safari6/23/2003 Chrome Android6/27/20123292
html.elements.thead 📋Safari6/23/2003 Chrome Android6/27/20123292
Safari: Backgrounds applied to <thead> elements will be applied to each table cell, rather than the entire header. To mimic the behavior of other browsers, set the background-attachment CSS property to fixed.Safari on iOS: Backgrounds applied to <thead> elements will be applied to each table cell, rather than the entire header. To mimic the behavior of other browsers, set the background-attachment CSS property to fixed.WebView on iOS: Backgrounds applied to <thead> elements will be applied to each table cell, rather than the entire header. To mimic the behavior of other browsers, set the background-attachment CSS property to fixed.
html.elements.thead.align Safari10/26/2007 Chrome Android6/27/20121706
html.elements.thead.bgcolor Safari6/23/2003 Chrome Android6/27/20123292
html.elements.thead.valign Safari10/26/2007 Chrome Android6/27/20121706
html.elements.time 📋Safari10/22/2013 Chrome Android10/24/20171463
html.elements.time.datetime Safari10/22/2013 Chrome Android10/24/20171463
html.elements.title 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.tr 📋Safari6/23/2003 Chrome Android6/27/20123292
html.elements.tr.align Safari10/26/2007 Chrome Android6/27/20121706
html.elements.tr.bgcolor Safari6/23/2003 Chrome Android6/27/20123292
html.elements.tr.valign Safari10/26/2007 Chrome Android6/27/20121706
html.elements.track 📋Safari7/25/2012 Chrome Android2/27/2013217
Chrome Android: Doesn't work for fullscreen video.Quest Browser: Doesn't work for fullscreen video.Samsung Internet: Doesn't work for fullscreen video.WebView Android: Doesn't work for fullscreen video.
html.elements.track.default 📋Safari7/25/2012 Chrome Android2/27/2013217
html.elements.track.kind 📋Safari7/25/2012 Chrome Android2/27/2013217
html.elements.track.label 📋Safari7/25/2012 Chrome Android2/27/2013217
html.elements.track.src 📋Safari7/25/2012 Chrome Android2/27/2013217
Firefox: Before Firefox 50, setting the src didn't work, though it didn't raise an error.Firefox for Android: Before Firefox for Android 50, setting the src didn't work, though it didn't raise an error.
html.elements.track.srclang 📋Safari7/25/2012 Chrome Android2/27/2013217
html.elements.tt 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 4, this element implemented the HTMLSpanElement interface instead of the standard HTMLElement interface.Firefox for Android: Before Firefox for Android 4, this element implemented the HTMLSpanElement interface instead of the standard HTMLElement interface.
html.elements.u 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: Before Firefox 4, this element implemented the HTMLSpanElement interface instead of the standard HTMLElement interface.
html.elements.ul 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.ul.compact 📋Safari10/26/2007 Chrome Android6/27/20121706
html.elements.ul.type 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.var 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.video 📋Safari3/18/2008 Chrome Android6/27/20121562
html.elements.video.aspect_ratio_computed_from_attributes Chrome Android12/17/2019 Safari9/16/2020274
html.elements.video.autoplay 📋Safari3/18/2008 Chrome Android6/27/20121562
html.elements.video.autoplay.requires_muted_audio Chrome Android5/31/2018 Safari9/12/20221565
Firefox for Android: Between versions 79 and 91, the default behavior was to block videos from autoplaying, regardless of whether audio was muted.
html.elements.video.controls 📋Safari3/18/2008 Chrome Android6/27/20121562
html.elements.video.crossorigin 📋Chrome Android2/26/2014 Safari9/20/2016937
Firefox: With crossorigin="use-credentials", cookies aren't sent during seek. See bug 1532722.Firefox for Android: With crossorigin="use-credentials", cookies aren't sent during seek. See bug 1532722.
html.elements.video.disablepictureinpicture 📋Safari3/24/2020 Chrome Android9/2/2022892
Firefox: When this attribute is set, the overlay button to disable picture-in-picture (PiP) is hidden, but the user can still enable PiP.Firefox: When this attribute is set, the overlay button to disable picture-in-picture (PiP) is hidden, but the user can still enable PiP.Firefox for Android: When this attribute is set, the overlay button to disable picture-in-picture (PiP) is hidden, but the user can still enable PiP.Firefox for Android: When this attribute is set, the overlay button to disable picture-in-picture (PiP) is hidden, but the user can still enable PiP.
html.elements.video.disableremoteplayback 📋Chrome Android2/1/2017 Safari3/24/20201147
html.elements.video.height 📋Safari3/18/2008 Chrome Android6/27/20121562
html.elements.video.loop 📋Safari3/18/2008 Chrome Android6/27/20121562
html.elements.video.muted 📋Safari6/7/2010 Chrome Android10/2/20131213
html.elements.video.playsinline 📋Safari9/20/2016 Chrome Android6/4/2019987
html.elements.video.poster 📋Safari3/18/2008 Chrome Android6/27/20121562
html.elements.video.preload 📋Safari3/18/2008 Chrome Android6/27/20121562
Chrome: Defaults to metadata in Chrome 64.Chrome Android: Defaults to metadata in Chrome Android 64.Quest Browser: Defaults to metadata in Quest Browser 5.0.Opera: Defaults to metadata in Opera 51.Opera Android: Defaults to metadata in Opera Android 47.Samsung Internet: Defaults to metadata in Samsung Internet 9.0.WebView Android: Defaults to metadata in WebView Android 64.
html.elements.video.src 📋Safari3/18/2008 Chrome Android6/27/20121562
html.elements.video.width 📋Safari3/18/2008 Chrome Android6/27/20121562
html.elements.wbr 📋Safari6/8/2009 Chrome Android6/27/20121115
html.elements.xmp 📋Safari6/8/2009 Chrome Android6/27/20121115
Firefox: Before Firefox 4, this element implemented the HTMLSpanElement interface instead of the standard HTMLElement interface.Firefox for Android: Before Firefox for Android 4, this element implemented the HTMLSpanElement interface instead of the standard HTMLElement interface.
html.global_attributes.accesskey 📋Safari6/8/2009 Chrome Android6/27/20121115
html.global_attributes.autofocus 📋Chrome Android12/17/2019 Safari3/14/2022818
Chrome: Supported for the <button>, <input>, <select>, and <textarea> elements.Chrome Android: Supported for the <button>, <input>, <select>, and <textarea> elements.Edge: Supported for the <button>, <input>, <select>, and <textarea> elements.Firefox: Supported for the <button>, <input>, <select>, and <textarea> elements.Firefox for Android: Supported for the <button>, <input>, <select>, and <textarea> elements.Internet Explorer: Supported for the <button>, <input>, <select>, and <textarea> elements.Quest Browser: Supported for the <button>, <input>, <select>, and <textarea> elements.Opera: Supported for the <button>, <input>, <select>, and <textarea> elements.Opera Android: Supported for the <button>, <input>, <select>, and <textarea> elements.Safari: Supported for the <button>, <input>, <select>, and <textarea> elements.Safari on iOS: If there's no hardware keyboard connected, then the autofocus attribute has no effect (for example, the focus event doesn't fire and the element does not match the :focus selector).Samsung Internet: Supported for the <button>, <input>, <select>, and <textarea> elements.WebView Android: Supported for the <button>, <input>, <select>, and <textarea> elements.WebView on iOS: If there's no hardware keyboard connected, then the autofocus attribute has no effect (for example, the focus event doesn't fire and the element does not match the :focus selector).
html.global_attributes.class 📋Safari6/8/2009 Chrome Android6/27/20121115
html.global_attributes.contenteditable 📋Safari6/8/2009 Chrome Android6/27/20121115
html.global_attributes.contenteditable.plaintext-only Safari6/7/2010 Chrome Android6/8/20162193
html.global_attributes.data_attributes 📋Safari7/20/2011 Chrome Android6/27/2012343
html.global_attributes.dir 📋Safari6/8/2009 Chrome Android6/27/20121115
html.global_attributes.draggable 📋Safari6/7/2010 Chrome Android6/27/2012751
html.global_attributes.enterkeyhint 📋Chrome Android9/10/2019 Safari3/24/2020196
html.global_attributes.exportparts 📋Chrome Android3/12/2019 Safari3/24/2020378
html.global_attributes.hidden 📋Safari7/20/2011 Chrome Android6/27/2012343
Safari: This attribute has no effect on <option> elements.Safari on iOS: This attribute has no effect on <option> elements.WebView on iOS: This attribute has no effect on <option> elements.
html.global_attributes.hidden.until-found 📋Chrome Android5/24/2022 Safari12/12/20251298
Firefox: The browser does not correctly scroll to the matching text. See bug 2006040.Firefox for Android: The browser does not correctly scroll to the matching text. See bug 2006040.Safari: The browser does not correctly scroll to the matching text. See bug 304174.Safari on iOS: The browser does not correctly scroll to the matching text. See bug 304174.WebView on iOS: The browser does not correctly scroll to the matching text. See bug 304174.
html.global_attributes.id 📋Safari6/23/2003 Chrome Android6/27/20123292
Firefox: id is a true global attribute only since Firefox 32.Firefox for Android: id is a true global attribute only since Firefox for Android 32.
html.global_attributes.inert 📋Safari5/16/2022 Chrome Android5/24/20228
html.global_attributes.inputmode 📋Chrome Android4/17/2018 Safari3/25/2019342
Safari on iOS: Before iOS 13, inputmode="none" had no effect.WebView on iOS: Before iOS 13, inputmode="none" had no effect.
html.global_attributes.lang 📋Safari6/8/2009 Chrome Android6/27/20121115
html.global_attributes.nonce 📋Chrome Android9/5/2017 Safari5/16/20221714
Firefox: Firefox does not prevent nonce exfiltration through content attributes.Firefox for Android: Firefox for Android does not prevent nonce exfiltration through content attributes.Safari: Safari does not prevent nonce exfiltration through content attributes.Safari on iOS: Safari on iOS does not prevent nonce exfiltration through content attributes.WebView on iOS: WebView on iOS does not prevent nonce exfiltration through content attributes.
html.global_attributes.part 📋Chrome Android3/12/2019 Safari3/24/2020378
html.global_attributes.popover 📋Chrome Android5/30/2023 Safari9/18/2023111
html.global_attributes.slot 📋Chrome Android9/7/2016 Safari9/20/201613
html.global_attributes.spellcheck 📋Safari7/20/2011 Chrome Android12/2/20151596
Chrome Android: Only supported on <textarea>.Firefox for Android: Only supported on <textarea>.Opera Android: Only supported on <textarea>.Safari on iOS: Only supported on <textarea>.Samsung Internet: Only supported on <textarea>.WebView Android: Only supported on <textarea>.WebView on iOS: Only supported on <textarea>.
html.global_attributes.style 📋Safari6/23/2003 Chrome Android6/27/20123292
html.global_attributes.tabindex 📋Safari3/18/2008 Chrome Android6/27/20121562
html.global_attributes.title 📋Safari6/8/2009 Chrome Android6/27/20121115
html.global_attributes.title.multi-line_titles Safari9/19/2017 Chrome Android1/23/2018126
html.global_attributes.translate 📋Safari7/25/2012 Chrome Android2/27/2013217
html.global_attributes.writingsuggestions 📋Chrome Android4/16/2024 Safari9/16/2024153