{ "title":"CSS display: contents", "description":"`display: contents` causes an element's children to appear as if they were direct children of the element's parent, ignoring the element itself. This can be useful when a wrapper element should be ignored when using CSS grid or similar layout techniques.", "spec":"https://w3c.github.io/csswg-drafts/css-display/", "status":"cr", "links":[ { "url":"https://rachelandrew.co.uk/archives/2016/01/29/vanishing-boxes-with-display-contents/", "title":"Vanishing boxes with display contents" } ], "bugs":[ { "description":"Safari on iOS 10 and 11, and Safari 11 renders `display:contents` as `display:inline`. @supports will also report as true." }, { "description":"Safari on Mac and iOS had bugs related to [toggling between display: none](https://bugs.webkit.org/show_bug.cgi?id=188259) and [::before/::after elements not filling their grid cell](https://bugs.webkit.org/show_bug.cgi?id=193567). These were fixed in version 13.4" } ], "categories":[ "CSS" ], "stats":{ "ie":{ "5.5":"n", "6":"n", "7":"n", "8":"n", "9":"n", "10":"n", "11":"n" }, "edge":{ "12":"n", "13":"n", "14":"n", "15":"n", "16":"n", "17":"n", "18":"n", "79":"a #1", "80":"a #1", "81":"a #1", "83":"a #1", "84":"a #1", "85":"a #1", "86":"a #1", "87":"a #1", "88":"a #1", "89":"a #2", "90":"a #2", "91":"a #2", "92":"a #2", "93":"a #2", "94":"a #2", "95":"a #2", "96":"a #2", "97":"a #2", "98":"a #2", "99":"a #2", "100":"a #2", "101":"a #2", "102":"a #2", "103":"a #2", "104":"a #2", "105":"a #2", "106":"a #2", "107":"a #2", "108":"a #2", "109":"a #2", "110":"a #2", "111":"a #2", "112":"a #2", "113":"a #2", "114":"a #2", "115":"a #2", "116":"a #2", "117":"a #2", "118":"a #2", "119":"a #2", "120":"a #2" }, "firefox":{ "2":"n", "3":"n", "3.5":"n", "3.6":"n", "4":"n", "5":"n", "6":"n", "7":"n", "8":"n", "9":"n", "10":"n", "11":"n", "12":"n", "13":"n", "14":"n", "15":"n", "16":"n", "17":"n", "18":"n", "19":"n", "20":"n", "21":"n", "22":"n", "23":"n", "24":"n", "25":"n", "26":"n", "27":"n", "28":"n", "29":"n", "30":"n", "31":"n", "32":"n", "33":"n", "34":"n", "35":"n", "36":"n", "37":"a #1", "38":"a #1", "39":"a #1", "40":"a #1", "41":"a #1", "42":"a #1", "43":"a #1", "44":"a #1", "45":"a #1", "46":"a #1", "47":"a #1", "48":"a #1", "49":"a #1", "50":"a #1", "51":"a #1", "52":"a #1", "53":"a #1", "54":"a #1", "55":"a #1", "56":"a #1", "57":"a #1", "58":"a #1", "59":"a #1", "60":"a #1", "61":"a #1", "62":"a #2", "63":"a #2", "64":"a #2", "65":"a #2", "66":"a #2", "67":"a #2", "68":"a #2", "69":"a #2", "70":"a #2", "71":"a #2", "72":"a #2", "73":"a #2", "74":"a #2", "75":"a #2", "76":"a #2", "77":"a #2", "78":"a #2", "79":"a #2", "80":"a #2", "81":"a #2", "82":"a #2", "83":"a #2", "84":"a #2", "85":"a #2", "86":"a #2", "87":"a #2", "88":"a #2", "89":"a #2", "90":"a #2", "91":"a #2", "92":"a #2", "93":"a #2", "94":"a #2", "95":"a #2", "96":"a #2", "97":"a #2", "98":"a #2", "99":"a #2", "100":"a #2", "101":"a #2", "102":"a #2", "103":"a #2", "104":"a #2", "105":"a #2", "106":"a #2", "107":"a #2", "108":"a #2", "109":"a #2", "110":"a #2", "111":"a #2", "112":"a #2", "113":"a #2", "114":"a #2", "115":"a #2", "116":"a #2", "117":"a #2", "118":"a #2", "119":"a #2", "120":"a #2", "121":"a #2", "122":"a #2", "123":"a #2" }, "chrome":{ "4":"n", "5":"n", "6":"n", "7":"n", "8":"n", "9":"n", "10":"n", "11":"n", "12":"n", "13":"n", "14":"n", "15":"n", "16":"n", "17":"n", "18":"n", "19":"n", "20":"n", "21":"n", "22":"n", "23":"n", "24":"n", "25":"n", "26":"n", "27":"n", "28":"n", "29":"n", "30":"n", "31":"n", "32":"n", "33":"n", "34":"n", "35":"n", "36":"n", "37":"n", "38":"n", "39":"n", "40":"n", "41":"n", "42":"n", "43":"n", "44":"n", "45":"n", "46":"n", "47":"n", "48":"n", "49":"n", "50":"n", "51":"n", "52":"n", "53":"n", "54":"n", "55":"n", "56":"n", "57":"n", "58":"n d #1", "59":"n d #1", "60":"n d #1", "61":"n d #1", "62":"n d #1", "63":"n d #1", "64":"n d #1", "65":"a #1", "66":"a #1", "67":"a #1", "68":"a #1", "69":"a #1", "70":"a #1", "71":"a #1", "72":"a #1", "73":"a #1", "74":"a #1", "75":"a #1", "76":"a #1", "77":"a #1", "78":"a #1", "79":"a #1", "80":"a #1", "81":"a #1", "83":"a #1", "84":"a #1", "85":"a #1", "86":"a #1", "87":"a #1", "88":"a #1", "89":"a #2", "90":"a #2", "91":"a #2", "92":"a #2", "93":"a #2", "94":"a #2", "95":"a #2", "96":"a #2", "97":"a #2", "98":"a #2", "99":"a #2", "100":"a #2", "101":"a #2", "102":"a #2", "103":"a #2", "104":"a #2", "105":"a #2", "106":"a #2", "107":"a #2", "108":"a #2", "109":"a #2", "110":"a #2", "111":"a #2", "112":"a #2", "113":"a #2", "114":"a #2", "115":"a #2", "116":"a #2", "117":"a #2", "118":"a #2", "119":"a #2", "120":"a #2", "121":"a #2", "122":"a #2", "123":"a #2" }, "safari":{ "3.1":"n", "3.2":"n", "4":"n", "5":"n", "5.1":"n", "6":"n", "6.1":"n", "7":"n", "7.1":"n", "8":"n", "9":"n", "9.1":"n", "10":"n", "10.1":"n", "11":"n", "11.1":"a #1", "12":"a #1", "12.1":"a #1", "13":"a #1", "13.1":"a #1", "14":"a #1", "14.1":"a #1", "15":"a #1", "15.1":"a #1", "15.2-15.3":"a #1", "15.4":"a #1", "15.5":"a #1", "15.6":"a #1", "16.0":"a #2 #3", "16.1":"a #2 #3", "16.2":"a #2 #3", "16.3":"a #2 #3", "16.4":"a #2 #3", "16.5":"a #2 #3", "16.6":"a #2 #3", "17.0":"a #2", "17.1":"a #2", "17.2":"a #2", "TP":"a #2" }, "opera":{ "9":"n", "9.5-9.6":"n", "10.0-10.1":"n", "10.5":"n", "10.6":"n", "11":"n", "11.1":"n", "11.5":"n", "11.6":"n", "12":"n", "12.1":"n", "15":"n", "16":"n", "17":"n", "18":"n", "19":"n", "20":"n", "21":"n", "22":"n", "23":"n", "24":"n", "25":"n", "26":"n", "27":"n", "28":"n", "29":"n", "30":"n", "31":"n", "32":"n", "33":"n", "34":"n", "35":"n", "36":"n", "37":"n", "38":"n", "39":"n", "40":"n", "41":"n", "42":"n", "43":"n", "44":"n", "45":"n", "46":"n", "47":"n", "48":"n", "49":"n", "50":"n", "51":"n", "52":"a #1", "53":"a #1", "54":"a #1", "55":"a #1", "56":"a #1", "57":"a #1", "58":"a #1", "60":"a #1", "62":"a #1", "63":"a #1", "64":"a #1", "65":"a #1", "66":"a #1", "67":"a #1", "68":"a #1", "69":"a #1", "70":"a #1", "71":"a #1", "72":"a #1", "73":"a #1", "74":"a #1", "75":"a #1", "76":"a #2", "77":"a #2", "78":"a #2", "79":"a #2", "80":"a #2", "81":"a #2", "82":"a #2", "83":"a #2", "84":"a #2", "85":"a #2", "86":"a #2", "87":"a #2", "88":"a #2", "89":"a #2", "90":"a #2", "91":"a #2", "92":"a #2", "93":"a #2", "94":"a #2", "95":"a #2", "96":"a #2", "97":"a #2", "98":"a #2", "99":"a #2", "100":"a #2", "101":"a #2", "102":"a #2", "103":"a #2", "104":"a #2" }, "ios_saf":{ "3.2":"n", "4.0-4.1":"n", "4.2-4.3":"n", "5.0-5.1":"n", "6.0-6.1":"n", "7.0-7.1":"n", "8":"n", "8.1-8.4":"n", "9.0-9.2":"n", "9.3":"n", "10.0-10.2":"n", "10.3":"n", "11.0-11.2":"n", "11.3-11.4":"a #1", "12.0-12.1":"a #1", "12.2-12.5":"a #1", "13.0-13.1":"a #1", "13.2":"a #1", "13.3":"a #1", "13.4-13.7":"a #2", "14.0-14.4":"a #2", "14.5-14.8":"a #2", "15.0-15.1":"a #2", "15.2-15.3":"a #2", "15.4":"a #2", "15.5":"a #2", "15.6-15.7":"a #2", "16.0":"a #2 #3", "16.1":"a #3", "16.2":"a #3", "16.3":"a #3", "16.4":"a #3", "16.5":"a #3", "16.6-16.7":"a #3", "17.0":"y", "17.1":"y", "17.2":"y" }, "op_mini":{ "all":"n" }, "android":{ "2.1":"n", "2.2":"n", "2.3":"n", "3":"n", "4":"n", "4.1":"n", "4.2-4.3":"n", "4.4":"n", "4.4.3-4.4.4":"n", "119":"a #2" }, "bb":{ "7":"n", "10":"n" }, "op_mob":{ "10":"n", "11":"n", "11.1":"n", "11.5":"n", "12":"n", "12.1":"n", "73":"a #2" }, "and_chr":{ "119":"a #2" }, "and_ff":{ "119":"a #2" }, "ie_mob":{ "10":"n", "11":"n" }, "and_uc":{ "15.5":"a #1" }, "samsung":{ "4":"n", "5.0-5.4":"n", "6.2-6.4":"n", "7.2-7.4":"n", "8.2":"n", "9.2":"a #1", "10.1":"a #1", "11.1-11.2":"a #1", "12.0":"a #1", "13.0":"a #1", "14.0":"a #1", "15.0":"a #2", "16.0":"a #2", "17.0":"a #2", "18.0":"a #2", "19.0":"a #2", "20":"a #2", "21":"a #2", "22":"a #2", "23":"a #2" }, "and_qq":{ "13.1":"a #1" }, "baidu":{ "13.18":"a #2" }, "kaios":{ "2.5":"a #1", "3.0-3.1":"a #2" } }, "notes":"", "notes_by_num":{ "1":"Partial support refers to [severe implementation bugs](https://hiddedevries.nl/en/blog/2018-04-21-more-accessible-markup-with-display-contents) that renders content inaccessible for many element types.", "2":"Buttons are not accessible with `display: contents` applied. See issues for [Chromium](https://bugs.chromium.org/p/chromium/issues/detail?id=1366037), [Firefox](https://bugzilla.mozilla.org/show_bug.cgi?id=1791648), and [WebKit](https://bugs.webkit.org/show_bug.cgi?id=255149)", "3":"HTML tables and nodes with ARIA roles `directory`, `grid`, `treegrid`, `table`, `row`, `gridcell`, `cell`, `columnheader`, `tree`, and `treeitem` are not accessible with `display: contents` applied. See WebKit bugs [239478](https://bugs.webkit.org/show_bug.cgi?id=239478), [239479](https://bugs.webkit.org/show_bug.cgi?id=239479), [239478](https://bugs.webkit.org/show_bug.cgi?id=239478), and [257458](https://bugs.webkit.org/show_bug.cgi?id=257458)" }, "usage_perc_y":4.24, "usage_perc_a":92.75, "ucprefix":false, "parent":"", "keywords":"", "chrome_id":"5663606012116992", "shown":true }