{ "title":"Shadow DOM v1", "description":"Method of establishing and maintaining functional boundaries between DOM trees and how these trees interact with each other within a document, thus enabling better functional encapsulation within the DOM & CSS.", "spec":"https://www.w3.org/TR/shadow-dom/", "status":"wd", "links":[ { "url":"https://bugs.webkit.org/show_bug.cgi?id=148695", "title":"Safari implementation bug" }, { "url":"https://bugzilla.mozilla.org/show_bug.cgi?id=1205323", "title":"Firefox implementation bug" }, { "url":"https://developers.google.com/web/fundamentals/primers/shadowdom/?hl=en", "title":"Google Developers - Shadow DOM v1: self-contained web components" } ], "bugs":[ ], "categories":[ "DOM" ], "stats":{ "ie":{ "5.5":"n", "6":"n", "7":"n", "8":"n", "9":"n", "10":"n", "11":"n" }, "edge":{ "12":"n", "13":"n", "14":"n" }, "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":"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" }, "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":"y", "54":"y", "55":"y", "56":"y", "57":"y" }, "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":"a #1", "TP":"a #1" }, "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":"y", "41":"y", "42":"y", "43":"y" }, "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-10.1":"a #1" }, "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", "53":"y" }, "bb":{ "7":"n", "10":"n" }, "op_mob":{ "10":"n", "11":"n", "11.1":"n", "11.5":"n", "12":"n", "12.1":"n", "37":"n" }, "and_chr":{ "54":"y" }, "and_ff":{ "50":"n" }, "ie_mob":{ "10":"n", "11":"n" }, "and_uc":{ "11":"n" }, "samsung":{ "4":"n" } }, "notes":"Shadow DOM v0 was implemented in Chrome/Opera but other browser vendors are implementing v1.", "notes_by_num":{ "1":"Certain CSS selectors do not work (`:host > .local-child`) and styling slotted content (`::slotted`) is buggy." }, "usage_perc_y":48.17, "usage_perc_a":8.45, "ucprefix":false, "parent":"", "keywords":"web components,shadow dom", "ie_id":"shadowdom", "chrome_id":"4667415417847808", "firefox_id":"shadow-dom", "webkit_id":"feature-shadow-dom", "shown":true }