CINXE.COM
CSS Object Model (CSSOM)
<!doctype html><html lang="en"> <head> <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <meta content="width=device-width, initial-scale=1, shrink-to-fit=no" name="viewport"> <title>CSS Object Model (CSSOM)</title> <meta content="ED" name="w3c-status"> <link href="https://www.w3.org/StyleSheets/TR/2021/W3C-ED" rel="stylesheet"> <meta content="Bikeshed version 60c422380, updated Thu Feb 20 19:11:22 2025 -0800" name="generator"> <link href="https://www.w3.org/TR/cssom-1/" rel="canonical"> <link href="https://drafts.csswg.org/csslogo.ico" rel="icon"> <meta content="3845f405525db5b389d1d2c673eb1bbe959e0bff" name="revision"> <meta content="dark light" name="color-scheme"> <link href="https://www.w3.org/StyleSheets/TR/2021/dark.css" media="(prefers-color-scheme: dark)" rel="stylesheet" type="text/css"> <style> main .atrisk::before { float: right; margin-top: -0.25em; padding: 0.5em 1em 0.5em 0; text-indent: -0.9em; border: 1px solid; content: '\25C0 Not yet widely implemented'; white-space: pre; font-size: small; background-color: white; color: gray; text-align: center; } </style> <style> .selected-text-file-an-issue { position: fixed; bottom: 0; right: 0; background: rgba(255, 255, 255, 0.8); font-size: smaller; padding: 4px 10px; z-index: 1; text-decoration: underline; } @media (max-width: 767px) { .selected-text-file-an-issue { left: 0; right: auto; text-align: left; } } </style> <style>/* Boilerplate: style-autolinks */ .css.css, .property.property, .descriptor.descriptor { color: var(--a-normal-text); font-size: inherit; font-family: inherit; } .css::before, .property::before, .descriptor::before { content: "‘"; } .css::after, .property::after, .descriptor::after { content: "’"; } .property, .descriptor { /* Don't wrap property and descriptor names */ white-space: nowrap; } .type { /* CSS value <type> */ font-style: italic; } pre .property::before, pre .property::after { content: ""; } [data-link-type="property"]::before, [data-link-type="propdesc"]::before, [data-link-type="descriptor"]::before, [data-link-type="value"]::before, [data-link-type="function"]::before, [data-link-type="at-rule"]::before, [data-link-type="selector"]::before, [data-link-type="maybe"]::before { content: "‘"; } [data-link-type="property"]::after, [data-link-type="propdesc"]::after, [data-link-type="descriptor"]::after, [data-link-type="value"]::after, [data-link-type="function"]::after, [data-link-type="at-rule"]::after, [data-link-type="selector"]::after, [data-link-type="maybe"]::after { content: "’"; } [data-link-type].production::before, [data-link-type].production::after, .prod [data-link-type]::before, .prod [data-link-type]::after { content: ""; } [data-link-type=element], [data-link-type=element-attr] { font-family: Menlo, Consolas, "DejaVu Sans Mono", monospace; font-size: .9em; } [data-link-type=element]::before { content: "<" } [data-link-type=element]::after { content: ">" } [data-link-type=biblio] { white-space: pre; } @media (prefers-color-scheme: dark) { :root { --selflink-text: black; --selflink-bg: silver; --selflink-hover-text: white; } } </style> <style>/* Boilerplate: style-colors */ /* Any --*-text not paired with a --*-bg is assumed to have a transparent bg */ :root { color-scheme: light dark; --text: black; --bg: white; --unofficial-watermark: url(https://www.w3.org/StyleSheets/TR/2016/logos/UD-watermark); --logo-bg: #1a5e9a; --logo-active-bg: #c00; --logo-text: white; --tocnav-normal-text: #707070; --tocnav-normal-bg: var(--bg); --tocnav-hover-text: var(--tocnav-normal-text); --tocnav-hover-bg: #f8f8f8; --tocnav-active-text: #c00; --tocnav-active-bg: var(--tocnav-normal-bg); --tocsidebar-text: var(--text); --tocsidebar-bg: #f7f8f9; --tocsidebar-shadow: rgba(0,0,0,.1); --tocsidebar-heading-text: hsla(203,20%,40%,.7); --toclink-text: var(--text); --toclink-underline: #3980b5; --toclink-visited-text: var(--toclink-text); --toclink-visited-underline: #054572; --heading-text: #005a9c; --hr-text: var(--text); --algo-border: #def; --del-text: red; --del-bg: transparent; --ins-text: #080; --ins-bg: transparent; --a-normal-text: #034575; --a-normal-underline: #bbb; --a-visited-text: var(--a-normal-text); --a-visited-underline: #707070; --a-hover-bg: rgba(75%, 75%, 75%, .25); --a-active-text: #c00; --a-active-underline: #c00; --blockquote-border: silver; --blockquote-bg: transparent; --blockquote-text: currentcolor; --issue-border: #e05252; --issue-bg: #fbe9e9; --issue-text: var(--text); --issueheading-text: #831616; --example-border: #e0cb52; --example-bg: #fcfaee; --example-text: var(--text); --exampleheading-text: #574b0f; --note-border: #52e052; --note-bg: #e9fbe9; --note-text: var(--text); --noteheading-text: hsl(120, 70%, 30%); --notesummary-underline: silver; --assertion-border: #aaa; --assertion-bg: #eee; --assertion-text: black; --advisement-border: orange; --advisement-bg: #fec; --advisement-text: var(--text); --advisementheading-text: #b35f00; --warning-border: red; --warning-bg: hsla(40,100%,50%,0.95); --warning-text: var(--text); --amendment-border: #330099; --amendment-bg: #F5F0FF; --amendment-text: var(--text); --amendmentheading-text: #220066; --def-border: #8ccbf2; --def-bg: #def; --def-text: var(--text); --defrow-border: #bbd7e9; --datacell-border: silver; --indexinfo-text: #707070; --indextable-hover-text: black; --indextable-hover-bg: #f7f8f9; --outdatedspec-bg: rgba(0, 0, 0, .5); --outdatedspec-text: black; --outdated-bg: maroon; --outdated-text: white; --outdated-shadow: red; --editedrec-bg: darkorange; } @media (prefers-color-scheme: dark) { :root { --text: #ddd; --bg: black; --unofficial-watermark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='400'%3E%3Cg fill='%23100808' transform='translate(200 200) rotate(-45) translate(-200 -200)' stroke='%23100808' stroke-width='3'%3E%3Ctext x='50%25' y='220' style='font: bold 70px sans-serif; text-anchor: middle; letter-spacing: 6px;'%3EUNOFFICIAL%3C/text%3E%3Ctext x='50%25' y='305' style='font: bold 70px sans-serif; text-anchor: middle; letter-spacing: 6px;'%3EDRAFT%3C/text%3E%3C/g%3E%3C/svg%3E"); --logo-bg: #1a5e9a; --logo-active-bg: #c00; --logo-text: white; --tocnav-normal-text: #999; --tocnav-normal-bg: var(--bg); --tocnav-hover-text: var(--tocnav-normal-text); --tocnav-hover-bg: #080808; --tocnav-active-text: #f44; --tocnav-active-bg: var(--tocnav-normal-bg); --tocsidebar-text: var(--text); --tocsidebar-bg: #080808; --tocsidebar-shadow: rgba(255,255,255,.1); --tocsidebar-heading-text: hsla(203,20%,40%,.7); --toclink-text: var(--text); --toclink-underline: #6af; --toclink-visited-text: var(--toclink-text); --toclink-visited-underline: #054572; --heading-text: #8af; --hr-text: var(--text); --algo-border: #456; --del-text: #f44; --del-bg: transparent; --ins-text: #4a4; --ins-bg: transparent; --a-normal-text: #6af; --a-normal-underline: #555; --a-visited-text: var(--a-normal-text); --a-visited-underline: var(--a-normal-underline); --a-hover-bg: rgba(25%, 25%, 25%, .2); --a-active-text: #f44; --a-active-underline: var(--a-active-text); --borderedblock-bg: rgba(255, 255, 255, .05); --blockquote-border: silver; --blockquote-bg: var(--borderedblock-bg); --blockquote-text: currentcolor; --issue-border: #e05252; --issue-bg: var(--borderedblock-bg); --issue-text: var(--text); --issueheading-text: hsl(0deg, 70%, 70%); --example-border: hsl(50deg, 90%, 60%); --example-bg: var(--borderedblock-bg); --example-text: var(--text); --exampleheading-text: hsl(50deg, 70%, 70%); --note-border: hsl(120deg, 100%, 35%); --note-bg: var(--borderedblock-bg); --note-text: var(--text); --noteheading-text: hsl(120, 70%, 70%); --notesummary-underline: silver; --assertion-border: #444; --assertion-bg: var(--borderedblock-bg); --assertion-text: var(--text); --advisement-border: orange; --advisement-bg: #222218; --advisement-text: var(--text); --advisementheading-text: #f84; --warning-border: red; --warning-bg: hsla(40,100%,20%,0.95); --warning-text: var(--text); --amendment-border: #330099; --amendment-bg: #080010; --amendment-text: var(--text); --amendmentheading-text: #cc00ff; --def-border: #8ccbf2; --def-bg: #080818; --def-text: var(--text); --defrow-border: #136; --datacell-border: silver; --indexinfo-text: #aaa; --indextable-hover-text: var(--text); --indextable-hover-bg: #181818; --outdatedspec-bg: rgba(255, 255, 255, .5); --outdatedspec-text: black; --outdated-bg: maroon; --outdated-text: white; --outdated-shadow: red; --editedrec-bg: darkorange; } /* In case a transparent-bg image doesn't expect to be on a dark bg, which is quite common in practice... */ img { background: white; } } </style> <style>/* Boilerplate: style-counters */ body { counter-reset: example figure issue; } .issue { counter-increment: issue; } .issue:not(.no-marker)::before { content: "Issue " counter(issue); } .example { counter-increment: example; } .example:not(.no-marker)::before { content: "Example " counter(example); } .invalid.example:not(.no-marker)::before, .illegal.example:not(.no-marker)::before { content: "Invalid Example" counter(example); } figcaption { counter-increment: figure; } figcaption:not(.no-marker)::before { content: "Figure " counter(figure) " "; } </style> <style>/* Boilerplate: style-dfn-panel */ :root { --dfnpanel-bg: #ddd; --dfnpanel-text: var(--text); --dfnpanel-target-bg: #ffc; --dfnpanel-target-outline: orange; } @media (prefers-color-scheme: dark) { :root { --dfnpanel-bg: #222; --dfnpanel-text: var(--text); --dfnpanel-target-bg: #333; --dfnpanel-target-outline: silver; } } .dfn-panel { position: absolute; z-index: 35; width: 20em; width: 300px; height: auto; max-height: 500px; overflow: auto; padding: 0.5em 0.75em; font: small Helvetica Neue, sans-serif, Droid Sans Fallback; background: var(--dfnpanel-bg); color: var(--dfnpanel-text); border: outset 0.2em; white-space: normal; /* in case it's moved into a pre */ } .dfn-panel:not(.on) { display: none; } .dfn-panel * { margin: 0; padding: 0; text-indent: 0; } .dfn-panel > b { display: block; } .dfn-panel a { color: var(--dfnpanel-text); } .dfn-panel a:not(:hover) { text-decoration: none !important; border-bottom: none !important; } .dfn-panel a:focus { outline: 5px auto Highlight; outline: 5px auto -webkit-focus-ring-color; } .dfn-panel > b + b { margin-top: 0.25em; } .dfn-panel ul { padding: 0 0 0 1em; list-style: none; } .dfn-panel li a { max-width: calc(300px - 1.5em - 1em); overflow: hidden; text-overflow: ellipsis; } .dfn-panel.activated { display: inline-block; position: fixed; left: 8px; bottom: 2em; margin: 0 auto; max-width: calc(100vw - 1.5em - .4em - .5em); max-height: 30vh; transition: left 1s ease-out, bottom 1s ease-out; } .dfn-panel .link-item:hover { text-decoration: underline; } .dfn-panel .link-item .copy-icon { opacity: 0; } .dfn-panel .link-item:hover .copy-icon, .dfn-panel .link-item .copy-icon:focus { opacity: 1; } .dfn-panel .copy-icon { display: inline-block; margin-right: 0.5em; width: 0.85em; height: 1em; border-radius: 3px; background-color: #ccc; cursor: pointer; } .dfn-panel .copy-icon .icon { width: 100%; height: 100%; background-color: #fff; display: flex; justify-content: center; align-items: center; position: relative; } .dfn-panel .copy-icon .icon::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 1px solid black; background-color: #ccc; opacity: 0.25; transform: translate(3px, -3px); } .dfn-panel .copy-icon:active .icon::before { opacity: 1; } .dfn-paneled[role="button"] { cursor: help; } .highlighted { animation: target-fade 3s; } @keyframes target-fade { from { background-color: var(--dfnpanel-target-bg); outline: 5px solid var(--dfnpanel-target-outline); } to { color: var(--a-normal-text); background-color: transparent; outline: transparent; } } </style> <style>/* Boilerplate: style-idl-highlighting */ pre.idl.highlight { background: var(--borderedblock-bg, var(--def-bg)); } </style> <style>/* Boilerplate: style-issues */ a[href].issue-return { float: right; float: inline-end; color: var(--issueheading-text); font-weight: bold; text-decoration: none; } </style> <style>/* Boilerplate: style-md-lists */ /* This is a weird hack for me not yet following the commonmark spec regarding paragraph and lists. */ [data-md] > :first-child { margin-top: 0; } [data-md] > :last-child { margin-bottom: 0; } </style> <style>/* Boilerplate: style-mdn-anno */ :root { --mdn-bg: #EEE; --mdn-shadow: #999; --mdn-nosupport-text: #ccc; --mdn-pass: green; --mdn-fail: red; } @media (prefers-color-scheme: dark) { :root { --mdn-bg: #222; --mdn-shadow: #444; --mdn-nosupport-text: #666; --mdn-pass: #690; --mdn-fail: #d22; } } .mdn-anno { background: var(--mdn-bg, #EEE); border-radius: .25em; box-shadow: 0 0 3px var(--mdn-shadow, #999); color: var(--text, black); font: 1em sans-serif; hyphens: none; max-width: min-content; overflow: hidden; padding: 0.2em; position: absolute; right: 0.3em; top: auto; white-space: nowrap; word-wrap: normal; z-index: 8; } .mdn-anno.unpositioned { display: none; } .mdn-anno.overlapping-main { opacity: .2; transition: opacity .1s; } .mdn-anno[open] { opacity: 1; z-index: 9; min-width: 9em; } .mdn-anno:hover { opacity: 1; outline: var(--text, black) 1px solid; } .mdn-anno > summary { font-weight: normal; text-align: right; cursor: pointer; display: block; } .mdn-anno > summary > .less-than-two-engines-flag { color: var(--mdn-fail); padding-right: 2px; } .mdn-anno > summary > .all-engines-flag { color: var(--mdn-pass); padding-right: 2px; } .mdn-anno > summary > span { color: #fff; background-color: #000; font-weight: normal; font-family: zillaslab, Palatino, "Palatino Linotype", serif; padding: 2px 3px 0px 3px; line-height: 1.3em; vertical-align: top; } .mdn-anno > .feature { margin-top: 20px; } .mdn-anno > .feature:not(:first-of-type) { border-top: 1px solid #999; margin-top: 6px; padding-top: 2px; } .mdn-anno > .feature > .less-than-two-engines-text { color: var(--mdn-fail); } .mdn-anno > .feature > .all-engines-text { color: var(--mdn-pass); } .mdn-anno > .feature > p { font-size: .75em; margin-top: 6px; margin-bottom: 0; } .mdn-anno > .feature > p + p { margin-top: 3px; } .mdn-anno > .feature > .support { display: block; font-size: 0.6em; margin: 0; padding: 0; margin-top: 2px; } .mdn-anno > .feature > .support + div { padding-top: 0.5em; } .mdn-anno > .feature > .support > hr { display: block; border: none; border-top: 1px dotted #999; padding: 3px 0px 0px 0px; margin: 2px 3px 0px 3px; } .mdn-anno > .feature > .support > hr::before { content: ""; } .mdn-anno > .feature > .support > span { padding: 0.2em 0; display: block; display: table; } .mdn-anno > .feature > .support > span.no { color: var(--mdn-nosupport-text); filter: grayscale(100%); } .mdn-anno > .feature > .support > span.no::before { opacity: 0.5; } .mdn-anno > .feature > .support > span:first-of-type { padding-top: 0.5em; } .mdn-anno > .feature > .support > span > span { padding: 0 0.5em; display: table-cell; } .mdn-anno > .feature > .support > span > span:first-child { width: 100%; } .mdn-anno > .feature > .support > span > span:last-child { width: 100%; white-space: pre; padding: 0; } .mdn-anno > .feature > .support > span::before { content: ' '; display: table-cell; min-width: 1.5em; height: 1.5em; background: no-repeat center center; background-size: contain; text-align: right; font-size: 0.75em; font-weight: bold; } .mdn-anno > .feature > .support > .chrome_android::before { background-image: url(https://resources.whatwg.org/browser-logos/chrome.svg); } .mdn-anno > .feature > .support > .firefox_android::before { background-image: url(https://resources.whatwg.org/browser-logos/firefox.png); } .mdn-anno > .feature > .support > .chrome::before { background-image: url(https://resources.whatwg.org/browser-logos/chrome.svg); } .mdn-anno > .feature > .support > .edge_blink::before { background-image: url(https://resources.whatwg.org/browser-logos/edge.svg); } .mdn-anno > .feature > .support > .edge::before { background-image: url(https://resources.whatwg.org/browser-logos/edge_legacy.svg); } .mdn-anno > .feature > .support > .firefox::before { background-image: url(https://resources.whatwg.org/browser-logos/firefox.png); } .mdn-anno > .feature > .support > .ie::before { background-image: url(https://resources.whatwg.org/browser-logos/ie.png); } .mdn-anno > .feature > .support > .safari_ios::before { background-image: url(https://resources.whatwg.org/browser-logos/safari-ios.svg); } .mdn-anno > .feature > .support > .nodejs::before { background-image: url(https://nodejs.org/favicon.ico); } .mdn-anno > .feature > .support > .opera_android::before { background-image: url(https://resources.whatwg.org/browser-logos/opera.svg); } .mdn-anno > .feature > .support > .opera::before { background-image: url(https://resources.whatwg.org/browser-logos/opera.svg); } .mdn-anno > .feature > .support > .safari::before { background-image: url(https://resources.whatwg.org/browser-logos/safari.png); } .mdn-anno > .feature > .support > .samsunginternet_android::before { background-image: url(https://resources.whatwg.org/browser-logos/samsung.svg); } .mdn-anno > .feature > .support > .webview_android::before { background-image: url(https://resources.whatwg.org/browser-logos/android-webview.png); } .name-slug-mismatch { color: red; } .caniuse-status:hover { z-index: 9; } /* dt, li, .issue, .note, and .example are "position: relative", so to put annotation at right margin, must move to right of containing block */; .h-entry:not(.status-LS) dt > .mdn-anno, .h-entry:not(.status-LS) li > .mdn-anno, .h-entry:not(.status-LS) .issue > .mdn-anno, .h-entry:not(.status-LS) .note > .mdn-anno, .h-entry:not(.status-LS) .example > .mdn-anno { right: -6.7em; } .h-entry p + .mdn-anno { margin-top: 0; } h2 + .mdn-anno.after { margin: -48px 0 0 0; } h3 + .mdn-anno.after { margin: -46px 0 0 0; } h4 + .mdn-anno.after { margin: -42px 0 0 0; } h5 + .mdn-anno.after { margin: -40px 0 0 0; } h6 + .mdn-anno.after { margin: -40px 0 0 0; } </style> <style>/* Boilerplate: style-ref-hints */ :root { --ref-hint-bg: #ddd; --ref-hint-text: var(--text); } @media (prefers-color-scheme: dark) { :root { --ref-hint-bg: #222; --ref-hint-text: var(--text); } } .ref-hint { display: inline-block; position: absolute; z-index: 35; width: 20em; width: 300px; height: auto; max-height: 500px; overflow: auto; padding: 0.5em 0.5em; font: small Helvetica Neue, sans-serif, Droid Sans Fallback; background: var(--ref-hint-bg); color: var(--ref-hint-text); border: outset 0.2em; white-space: normal; /* in case it's moved into a pre */ } .ref-hint * { margin: 0; padding: 0; text-indent: 0; } .ref-hint ul { padding: 0 0 0 1em; list-style: none; } </style> <style>/* Boilerplate: style-selflinks */ :root { --selflink-text: white; --selflink-bg: gray; --selflink-hover-text: black; } .heading, .issue, .note, .example, li, dt { position: relative; } a.self-link { position: absolute; top: 0; left: calc(-1 * (3.5rem - 26px)); width: calc(3.5rem - 26px); height: 2em; text-align: center; border: none; transition: opacity .2s; opacity: .5; } a.self-link:hover { opacity: 1; } .heading > a.self-link { font-size: 83%; } .example > a.self-link, .note > a.self-link, .issue > a.self-link { /* These blocks are overflow:auto, so positioning outside doesn't work. */ left: auto; right: 0; } li > a.self-link { left: calc(-1 * (3.5rem - 26px) - 2em); } dfn > a.self-link { top: auto; left: auto; opacity: 0; width: 1.5em; height: 1.5em; background: var(--selflink-bg); color: var(--selflink-text); font-style: normal; transition: opacity .2s, background-color .2s, color .2s; } dfn:hover > a.self-link { opacity: 1; } dfn > a.self-link:hover { color: var(--selflink-hover-text); } a.self-link::before { content: "¶"; } .heading > a.self-link::before { content: "§"; } dfn > a.self-link::before { content: "#"; } </style> <style>/* Boilerplate: style-syntax-highlighting */ code.highlight { padding: .1em; border-radius: .3em; } pre.highlight, pre > code.highlight { display: block; padding: 1em; margin: .5em 0; overflow: auto; border-radius: 0; } .highlight:not(.idl) { background: rgba(0, 0, 0, .03); } c-[a] { color: #990055 } /* Keyword.Declaration */ c-[b] { color: #990055 } /* Keyword.Type */ c-[c] { color: #708090 } /* Comment */ c-[d] { color: #708090 } /* Comment.Multiline */ c-[e] { color: #0077aa } /* Name.Attribute */ c-[f] { color: #669900 } /* Name.Tag */ c-[g] { color: #222222 } /* Name.Variable */ c-[k] { color: #990055 } /* Keyword */ c-[l] { color: #000000 } /* Literal */ c-[m] { color: #000000 } /* Literal.Number */ c-[n] { color: #0077aa } /* Name */ c-[o] { color: #999999 } /* Operator */ c-[p] { color: #999999 } /* Punctuation */ c-[s] { color: #a67f59 } /* Literal.String */ c-[t] { color: #a67f59 } /* Literal.String.Single */ c-[u] { color: #a67f59 } /* Literal.String.Double */ c-[cp] { color: #708090 } /* Comment.Preproc */ c-[c1] { color: #708090 } /* Comment.Single */ c-[cs] { color: #708090 } /* Comment.Special */ c-[kc] { color: #990055 } /* Keyword.Constant */ c-[kn] { color: #990055 } /* Keyword.Namespace */ c-[kp] { color: #990055 } /* Keyword.Pseudo */ c-[kr] { color: #990055 } /* Keyword.Reserved */ c-[ld] { color: #000000 } /* Literal.Date */ c-[nc] { color: #0077aa } /* Name.Class */ c-[no] { color: #0077aa } /* Name.Constant */ c-[nd] { color: #0077aa } /* Name.Decorator */ c-[ni] { color: #0077aa } /* Name.Entity */ c-[ne] { color: #0077aa } /* Name.Exception */ c-[nf] { color: #0077aa } /* Name.Function */ c-[nl] { color: #0077aa } /* Name.Label */ c-[nn] { color: #0077aa } /* Name.Namespace */ c-[py] { color: #0077aa } /* Name.Property */ c-[ow] { color: #999999 } /* Operator.Word */ c-[mb] { color: #000000 } /* Literal.Number.Bin */ c-[mf] { color: #000000 } /* Literal.Number.Float */ c-[mh] { color: #000000 } /* Literal.Number.Hex */ c-[mi] { color: #000000 } /* Literal.Number.Integer */ c-[mo] { color: #000000 } /* Literal.Number.Oct */ c-[sb] { color: #a67f59 } /* Literal.String.Backtick */ c-[sc] { color: #a67f59 } /* Literal.String.Char */ c-[sd] { color: #a67f59 } /* Literal.String.Doc */ c-[se] { color: #a67f59 } /* Literal.String.Escape */ c-[sh] { color: #a67f59 } /* Literal.String.Heredoc */ c-[si] { color: #a67f59 } /* Literal.String.Interpol */ c-[sx] { color: #a67f59 } /* Literal.String.Other */ c-[sr] { color: #a67f59 } /* Literal.String.Regex */ c-[ss] { color: #a67f59 } /* Literal.String.Symbol */ c-[vc] { color: #0077aa } /* Name.Variable.Class */ c-[vg] { color: #0077aa } /* Name.Variable.Global */ c-[vi] { color: #0077aa } /* Name.Variable.Instance */ c-[il] { color: #000000 } /* Literal.Number.Integer.Long */ @media (prefers-color-scheme: dark) { .highlight:not(.idl) { background: rgba(255, 255, 255, .05); } c-[a] { color: #d33682 } /* Keyword.Declaration */ c-[b] { color: #d33682 } /* Keyword.Type */ c-[c] { color: #2aa198 } /* Comment */ c-[d] { color: #2aa198 } /* Comment.Multiline */ c-[e] { color: #268bd2 } /* Name.Attribute */ c-[f] { color: #b58900 } /* Name.Tag */ c-[g] { color: #cb4b16 } /* Name.Variable */ c-[k] { color: #d33682 } /* Keyword */ c-[l] { color: #657b83 } /* Literal */ c-[m] { color: #657b83 } /* Literal.Number */ c-[n] { color: #268bd2 } /* Name */ c-[o] { color: #657b83 } /* Operator */ c-[p] { color: #657b83 } /* Punctuation */ c-[s] { color: #6c71c4 } /* Literal.String */ c-[t] { color: #6c71c4 } /* Literal.String.Single */ c-[u] { color: #6c71c4 } /* Literal.String.Double */ c-[ch] { color: #2aa198 } /* Comment.Hashbang */ c-[cp] { color: #2aa198 } /* Comment.Preproc */ c-[cpf] { color: #2aa198 } /* Comment.PreprocFile */ c-[c1] { color: #2aa198 } /* Comment.Single */ c-[cs] { color: #2aa198 } /* Comment.Special */ c-[kc] { color: #d33682 } /* Keyword.Constant */ c-[kn] { color: #d33682 } /* Keyword.Namespace */ c-[kp] { color: #d33682 } /* Keyword.Pseudo */ c-[kr] { color: #d33682 } /* Keyword.Reserved */ c-[ld] { color: #657b83 } /* Literal.Date */ c-[nc] { color: #268bd2 } /* Name.Class */ c-[no] { color: #268bd2 } /* Name.Constant */ c-[nd] { color: #268bd2 } /* Name.Decorator */ c-[ni] { color: #268bd2 } /* Name.Entity */ c-[ne] { color: #268bd2 } /* Name.Exception */ c-[nf] { color: #268bd2 } /* Name.Function */ c-[nl] { color: #268bd2 } /* Name.Label */ c-[nn] { color: #268bd2 } /* Name.Namespace */ c-[py] { color: #268bd2 } /* Name.Property */ c-[ow] { color: #657b83 } /* Operator.Word */ c-[mb] { color: #657b83 } /* Literal.Number.Bin */ c-[mf] { color: #657b83 } /* Literal.Number.Float */ c-[mh] { color: #657b83 } /* Literal.Number.Hex */ c-[mi] { color: #657b83 } /* Literal.Number.Integer */ c-[mo] { color: #657b83 } /* Literal.Number.Oct */ c-[sa] { color: #6c71c4 } /* Literal.String.Affix */ c-[sb] { color: #6c71c4 } /* Literal.String.Backtick */ c-[sc] { color: #6c71c4 } /* Literal.String.Char */ c-[dl] { color: #6c71c4 } /* Literal.String.Delimiter */ c-[sd] { color: #6c71c4 } /* Literal.String.Doc */ c-[se] { color: #6c71c4 } /* Literal.String.Escape */ c-[sh] { color: #6c71c4 } /* Literal.String.Heredoc */ c-[si] { color: #6c71c4 } /* Literal.String.Interpol */ c-[sx] { color: #6c71c4 } /* Literal.String.Other */ c-[sr] { color: #6c71c4 } /* Literal.String.Regex */ c-[ss] { color: #6c71c4 } /* Literal.String.Symbol */ c-[fm] { color: #268bd2 } /* Name.Function.Magic */ c-[vc] { color: #cb4b16 } /* Name.Variable.Class */ c-[vg] { color: #cb4b16 } /* Name.Variable.Global */ c-[vi] { color: #cb4b16 } /* Name.Variable.Instance */ c-[vm] { color: #cb4b16 } /* Name.Variable.Magic */ c-[il] { color: #657b83 } /* Literal.Number.Integer.Long */ } </style> <style>/* Boilerplate: style-var-click-highlighting */ /* Colors were chosen in Lab using https://nixsensor.com/free-color-converter/ D50 2deg illuminant, L in [0,100], a and b in [-128, 128] 0 = lab(85,0,85) 1 = lab(85,80,30) 2 = lab(85,-40,40) 3 = lab(85,-50,0) 4 = lab(85,5,15) 5 = lab(85,-10,-50) 6 = lab(85,35,-15) For darkmode: 0 = oklab(50% 0% 108%) 1 = oklab(50% -51% 51%) 2 = oklab(50% -64% -20%) 3 = oklab(50% 6% 19%) 4 = oklab(50% -12% -64%) 5 = oklab(50% 44% -19%) 6 = oklab(50% 102% 38%) */ [data-algorithm] var { cursor: pointer; } var[data-var-color] { background-color: var(--var-bg); box-shadow: 0 0 0 2px var(--var-bg); } var[data-var-color] { --var-bg: #F4D200; } var[data-var-color="1"] { --var-bg: #FF87A2; } var[data-var-color="2"] { --var-bg: #96E885; } var[data-var-color="3"] { --var-bg: #3EEED2; } var[data-var-color="4"] { --var-bg: #EACFB6; } var[data-var-color="5"] { --var-bg: #82DDFF; } var[data-var-color="6"] { --var-vg: #FFBCF2; } @media (prefers-color-scheme: dark) { var[data-var-color] { --var-bg: #bc1a00; } var[data-var-color="1"] { --var-bg: #007f00; } var[data-var-color="2"] { --var-bg: #008698; } var[data-var-color="3"] { --var-bg: #7f5b2b; } var[data-var-color="4"] { --var-bg: #004df3; } var[data-var-color="5"] { --var-bg: #a1248a; } var[data-var-color="6"] { --var-vg: #ff0000; } } </style> <style>/* Boilerplate: style-wpt */ :root { --wpt-border: hsl(0, 0%, 60%); --wpt-bg: hsl(0, 0%, 95%); --wpt-text: var(--text); --wptheading-text: hsl(0, 0%, 30%); } @media (prefers-color-scheme: dark) { :root { --wpt-border: hsl(0, 0%, 30%); --wpt-bg: var(--borderedblock-bg); --wpt-text: var(--text); --wptheading-text: hsl(0, 0%, 60%); } } .wpt-tests-block { list-style: none; border-left: .5em solid var(--wpt-border); background: var(--wpt-bg); color: var(--wpt-text); margin: 1em auto; padding: .5em; } .wpt-tests-block summary { color: var(--wptheading-text); font-weight: normal; text-transform: uppercase; } .wpt-tests-block summary::marker{ color: var(--wpt-border); } .wpt-tests-block summary:hover::marker{ color: var(--wpt-text); } /* The only content of a wpt test block in its closed state is the <summary>, which contains the word TESTS, and that is absolutely positioned. In that closed state, wpt test blocks are styled to have a top margin whose height is exactly equal to the height of the absolutely positioned <summary>, and no other background/padding/margin/border. The wpt test block elements will therefore allow the maring of the previous/next block elements to collapse through them; if this combined margin would be larger than its own top margin, it stays as is, and therefore the pre-existing vertical rhythm of the document is undisturbed. If that combined margin would be smaller, it is grown to that size. This means that the wpt test block ensures that there's always enough vertical space to insert the summary, without adding more than is needed. */ .wpt-tests-block:not([open]){ padding: 0; border: none; background: none; font-size: 0.75em; line-height: 1; position: relative; margin: 1em 0 0; } .wpt-tests-block:not([open]) summary { position: absolute; right: 0; bottom: 0; } /* It is possible that both the last child of a block element and the block element itself would be annotated with a <wpt> block each. If the block element has a padding or a border, that's fine, but otherwise the bottom margin of the block and of its last child would collapse and both <wpt> elements would overlap, being both placed there. To avoid that, add 1px of padding to the <wpt> element annotating the last child to prevent the bottom margin of the block and of its last child from collapsing (and as much negative margin, as wel only want to prevent margin collapsing, but are not trying to actually take more space). */ .wpt-tests-block:not([open]):last-child { padding-bottom: 1px; margin-bottom: -1px; } /* Exception to the previous rule: don't do that in non-last list items, because it's not necessary, and would therefore consume more space than strictly needed. Lists must have list items as children, not <wpt> elements, so a <wpt> element cannot be a sibling of a list item, and the collision that the previous rule avoids cannot happen. */ li:not(:last-child) > .wpt-tests-block:not([open]):last-child, dd:not(:last-child) > .wpt-tests-block:not([open]):last-child { padding-bottom: 0; margin-bottom: 0; } .wpt-tests-block:not([open]):not(:hover){ opacity: 0.5; } .wpt-tests-list { list-style: none; display: grid; margin: 0; padding: 0; grid-template-columns: 1fr max-content auto auto; grid-column-gap: .5em; } .wpt-tests-block hr:last-child { display: none; } .wpt-test { display: contents; } .wpt-test > a { text-decoration: underline; border: none; } .wpt-test > .wpt-name { grid-column: 1; } .wpt-test > .wpt-results { grid-column: 2; } .wpt-test > .wpt-live { grid-column: 3; } .wpt-test > .wpt-source { grid-column: 4; } .wpt-test > .wpt-results { display: flex; gap: .1em; } .wpt-test .wpt-result { display: inline-block; height: 1em; width: 1em; border-radius: 50%; position: relative; } </style> <body class="h-entry"> <div class="head"> <p data-fill-with="logo"><a class="logo" href="https://www.w3.org/"> <img alt="W3C" height="48" src="https://www.w3.org/StyleSheets/TR/2021/logos/W3C" width="72"> </a> </p> <h1 class="p-name no-ref" id="title">CSS Object Model (CSSOM)</h1> <p id="w3c-state"><a href="https://www.w3.org/standards/types/#ED">Editor’s Draft</a>, <time class="dt-updated" datetime="2024-10-01">1 October 2024</time></p> <details open> <summary>More details about this document</summary> <div data-fill-with="spec-metadata"> <dl> <dt>This version: <dd><a class="u-url" href="https://drafts.csswg.org/cssom/">https://drafts.csswg.org/cssom/</a> <dt>Latest published version: <dd><a href="https://www.w3.org/TR/cssom-1/">https://www.w3.org/TR/cssom-1/</a> <dt>Previous Versions: <dd><a href="https://www.w3.org/TR/2021/WD-cssom-1-20210826/" rel="prev">https://www.w3.org/TR/2021/WD-cssom-1-20210826/</a> <dd><a href="https://www.w3.org/TR/2016/WD-cssom-1-20160317/" rel="prev">https://www.w3.org/TR/2016/WD-cssom-1-20160317/</a> <dd><a href="https://www.w3.org/TR/2013/WD-cssom-20131205/" rel="prev">https://www.w3.org/TR/2013/WD-cssom-20131205/</a> <dd><a href="https://www.w3.org/TR/2011/WD-cssom-20110712/" rel="prev">https://www.w3.org/TR/2011/WD-cssom-20110712/</a> <dd><a href="https://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113/" rel="prev">https://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113/</a> <dt>Feedback: <dd><a href="https://github.com/w3c/csswg-drafts/labels/cssom-1">CSSWG Issues Repository</a> <dd><a href="#issues-index">Inline In Spec</a> <dt class="editor">Editors: <dd class="editor p-author h-card vcard" data-editor-id="13329"><a class="p-name fn u-email email" href="mailto:daniel.glazman@disruptive-innovations.com">Daniel Glazman</a> (<a class="p-org org" href="http://disruptive-innovations.com/">Disruptive Innovations</a>) <dd class="editor p-author h-card vcard" data-editor-id="106537"><a class="p-name fn u-email email" href="mailto:emilio@mozilla.com">Emilio Cobos Álvarez</a> (<span class="p-org org">Mozilla</span>) <dt class="editor">Former Editors: <dd class="editor p-author h-card vcard"><a class="p-name fn u-email email" href="mailto:simonp@opera.com">Simon Pieters</a> (<a class="p-org org" href="http://www.opera.com">Opera Software AS</a>) <dd class="editor p-author h-card vcard"><a class="p-name fn u-url url" href="http://www.w3.org/wiki/User:Gadams">Glenn Adams</a> (<a class="p-org org" href="http://www.cox.com">Cox Communications, Inc.</a>) <a class="u-email email" href="mailto:glenn.adams@cos.com">glenn.adams@cos.com</a> <dd class="editor p-author h-card vcard"><a class="p-name fn u-url url" href="https://annevankesteren.nl/">Anne van Kesteren</a> (<a class="p-org org" href="http://www.opera.com">Opera Software ASA</a>) <a class="u-email email" href="mailto:annevk@annevk.nl">annevk@annevk.nl</a> <dt>Suggest an Edit for this Spec: <dd><a href="https://github.com/w3c/csswg-drafts/blob/main/cssom-1/Overview.bs">GitHub Editor</a> <dt>Legacy issues list: <dd><a href="https://www.w3.org/Bugs/Public/buglist.cgi?product=CSS&component=CSSOM&resolution=---">Bugzilla</a> </dl> </div> </details> <div data-fill-with="warning"></div> <p class="copyright" data-fill-with="copyright"><a href="https://www.w3.org/policies/#copyright">Copyright</a> © 2024 <a href="https://www.w3.org/">World Wide Web Consortium</a>. <abbr title="World Wide Web Consortium">W3C</abbr><sup>®</sup> <a href="https://www.w3.org/policies/#Legal_Disclaimer">liability</a>, <a href="https://www.w3.org/policies/#W3C_Trademarks">trademark</a> and <a href="https://www.w3.org/copyright/software-license/" rel="license" title="W3C Software and Document License">permissive document license</a> rules apply. </p> <hr title="Separator for header"> </div> <div class="p-summary" data-fill-with="abstract"> <h2 class="no-num no-toc no-ref heading settled" id="abstract"><span class="content">Abstract</span></h2> <p>CSSOM defines APIs (including generic parsing and serialization rules) for Media Queries, Selectors, and of course CSS itself.</p> <a href="https://www.w3.org/TR/CSS/">CSS</a> is a language for describing the rendering of structured documents (such as HTML and XML) on screen, on paper, etc. <script> const githubPrefix = "https://w3c.github.io/csswg-drafts/"; if(location.href.slice(0, githubPrefix.length) == githubPrefix) { const suffix = location.href.slice(githubPrefix.length); const draftUrl = "https://drafts.csswg.org/" + suffix; window.location.replace(draftUrl); } </script> </div> <h2 class="no-num no-toc no-ref heading settled" id="sotd"><span class="content">Status of this document</span></h2> <div data-fill-with="status"> <p> This is a public copy of the editors’ draft. It is provided for discussion only and may change at any moment. Its publication here does not imply endorsement of its contents by W3C. Don’t cite this document other than as work in progress. </p> <p>Please send feedback by <a href="https://github.com/w3c/csswg-drafts/issues">filing issues in GitHub</a> (preferred), including the spec code “cssom” in the title, like this: “[cssom] <i>…summary of comment…</i>”. All issues and comments are <a href="https://lists.w3.org/Archives/Public/public-css-archive/">archived</a>. Alternately, feedback can be sent to the (<a href="https://lists.w3.org/Archives/Public/www-style/">archived</a>) public mailing list <a href="mailto:www-style@w3.org?Subject=%5Bcssom%5D%20PUT%20SUBJECT%20HERE">www-style@w3.org</a>. </p> <p>This document is governed by the <a href="https://www.w3.org/policies/process/20231103/" id="w3c_process_revision">03 November 2023 W3C Process Document</a>. </p> </div> <div data-fill-with="at-risk"></div> <nav data-fill-with="table-of-contents" id="toc"> <h2 class="no-num no-toc no-ref" id="contents">Table of Contents</h2> <ol class="toc" role="directory"> <li><a href="#introduction"><span class="secno">1</span> <span class="content">Introduction</span></a> <li> <a href="#terminology"><span class="secno">2</span> <span class="content">Terminology</span></a> <ol class="toc"> <li><a href="#common-serializing-idioms"><span class="secno">2.1</span> <span class="content">Common Serializing Idioms</span></a> </ol> <li><a href="#cssomstring-type"><span class="secno">3</span> <span class="content">CSSOMString</span></a> <li> <a href="#media-queries"><span class="secno">4</span> <span class="content">Media Queries</span></a> <ol class="toc"> <li><a href="#parsing-media-queries"><span class="secno">4.1</span> <span class="content">Parsing Media Queries</span></a> <li> <a href="#serializing-media-queries"><span class="secno">4.2</span> <span class="content">Serializing Media Queries</span></a> <ol class="toc"> <li><a href="#serializing-media-feature-values"><span class="secno">4.2.1</span> <span class="content">Serializing Media Feature Values</span></a> </ol> <li><a href="#comparing-media-queries"><span class="secno">4.3</span> <span class="content">Comparing Media Queries</span></a> <li><a href="#the-medialist-interface"><span class="secno">4.4</span> <span class="content">The <code class="idl"><span>MediaList</span></code> Interface</span></a> </ol> <li> <a href="#selectors"><span class="secno">5</span> <span class="content">Selectors</span></a> <ol class="toc"> <li><a href="#parsing-selectors"><span class="secno">5.1</span> <span class="content">Parsing Selectors</span></a> <li><a href="#serializing-selectors"><span class="secno">5.2</span> <span class="content">Serializing Selectors</span></a> </ol> <li> <a href="#css-object-model"><span class="secno">6</span> <span class="content">CSS</span></a> <ol class="toc"> <li> <a href="#css-style-sheets"><span class="secno">6.1</span> <span class="content">CSS Style Sheets</span></a> <ol class="toc"> <li><a href="#the-stylesheet-interface"><span class="secno">6.1.1</span> <span class="content">The <code class="idl"><span>StyleSheet</span></code> Interface</span></a> <li> <a href="#the-cssstylesheet-interface"><span class="secno">6.1.2</span> <span class="content">The <code class="idl"><span>CSSStyleSheet</span></code> Interface</span></a> <ol class="toc"> <li><a href="#legacy-css-style-sheet-members"><span class="secno">6.1.2.1</span> <span class="content">Deprecated CSSStyleSheet members</span></a> </ol> </ol> <li> <a href="#css-style-sheet-collections"><span class="secno">6.2</span> <span class="content">CSS Style Sheet Collections</span></a> <ol class="toc"> <li><a href="#the-http-default-style-header"><span class="secno">6.2.1</span> <span class="content">The HTTP Default-Style Header</span></a> <li><a href="#the-stylesheetlist-interface"><span class="secno">6.2.2</span> <span class="content">The <code class="idl"><span>StyleSheetList</span></code> Interface</span></a> <li><a href="#extensions-to-the-document-or-shadow-root-interface"><span class="secno">6.2.3</span> <span class="content">Extensions to the <code class="idl"><span>DocumentOrShadowRoot</span></code> Interface Mixin</span></a> </ol> <li> <a href="#style-sheet-association"><span class="secno">6.3</span> <span class="content">Style Sheet Association</span></a> <ol class="toc"> <li><a href="#fetching-css-style-sheets"><span class="secno">6.3.1</span> <span class="content">Fetching CSS style sheets</span></a> <li><a href="#the-linkstyle-interface"><span class="secno">6.3.2</span> <span class="content">The <code class="idl"><span>LinkStyle</span></code> Interface</span></a> <li><a href="#requirements-on-specifications"><span class="secno">6.3.3</span> <span class="content">Requirements on specifications</span></a> <li><a href="#requirements-on-user-agents-implementing-the-xml-stylesheet-processing-instruction"><span class="secno">6.3.4</span> <span class="content">Requirements on user agents Implementing the xml-stylesheet processing instruction</span></a> <li><a href="#requirements-on-user-agents-implementing-the-http-link-header"><span class="secno">6.3.5</span> <span class="content">Requirements on user agents Implementing the HTTP Link Header</span></a> </ol> <li> <a href="#css-rules"><span class="secno">6.4</span> <span class="content">CSS Rules</span></a> <ol class="toc"> <li><a href="#the-cssrulelist-interface"><span class="secno">6.4.1</span> <span class="content">The <code class="idl"><span>CSSRuleList</span></code> Interface</span></a> <li><a href="#the-cssrule-interface"><span class="secno">6.4.2</span> <span class="content">The <code class="idl"><span>CSSRule</span></code> Interface</span></a> <li><a href="#the-cssstylerule-interface"><span class="secno">6.4.3</span> <span class="content">The <code class="idl"><span>CSSStyleRule</span></code> Interface</span></a> <li><a href="#the-cssimportrule-interface"><span class="secno">6.4.4</span> <span class="content">The <code class="idl"><span>CSSImportRule</span></code> Interface</span></a> <li><a href="#the-cssgroupingrule-interface"><span class="secno">6.4.5</span> <span class="content">The <code class="idl"><span>CSSGroupingRule</span></code> Interface</span></a> <li><a href="#the-cssmediarule-interface"><span class="secno">6.4.6</span> <span class="content">The <code class="idl"><span>CSSMediaRule</span></code> Interface</span></a> <li><a href="#the-csspagerule-interface"><span class="secno">6.4.7</span> <span class="content">The <code class="idl"><span>CSSPageRule</span></code> Interface</span></a> <li><a href="#the-cssmarginrule-interface"><span class="secno">6.4.8</span> <span class="content">The <code class="idl"><span>CSSMarginRule</span></code> Interface</span></a> <li><a href="#the-cssnamespacerule-interface"><span class="secno">6.4.9</span> <span class="content">The <code class="idl"><span>CSSNamespaceRule</span></code> Interface</span></a> </ol> <li><a href="#css-declarations"><span class="secno">6.5</span> <span class="content">CSS Declarations</span></a> <li> <a href="#css-declaration-blocks"><span class="secno">6.6</span> <span class="content">CSS Declaration Blocks</span></a> <ol class="toc"> <li><a href="#the-cssstyledeclaration-interface"><span class="secno">6.6.1</span> <span class="content">The <code class="idl"><span>CSSStyleDeclaration</span></code> Interface</span></a> </ol> <li> <a href="#css-values"><span class="secno">6.7</span> <span class="content">CSS Values</span></a> <ol class="toc"> <li><a href="#parsing-css-values"><span class="secno">6.7.1</span> <span class="content">Parsing CSS Values</span></a> <li> <a href="#serializing-css-values"><span class="secno">6.7.2</span> <span class="content">Serializing CSS Values</span></a> <ol class="toc"> <li><a href="#serializing-css-values-examples"><span class="secno">6.7.2.1</span> <span class="content">Examples</span></a> </ol> </ol> </ol> <li> <a href="#dom-access-to-css-declaration-blocks"><span class="secno">7</span> <span class="content">DOM Access to CSS Declaration Blocks</span></a> <ol class="toc"> <li><a href="#the-elementcssinlinestyle-mixin"><span class="secno">7.1</span> <span class="content"> The <code class="idl"><span>ElementCSSInlineStyle</span></code> Mixin</span></a> <li><a href="#extensions-to-the-window-interface"><span class="secno">7.2</span> <span class="content">Extensions to the <code class="idl"><span>Window</span></code> Interface</span></a> </ol> <li> <a href="#utility-apis"><span class="secno">8</span> <span class="content">Utility APIs</span></a> <ol class="toc"> <li><a href="#the-css.escape()-method"><span class="secno">8.1</span> <span class="content">The <code>CSS.escape()</code> Method</span></a> </ol> <li><a href="#resolved-values"><span class="secno">9</span> <span class="content">Resolved Values</span></a> <li> <a href="#iana-considerations"><span class="secno">10</span> <span class="content">IANA Considerations</span></a> <ol class="toc"> <li><a href="#default-style"><span class="secno">10.1</span> <span class="content">Default-Style</span></a> </ol> <li> <a href="#change-history"><span class="secno">11</span> <span class="content">Change History</span></a> <ol class="toc"> <li><a href="#changes-from-17-march-2016"><span class="secno">11.1</span> <span class="content">Changes From 17 March 2016</span></a> <li><a href="#changes-from-5-december-2013"><span class="secno">11.2</span> <span class="content">Changes From 5 December 2013</span></a> <li><a href="#changes-from-12-july-2011-to-5-december-2013"><span class="secno">11.3</span> <span class="content">Changes From 12 July 2011 To 5 December 2013</span></a> </ol> <li><a href="#security-and-privacy-considerations"><span class="secno">12</span> <span class="content">Security and Privacy Considerations</span></a> <li><a href="#acknowledgments"><span class="secno">13</span> <span class="content">Acknowledgments</span></a> <li> <a href="#w3c-conformance"><span class="secno"></span> <span class="content"> Conformance</span></a> <ol class="toc"> <li><a href="#w3c-conventions"><span class="secno"></span> <span class="content"> Document conventions</span></a> <li><a href="#w3c-conformance-classes"><span class="secno"></span> <span class="content"> Conformance classes</span></a> <li> <a href="#w3c-partial"><span class="secno"></span> <span class="content"> Partial implementations</span></a> <ol class="toc"> <li><a href="#w3c-conform-future-proofing"><span class="secno"></span> <span class="content"> Implementations of Unstable and Proprietary Features</span></a> </ol> <li><a href="#w3c-testing"><span class="secno"></span> <span class="content"> Non-experimental implementations</span></a> </ol> <li> <a href="#index"><span class="secno"></span> <span class="content">Index</span></a> <ol class="toc"> <li><a href="#index-defined-here"><span class="secno"></span> <span class="content">Terms defined by this specification</span></a> <li><a href="#index-defined-elsewhere"><span class="secno"></span> <span class="content">Terms defined by reference</span></a> </ol> <li> <a href="#references"><span class="secno"></span> <span class="content">References</span></a> <ol class="toc"> <li><a href="#normative"><span class="secno"></span> <span class="content">Normative References</span></a> <li><a href="#informative"><span class="secno"></span> <span class="content">Informative References</span></a> </ol> <li><a href="#idl-index"><span class="secno"></span> <span class="content">IDL Index</span></a> <li><a href="#issues-index"><span class="secno"></span> <span class="content">Issues Index</span></a> </ol> </nav> <main> <script async data-file-issue-url="https://github.com/w3c/csswg-drafts/issues/new?title=%5Bcssom%5D%20" src="https://resources.whatwg.org/file-issue.js"></script> <h2 class="heading settled" data-level="1" id="introduction"><span class="secno">1. </span><span class="content">Introduction</span><a class="self-link" href="#introduction"></a></h2> <p>This document formally specifies the core features of the CSS Object Model (CSSOM). Other documents in the CSSOM family of specifications as well as other CSS related specifications define extensions to these core features.</p> <p>The core features of the CSSOM are oriented towards providing basic capabilities to author-defined scripts to permit access to and manipulation of style related state information and processes.</p> <p>The features defined below are fundamentally based on prior specifications of the W3C DOM Working Group, primarily <a data-link-type="biblio" href="#biblio-dom" title="DOM Standard">[DOM]</a>. The purposes of the present document are (1) to improve on that prior work by providing more technical specificity (so as to improve testability and interoperability), (2) to deprecate or remove certain less-widely implemented features no longer considered to be essential in this context, and (3) to newly specify certain extensions that have been or expected to be widely implemented.</p> <h2 class="heading settled" data-level="2" id="terminology"><span class="secno">2. </span><span class="content">Terminology</span><a class="self-link" href="#terminology"></a></h2> <p>This specification employs certain terminology from the following documents: <cite>DOM</cite>, <cite>HTML</cite>, <cite>CSS Syntax</cite>, <cite>Encoding</cite>, <cite>URL</cite>, <cite>Fetch</cite>, <cite>Associating Style Sheets with XML documents</cite> and <cite>XML</cite>. <a data-link-type="biblio" href="#biblio-dom" title="DOM Standard">[DOM]</a> <a data-link-type="biblio" href="#biblio-html" title="HTML Standard">[HTML]</a> <a data-link-type="biblio" href="#biblio-css3syn" title="CSS Syntax Module Level 3">[CSS3SYN]</a> <a data-link-type="biblio" href="#biblio-encoding" title="Encoding Standard">[ENCODING]</a> <a data-link-type="biblio" href="#biblio-url" title="URL Standard">[URL]</a> <a data-link-type="biblio" href="#biblio-fetch" title="Fetch Standard">[FETCH]</a> <a data-link-type="biblio" href="#biblio-xml-stylesheet" title="Associating Style Sheets with XML documents 1.0 (Second Edition)">[XML-STYLESHEET]</a> <a data-link-type="biblio" href="#biblio-xml" title="Extensible Markup Language (XML) 1.0 (Fifth Edition)">[XML]</a></p> <p>When this specification talks about object <code><var>A</var></code> where <code><var>A</var></code> is actually an interface, it generally means an object implementing interface <code><var>A</var></code>.</p> <p>The terms <dfn class="dfn-paneled" data-dfn-type="dfn" data-noexport id="set">set</dfn> and <dfn class="dfn-paneled" data-dfn-type="dfn" data-noexport id="unset">unset</dfn> to refer to the true and false values of binary flags or variables, respectively. These terms are also used as verbs in which case they refer to mutating some value to make it true or false, respectively.</p> <p>The term <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="supported-styling-language">supported styling language</dfn> refers to CSS.</p> <p class="note" role="note"><span class="marker">Note:</span> If another styling language becomes supported in user agents, this specification is expected to be updated as necessary.</p> <p>The term <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="supported-css-property">supported CSS property</dfn> refers to a CSS property that the user agent implements, including any vendor-prefixed properties, but excluding <a data-link-type="dfn" href="https://drafts.csswg.org/css-variables-1/#custom-property" id="ref-for-custom-property">custom properties</a>. A <a data-link-type="dfn" href="#supported-css-property" id="ref-for-supported-css-property">supported CSS property</a> must be in its lowercase form for the purpose of comparisons in this specification.</p> <p>In this specification the <a class="css" data-link-type="maybe" href="https://drafts.csswg.org/selectors-3/#sel-before" id="ref-for-sel-before">::before</a> and <a class="css" data-link-type="maybe" href="https://drafts.csswg.org/selectors-3/#sel-after" id="ref-for-sel-after">::after</a> pseudo-elements are assumed to exist for all elements even if no box is generated for them.</p> <p>When a method or an attribute is said to call another method or attribute, the user agent must invoke its internal API for that attribute or method so that e.g. the author can’t change the behavior by overriding attributes or methods with custom properties or functions in ECMAScript.</p> <p>Unless otherwise stated, string comparisons are done in a <a data-link-type="dfn">case-sensitive</a> manner.</p> <h3 class="heading settled" data-level="2.1" id="common-serializing-idioms"><span class="secno">2.1. </span><span class="content">Common Serializing Idioms</span><a class="self-link" href="#common-serializing-idioms"></a></h3> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="escape-a-character">escape a character</dfn> means to create a string of "<code>\</code>" (U+005C), followed by the character.</p> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-lt="escape a character as code point|escaped as code point" data-noexport id="escape-a-character-as-code-point">escape a character as code point</dfn> means to create a string of "<code>\</code>" (U+005C), followed by the Unicode code point as the smallest possible number of hexadecimal digits in the range 0-9 a-f (U+0030 to U+0039 and U+0061 to U+0066) to represent the code point in base 16, followed by a single SPACE (U+0020).</p> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-an-identifier">serialize an identifier</dfn> means to create a string represented by the concatenation of, for each character of the identifier:</p> <ul> <li>If the character is NULL (U+0000), then the REPLACEMENT CHARACTER (U+FFFD). <li>If the character is in the range [\1-\1f] (U+0001 to U+001F) or is U+007F, then the character <a data-link-type="dfn" href="#escape-a-character-as-code-point" id="ref-for-escape-a-character-as-code-point">escaped as code point</a>. <li>If the character is the first character and is in the range [0-9] (U+0030 to U+0039), then the character <a data-link-type="dfn" href="#escape-a-character-as-code-point" id="ref-for-escape-a-character-as-code-point①">escaped as code point</a>. <li>If the character is the second character and is in the range [0-9] (U+0030 to U+0039) and the first character is a "<code>-</code>" (U+002D), then the character <a data-link-type="dfn" href="#escape-a-character-as-code-point" id="ref-for-escape-a-character-as-code-point②">escaped as code point</a>. <li>If the character is the first character and is a "<code>-</code>" (U+002D), and there is no second character, then the <a data-link-type="dfn" href="#escape-a-character" id="ref-for-escape-a-character">escaped</a> character. <li>If the character is not handled by one of the above rules and is greater than or equal to U+0080, is "<code>-</code>" (U+002D) or "<code>_</code>" (U+005F), or is in one of the ranges [0-9] (U+0030 to U+0039), [A-Z] (U+0041 to U+005A), or [a-z] (U+0061 to U+007A), then the character itself. <li>Otherwise, the <a data-link-type="dfn" href="#escape-a-character" id="ref-for-escape-a-character①">escaped</a> character. </ul> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-string">serialize a string</dfn> means to create a string represented by '"' (U+0022), followed by the result of applying the rules below to each character of the given string, followed by '"' (U+0022):</p> <ul> <li>If the character is NULL (U+0000), then the REPLACEMENT CHARACTER (U+FFFD). <li>If the character is in the range [\1-\1f] (U+0001 to U+001F) or is U+007F, the character <a data-link-type="dfn" href="#escape-a-character-as-code-point" id="ref-for-escape-a-character-as-code-point③">escaped as code point</a>. <li>If the character is '"' (U+0022) or "<code>\</code>" (U+005C), the <a data-link-type="dfn" href="#escape-a-character" id="ref-for-escape-a-character②">escaped</a> character. <li>Otherwise, the character itself. </ul> <p class="note" role="note"><span class="marker">Note:</span> "<code>'</code>" (U+0027) is not escaped because strings are always serialized with '"' (U+0022).</p> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-url">serialize a URL</dfn> means to create a string represented by "<code>url(</code>", followed by the <a data-link-type="dfn" href="#serialize-a-string" id="ref-for-serialize-a-string">serialization</a> of the URL as a string, followed by "<code>)</code>".</p> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-local">serialize a LOCAL</dfn> means to create a string represented by "<code>local(</code>", followed by the <a data-link-type="dfn" href="#serialize-a-string" id="ref-for-serialize-a-string①">serialization</a> of the LOCAL as a string, followed by "<code>)</code>".</p> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-comma-separated-list">serialize a comma-separated list</dfn> concatenate all items of the list in list order while separating them by "<code>, </code>", i.e., COMMA (U+002C) followed by a single SPACE (U+0020).</p> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-whitespace-separated-list">serialize a whitespace-separated list</dfn> concatenate all items of the list in list order while separating them by "<code> </code>", i.e., a single SPACE (U+0020).</p> <p class="note" role="note"><span class="marker">Note:</span> When serializing a list according to the above rules, extraneous whitespace is not inserted prior to the first item or subsequent to the last item. Unless otherwise specified, an empty list is serialized as the empty string.</p> <h2 class="heading settled" data-level="3" id="cssomstring-type"><span class="secno">3. </span><span class="content">CSSOMString</span><a class="self-link" href="#cssomstring-type"></a></h2> <p>Most strings in CSSOM interfaces use the <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="cssomstring"><code>CSSOMString</code></dfn> type. Each implementation chooses to define it as either <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#idl-USVString" id="ref-for-idl-USVString">USVString</a></code> or <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#idl-DOMString" id="ref-for-idl-DOMString">DOMString</a></code>:</p> <pre class="def lang-webidl highlight"><c- b>typedef</c-> <c- b>USVString</c-> <c- g>CSSOMString</c->; </pre> <p>Or, alternatively:</p> <pre class="def lang-webidl highlight"><c- b>typedef</c-> <c- b>DOMString</c-> <c- g>CSSOMString</c->; </pre> <div class="note" role="note"> The difference is only observable from web content when <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#surrogate" id="ref-for-surrogate">surrogate</a> code units are involved. <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#idl-DOMString" id="ref-for-idl-DOMString①">DOMString</a></code> would preserve them, whereas <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#idl-USVString" id="ref-for-idl-USVString①">USVString</a></code> would replace them with U+FFFD REPLACEMENT CHARACTER. <p>This choice effectively allows implementations to do this replacement, but does not require it.</p> <p>Using <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#idl-USVString" id="ref-for-idl-USVString②">USVString</a></code> enables an implementation to use UTF-8 internally to represent strings in memory. Since well-formed UTF-8 specifically disallows <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#surrogate" id="ref-for-surrogate①">surrogate</a> code points, it effectively requires this replacement.</p> <p>On the other hand, implementations that internally represent strings as 16-bit <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#code-unit" id="ref-for-code-unit">code units</a> might prefer to avoid the cost of doing this replacement.</p> </div> <h2 class="heading settled" data-level="4" id="media-queries"><span class="secno">4. </span><span class="content">Media Queries</span><a class="self-link" href="#media-queries"></a></h2> <p><a data-link-type="dfn" href="https://drafts.csswg.org/mediaqueries-5/#media-query" id="ref-for-media-query">Media queries</a> are defined by <a data-link-type="biblio" href="#biblio-mediaqueries" title="Media Queries Level 4">[MEDIAQUERIES]</a>. This section defines various concepts around <span id="ref-for-media-query①">media queries</span>, including their API and serialization form.</p> <h3 class="heading settled" data-level="4.1" id="parsing-media-queries"><span class="secno">4.1. </span><span class="content">Parsing Media Queries</span><a class="self-link" href="#parsing-media-queries"></a></h3> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="parse-a-media-query-list">parse a media query list</dfn> for a given string <var>s</var> into a <a data-link-type="dfn" href="https://drafts.csswg.org/mediaqueries-5/#media-query-list" id="ref-for-media-query-list">media query list</a> is defined in the Media Queries specification. Return the list of media queries that the algorithm defined there gives. </p> <p class="note" role="note"><span class="marker">Note:</span> A media query that ends up being "ignored" will turn into "<code>not all</code>".</p> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="parse-a-media-query">parse a media query</dfn> for a given string <var>s</var> means to follow the <a data-link-type="dfn" href="#parse-a-media-query-list" id="ref-for-parse-a-media-query-list">parse a media query list</a> steps and return null if more than one media query is returned or a media query if a single media query is returned.</p> <p class="note" role="note"><span class="marker">Note:</span> Again, a media query that ends up being "ignored" will turn into "<code>not all</code>".</p> <h3 class="heading settled" data-level="4.2" id="serializing-media-queries"><span class="secno">4.2. </span><span class="content">Serializing Media Queries</span><a class="self-link" href="#serializing-media-queries"></a></h3> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-media-query-list">serialize a media query list</dfn> run these steps:</p> <ol> <li>If the <a data-link-type="dfn" href="https://drafts.csswg.org/mediaqueries-5/#media-query-list" id="ref-for-media-query-list①">media query list</a> is empty, then return the empty string. <li><a data-link-type="dfn" href="#serialize-a-media-query" id="ref-for-serialize-a-media-query">Serialize</a> each media query in the list of media queries, in the same order as they appear in the <a data-link-type="dfn" href="https://drafts.csswg.org/mediaqueries-5/#media-query-list" id="ref-for-media-query-list②">media query list</a>, and then <a data-link-type="dfn" href="#serialize-a-comma-separated-list" id="ref-for-serialize-a-comma-separated-list">serialize</a> the list. </ol> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-media-query">serialize a media query</dfn> let <var>s</var> be the empty string, run the steps below:</p> <ol> <li>If the <a data-link-type="dfn" href="https://drafts.csswg.org/mediaqueries-5/#media-query" id="ref-for-media-query②">media query</a> is negated append "<code>not</code>", followed by a single SPACE (U+0020), to <var>s</var>. <li>Let <var>type</var> be the <a data-link-type="dfn" href="#serialize-an-identifier" id="ref-for-serialize-an-identifier">serialization as an identifier</a> of the <a data-link-type="dfn" href="https://drafts.csswg.org/mediaqueries-5/#media-type" id="ref-for-media-type">media type</a> of the <a data-link-type="dfn" href="https://drafts.csswg.org/mediaqueries-5/#media-query" id="ref-for-media-query③">media query</a>, <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#ascii-lowercase" id="ref-for-ascii-lowercase">converted to ASCII lowercase</a>. <li>If the <a data-link-type="dfn" href="https://drafts.csswg.org/mediaqueries-5/#media-query" id="ref-for-media-query④">media query</a> does not contain <a data-link-type="dfn" href="https://drafts.csswg.org/mediaqueries-5/#media-feature" id="ref-for-media-feature">media features</a> append <var>type</var>, to <var>s</var>, then return <var>s</var>. <li>If <var>type</var> is not "<code>all</code>" or if the media query is negated append <var>type</var>, followed by a single SPACE (U+0020), followed by "<code>and</code>", followed by a single SPACE (U+0020), to <var>s</var>. <li> Then, for each <a data-link-type="dfn" href="https://drafts.csswg.org/mediaqueries-5/#media-feature" id="ref-for-media-feature①">media feature</a>: <ol> <li>Append a "<code>(</code>" (U+0028), followed by the <a data-link-type="dfn" href="https://drafts.csswg.org/mediaqueries-5/#media-feature" id="ref-for-media-feature②">media feature</a> name, <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#ascii-lowercase" id="ref-for-ascii-lowercase①">converted to ASCII lowercase</a>, to <var>s</var>. <li>If a value is given append a "<code>:</code>" (U+003A), followed by a single SPACE (U+0020), followed by the <a data-link-type="dfn" href="#serialize-a-media-feature-value" id="ref-for-serialize-a-media-feature-value">serialized media feature value</a>, to <var>s</var>. <li>Append a "<code>)</code>" (U+0029) to <var>s</var>. <li>If this is not the last <a data-link-type="dfn" href="https://drafts.csswg.org/mediaqueries-5/#media-feature" id="ref-for-media-feature③">media feature</a> append a single SPACE (U+0020), followed by "<code>and</code>", followed by a single SPACE (U+0020), to <var>s</var>. </ol> <li>Return <var>s</var>. </ol> <div class="example" id="example-0d89c7fd"> <a class="self-link" href="#example-0d89c7fd"></a> Here are some examples of input (first column) and output (second column): <table class="complex data"> <thead> <tr> <th>Input <th>Output <tbody> <tr> <td> <pre>not screen and (min-WIDTH:5px) AND (max-width:40px)</pre> <td> <pre>not screen and (min-width: 5px) and (max-width: 40px)</pre> <tr> <td> <pre>all and (color) and (color)</pre> <td> <pre>(color) and (color)</pre> </table> </div> <h4 class="heading settled" data-level="4.2.1" id="serializing-media-feature-values"><span class="secno">4.2.1. </span><span class="content">Serializing Media Feature Values</span><a class="self-link" href="#serializing-media-feature-values"></a></h4> <p class="issue" id="issue-41128eee"><a class="self-link" href="#issue-41128eee"></a> This should probably be done in terms of mapping it to serializing CSS values as media features are defined in terms of CSS values after all.</p> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-media-feature-value">serialize a media feature value</dfn> named <var>v</var> locate <var>v</var> in the first column of the table below and use the serialization format described in the second column:</p> <table class="complex data" data-link-spec="mediaqueries-4"> <thead> <tr> <th>Media Feature <th>Serialization <tbody> <tr> <td><a class="property" data-link-type="propdesc">width</a> <td>... <tr> <td><a class="property" data-link-type="propdesc">height</a> <td>... <tr> <td><a class="property css" data-link-type="property">device-width</a> <td>... <tr> <td><a class="property css" data-link-type="property">device-height</a> <td>... <tr> <td><a class="property css" data-link-type="property">orientation</a> <td> If the value is <a class="css" data-link-type="maybe" href="https://drafts.csswg.org/mediaqueries-4/#valdef-media-orientation-portrait" id="ref-for-valdef-media-orientation-portrait">portrait</a>: "<code>portrait</code>". If the value is <a class="css" data-link-type="maybe" href="https://drafts.csswg.org/mediaqueries-4/#valdef-media-orientation-landscape" id="ref-for-valdef-media-orientation-landscape">landscape</a>: "<code>landscape</code>". <tr> <td><a class="property css" data-link-type="property">aspect-ratio</a> <td>... <tr> <td><a class="property css" data-link-type="property">device-aspect-ratio</a> <td>... <tr> <td><a class="property" data-link-type="propdesc" href="https://drafts.csswg.org/mediaqueries-4/#descdef-media-color" id="ref-for-descdef-media-color">color</a> <td>... <tr> <td><a class="property css" data-link-type="property">color-index</a> <td>... <tr> <td><a class="property css" data-link-type="property">monochrome</a> <td>... <tr> <td><a class="property css" data-link-type="property">resolution</a> <td>... <tr> <td><a class="property css" data-link-type="property">scan</a> <td> If the value is <a class="css" data-link-type="maybe" href="https://drafts.csswg.org/mediaqueries-4/#valdef-media-scan-progressive" id="ref-for-valdef-media-scan-progressive">progressive</a>: "<code>progressive</code>". If the value is <a class="css" data-link-type="maybe" href="https://drafts.csswg.org/mediaqueries-4/#valdef-media-scan-interlace" id="ref-for-valdef-media-scan-interlace">interlace</a>: "<code>interlace</code>". <tr> <td><a class="property css" data-link-type="property">grid</a> <td>... </table> <p>Other specifications can extend this table and vendor-prefixed media features can have custom serialization formats as well.</p> <h3 class="heading settled" data-level="4.3" id="comparing-media-queries"><span class="secno">4.3. </span><span class="content">Comparing Media Queries</span><a class="self-link" href="#comparing-media-queries"></a></h3> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="compare-media-queries">compare media queries</dfn> <var>m1</var> and <var>m2</var> means to <a data-link-type="dfn" href="#serialize-a-media-query" id="ref-for-serialize-a-media-query①">serialize</a> them both and return true if they are a <a data-link-type="dfn">case-sensitive</a> match and false if they are not.</p> <h3 class="heading settled" data-level="4.4" id="the-medialist-interface"><span class="secno">4.4. </span><span class="content">The <code class="idl"><a data-link-type="idl" href="#medialist" id="ref-for-medialist">MediaList</a></code> Interface</span><a class="self-link" href="#the-medialist-interface"></a></h3> <p>An object that implements the <code>MediaList</code> interface has an associated <dfn class="dfn-paneled" data-dfn-for="MediaList" data-dfn-type="dfn" data-export id="medialist-collection-of-media-queries">collection of media queries</dfn>.</p> <pre class="idl highlight def">[<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed" id="ref-for-Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="medialist"><code><c- g>MediaList</c-></code></dfn> { <dfn class="dfn-paneled" data-dfn-for="MediaList" data-dfn-type="dfn" data-export data-lt="stringification behavior" id="MediaList-stringification-behavior"><c- b>stringifier</c-></dfn> <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-type="CSSOMString" href="#dom-medialist-mediatext" id="ref-for-dom-medialist-mediatext"><c- g>mediaText</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long" id="ref-for-idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="unsigned long" href="#dom-medialist-length" id="ref-for-dom-medialist-length"><c- g>length</c-></a>; <c- b>getter</c-> <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring①"><c- n>CSSOMString</c-></a>? <a class="idl-code" data-link-type="method" href="#dom-medialist-item" id="ref-for-dom-medialist-item"><c- g>item</c-></a>(<a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long" id="ref-for-idl-unsigned-long①"><c- b>unsigned</c-> <c- b>long</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="MediaList/item(index)" data-dfn-type="argument" data-export id="dom-medialist-item-index-index"><code><c- g>index</c-></code></dfn>); <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-undefined" id="ref-for-idl-undefined"><c- b>undefined</c-></a> <a class="idl-code" data-link-type="method" href="#dom-medialist-appendmedium" id="ref-for-dom-medialist-appendmedium"><c- g>appendMedium</c-></a>(<a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring②"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="MediaList/appendMedium(medium)" data-dfn-type="argument" data-export id="dom-medialist-appendmedium-medium-medium"><code><c- g>medium</c-></code></dfn>); <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-undefined" id="ref-for-idl-undefined①"><c- b>undefined</c-></a> <a class="idl-code" data-link-type="method" href="#dom-medialist-deletemedium" id="ref-for-dom-medialist-deletemedium"><c- g>deleteMedium</c-></a>(<a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring③"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="MediaList/deleteMedium(medium)" data-dfn-type="argument" data-export id="dom-medialist-deletemedium-medium-medium"><code><c- g>medium</c-></code></dfn>); }; </pre> <p>The object’s <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-supported-property-indices" id="ref-for-dfn-supported-property-indices">supported property indices</a> are the numbers in the range zero to one less than the number of media queries in the <a data-link-type="dfn" href="#medialist-collection-of-media-queries" id="ref-for-medialist-collection-of-media-queries">collection of media queries</a> represented by the collection. If there are no such media queries, then there are no <span id="ref-for-dfn-supported-property-indices①">supported property indices</span>.</p> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="create-a-medialist-object">create a <code>MediaList</code> object</dfn> with a string <var>text</var>, run the following steps:</p> <ol> <li>Create a new <code>MediaList</code> object. <li>Set its <code class="idl"><a data-link-type="idl" href="#dom-medialist-mediatext" id="ref-for-dom-medialist-mediatext①">mediaText</a></code> attribute to <var>text</var>. <li>Return the newly created <code>MediaList</code> object. </ol> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="MediaList" data-dfn-type="attribute" data-export id="dom-medialist-mediatext"><code>mediaText</code></dfn> attribute, on getting, must return a <a data-link-type="dfn" href="#serialize-a-media-query-list" id="ref-for-serialize-a-media-query-list">serialization</a> of the <a data-link-type="dfn" href="#medialist-collection-of-media-queries" id="ref-for-medialist-collection-of-media-queries①">collection of media queries</a>. Setting the <code class="idl"><a data-link-type="idl" href="#dom-medialist-mediatext" id="ref-for-dom-medialist-mediatext②">mediaText</a></code> attribute must run these steps:</p> <ol> <li>Empty the <a data-link-type="dfn" href="#medialist-collection-of-media-queries" id="ref-for-medialist-collection-of-media-queries②">collection of media queries</a>. <li>If the given value is the empty string, then return. <li>Append all the media queries as a result of <a data-link-type="dfn" href="#parse-a-media-query-list" id="ref-for-parse-a-media-query-list①">parsing</a> the given value to the <a data-link-type="dfn" href="#medialist-collection-of-media-queries" id="ref-for-medialist-collection-of-media-queries③">collection of media queries</a>. </ol> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="MediaList" data-dfn-type="method" data-export id="dom-medialist-item"><code>item(<var>index</var>)</code></dfn> method must return a <a data-link-type="dfn" href="#serialize-a-media-query" id="ref-for-serialize-a-media-query②">serialization</a> of the media query in the <a data-link-type="dfn" href="#medialist-collection-of-media-queries" id="ref-for-medialist-collection-of-media-queries④">collection of media queries</a> given by <var>index</var>, or null, if <var>index</var> is greater than or equal to the number of media queries in the <span id="ref-for-medialist-collection-of-media-queries⑤">collection of media queries</span>.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="MediaList" data-dfn-type="attribute" data-export id="dom-medialist-length"><code>length</code></dfn> attribute must return the number of media queries in the <a data-link-type="dfn" href="#medialist-collection-of-media-queries" id="ref-for-medialist-collection-of-media-queries⑥">collection of media queries</a>.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="MediaList" data-dfn-type="method" data-export id="dom-medialist-appendmedium"><code>appendMedium(<var>medium</var>)</code></dfn> method must run these steps:</p> <ol> <li>Let <var>m</var> be the result of <a data-link-type="dfn" href="#parse-a-media-query" id="ref-for-parse-a-media-query">parsing</a> the given value. <li>If <var>m</var> is null, then return. <li>If <a data-link-type="dfn" href="#compare-media-queries" id="ref-for-compare-media-queries">comparing</a> <var>m</var> with any of the media queries in the <a data-link-type="dfn" href="#medialist-collection-of-media-queries" id="ref-for-medialist-collection-of-media-queries⑦">collection of media queries</a> returns true, then return. <li>Append <var>m</var> to the <a data-link-type="dfn" href="#medialist-collection-of-media-queries" id="ref-for-medialist-collection-of-media-queries⑧">collection of media queries</a>. </ol> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="MediaList" data-dfn-type="method" data-export id="dom-medialist-deletemedium"><code>deleteMedium(<var>medium</var>)</code></dfn> method must run these steps:</p> <ol> <li>Let <var>m</var> be the result of <a data-link-type="dfn" href="#parse-a-media-query" id="ref-for-parse-a-media-query①">parsing</a> the given value. <li>If <var>m</var> is null, then return. <li>Remove any media query from the <a data-link-type="dfn" href="#medialist-collection-of-media-queries" id="ref-for-medialist-collection-of-media-queries⑨">collection of media queries</a> for which <a data-link-type="dfn" href="#compare-media-queries" id="ref-for-compare-media-queries①">comparing</a> the media query with <var>m</var> returns true. If nothing was removed, then <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-throw" id="ref-for-dfn-throw">throw</a> a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#notfounderror" id="ref-for-notfounderror">NotFoundError</a></code> exception. </ol> <h2 class="heading settled" data-level="5" id="selectors"><span class="secno">5. </span><span class="content">Selectors</span><a class="self-link" href="#selectors"></a></h2> <p>Selectors are defined in the Selectors specification. This section mainly defines how to serialize them. </p> <h3 class="heading settled" data-level="5.1" id="parsing-selectors"><span class="secno">5.1. </span><span class="content">Parsing Selectors</span><a class="self-link" href="#parsing-selectors"></a></h3> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="parse-a-group-of-selectors">parse a group of selectors</dfn> means to parse the value using the <code>selectors_group</code> production defined in the Selectors specification and return either a group of selectors if parsing did not fail or null if parsing did fail. </p> <h3 class="heading settled" data-level="5.2" id="serializing-selectors"><span class="secno">5.2. </span><span class="content">Serializing Selectors</span><a class="self-link" href="#serializing-selectors"></a></h3> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-group-of-selectors">serialize a group of selectors</dfn> <a data-link-type="dfn" href="#serialize-a-selector" id="ref-for-serialize-a-selector">serialize</a> each selector in the group of selectors and then <a data-link-type="dfn" href="#serialize-a-comma-separated-list" id="ref-for-serialize-a-comma-separated-list①">serialize</a> a comma-separated list of these serializations.</p> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-selector">serialize a selector</dfn> let <var>s</var> be the empty string, run the steps below for each part of the chain of the selector, and finally return <var>s</var>:</p> <ol> <li>If there is only one <a data-link-type="dfn" href="https://drafts.csswg.org/selectors-4/#simple" id="ref-for-simple">simple selector</a> in the <a data-link-type="dfn" href="https://drafts.csswg.org/selectors-4/#compound" id="ref-for-compound">compound selectors</a> which is a <a data-link-type="dfn" href="https://drafts.csswg.org/selectors-4/#universal-selector" id="ref-for-universal-selector">universal selector</a>, append the result of <a data-link-type="dfn" href="#serialize-a-simple-selector" id="ref-for-serialize-a-simple-selector">serializing</a> the <span id="ref-for-universal-selector①">universal selector</span> to <var>s</var>. <li>Otherwise, for each <a data-link-type="dfn" href="https://drafts.csswg.org/selectors-4/#simple" id="ref-for-simple①">simple selector</a> in the <a data-link-type="dfn" href="https://drafts.csswg.org/selectors-4/#compound" id="ref-for-compound①">compound selectors</a> that is not a universal selector of which the <a data-link-type="dfn" href="https://drafts.csswg.org/css-namespaces-3/#namespace-prefix" id="ref-for-namespace-prefix">namespace prefix</a> maps to a namespace that is not the <a data-link-type="dfn" href="https://drafts.csswg.org/css-namespaces-3/#default-namespace" id="ref-for-default-namespace">default namespace</a> <a data-link-type="dfn" href="#serialize-a-simple-selector" id="ref-for-serialize-a-simple-selector①">serialize</a> the <span id="ref-for-simple②">simple selector</span> and append the result to <var>s</var>. <li>If this is not the last part of the chain of the selector append a single SPACE (U+0020), followed by the combinator "<code>></code>", "<code>+</code>", "<code>~</code>", "<code>>></code>", "<code>||</code>", as appropriate, followed by another single SPACE (U+0020) if the combinator was not whitespace, to <var>s</var>. <li>If this is the last part of the chain of the selector and there is a pseudo-element, append "<code>::</code>" followed by the name of the pseudo-element, to <var>s</var>. </ol> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-simple-selector">serialize a simple selector</dfn> let <var>s</var> be the empty string, run the steps below, and finally return <var>s</var>:</p> <dl class="switch"> <dt>type selector <dt>universal selector <dd> <ol> <li>If the <a data-link-type="dfn" href="https://drafts.csswg.org/css-namespaces-3/#namespace-prefix" id="ref-for-namespace-prefix①">namespace prefix</a> maps to a namespace that is not the <a data-link-type="dfn" href="https://drafts.csswg.org/css-namespaces-3/#default-namespace" id="ref-for-default-namespace①">default namespace</a> and is not the null namespace (not in a namespace) append the <a data-link-type="dfn" href="#serialize-an-identifier" id="ref-for-serialize-an-identifier①">serialization</a> of the <span id="ref-for-namespace-prefix②">namespace prefix</span> as an identifier, followed by a "<code>|</code>" (U+007C) to <var>s</var>. <li>If the <a data-link-type="dfn" href="https://drafts.csswg.org/css-namespaces-3/#namespace-prefix" id="ref-for-namespace-prefix③">namespace prefix</a> maps to a namespace that is the null namespace (not in a namespace) append "<code>|</code>" (U+007C) to <var>s</var>. <li>If this is a type selector append the <a data-link-type="dfn" href="#serialize-an-identifier" id="ref-for-serialize-an-identifier②">serialization</a> of the element name as an identifier to <var>s</var>. <li>If this is a universal selector append "<code>*</code>" (U+002A) to <var>s</var>. </ol> <dt>attribute selector <dd> <ol> <li>Append "<code>[</code>" (U+005B) to <var>s</var>. <li>If the <a data-link-type="dfn" href="https://drafts.csswg.org/css-namespaces-3/#namespace-prefix" id="ref-for-namespace-prefix④">namespace prefix</a> maps to a namespace that is not the null namespace (not in a namespace) append the <a data-link-type="dfn" href="#serialize-an-identifier" id="ref-for-serialize-an-identifier③">serialization</a> of the <span id="ref-for-namespace-prefix⑤">namespace prefix</span> as an identifier, followed by a "<code>|</code>" (U+007C) to <var>s</var>. <li>Append the <a data-link-type="dfn" href="#serialize-an-identifier" id="ref-for-serialize-an-identifier④">serialization</a> of the attribute name as an identifier to <var>s</var>. <li>If there is an attribute value specified, append "<code>=</code>", "<code>~=</code>", "<code>|=</code>", "<code>^=</code>", "<code>$=</code>", or "<code>*=</code>" as appropriate (depending on the type of attribute selector), followed by the <a data-link-type="dfn" href="#serialize-a-string" id="ref-for-serialize-a-string②">serialization</a> of the attribute value as a string, to <var>s</var>. <li>If the attribute selector has the case-sensitivity flag present, append "<code> i</code>" (U+0020 U+0069) to <var>s</var>. <li>Append "<code>]</code>" (U+005D) to <var>s</var>. </ol> <dt>class selector <dd>Append a "<code>.</code>" (U+002E), followed by the <a data-link-type="dfn" href="#serialize-an-identifier" id="ref-for-serialize-an-identifier⑤">serialization</a> of the class name as an identifier to <var>s</var>. <dt>ID selector <dd>Append a "<code>#</code>" (U+0023), followed by the <a data-link-type="dfn" href="#serialize-an-identifier" id="ref-for-serialize-an-identifier⑥">serialization</a> of the ID as an identifier to <var>s</var>. <dt>pseudo-class <dd> If the pseudo-class does not accept arguments append "<code>:</code>" (U+003A), followed by the name of the pseudo-class, to <var>s</var>. <p>Otherwise, append "<code>:</code>" (U+003A), followed by the name of the pseudo-class, followed by "<code>(</code>" (U+0028), followed by the value of the pseudo-class argument(s) determined as per below, followed by "<code>)</code>" (U+0029), to <var>s</var>.</p> <dl class="switch"> <dt><code>:lang()</code> <dd>The <a data-link-type="dfn" href="#serialize-a-comma-separated-list" id="ref-for-serialize-a-comma-separated-list②">serialization of a comma-separated list</a> of each argument’s <a data-link-type="dfn" href="#serialize-a-string" id="ref-for-serialize-a-string③">serialization as a string</a>, preserving relative order. <dt><code>:nth-child()</code> <dt><code>:nth-last-child()</code> <dt><code>:nth-of-type()</code> <dt><code>:nth-last-of-type()</code> <dd>The result of serializing the value using the rules to <a data-link-type="dfn" href="https://drafts.csswg.org/css-syntax-3/#serialize-an-anb-value" id="ref-for-serialize-an-anb-value">serialize an <an+b> value</a>. <dt><code>:not()</code> <dd>The result of serializing the value using the rules for <a data-link-type="dfn" href="#serialize-a-group-of-selectors" id="ref-for-serialize-a-group-of-selectors">serializing a group of selectors</a>. </dl> </dl> <h2 class="heading settled" data-level="6" id="css-object-model"><span class="secno">6. </span><span class="content">CSS</span><a class="self-link" href="#css-object-model"></a></h2> <h3 class="heading settled" data-level="6.1" id="css-style-sheets"><span class="secno">6.1. </span><span class="content">CSS Style Sheets</span><a class="self-link" href="#css-style-sheets"></a></h3> <p>A <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="css-style-sheet">CSS style sheet</dfn> is an abstract concept that represents a style sheet as defined by the CSS specification. In the CSSOM a <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet">CSS style sheet</a> is represented as a <code class="idl"><a data-link-type="idl" href="#cssstylesheet" id="ref-for-cssstylesheet">CSSStyleSheet</a></code> object.</p> <dl> <dt><dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet" data-dfn-type="constructor" data-export data-lt="CSSStyleSheet(options)|constructor(options)|CSSStyleSheet()|constructor()" id="dom-cssstylesheet-cssstylesheet"><code>CSSStyleSheet(<var>options</var>)</code></dfn> <dd> When called, execute the steps to <a data-link-type="dfn" href="#create-a-constructed-cssstylesheet" id="ref-for-create-a-constructed-cssstylesheet">create a constructed CSSStyleSheet</a> given <var>options</var> and return the result. <dt>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="create-a-constructed-cssstylesheet">create a constructed <code class="idl"><a data-link-type="idl" href="#cssstylesheet" id="ref-for-cssstylesheet①">CSSStyleSheet</a></code></dfn></dt> given <code class="idl"><a data-link-type="idl" href="#dictdef-cssstylesheetinit" id="ref-for-dictdef-cssstylesheetinit">CSSStyleSheetInit</a></code> <var>options</var>, run these steps: <dd> <ol> <li>Construct a new <code class="idl"><a data-link-type="idl" href="#cssstylesheet" id="ref-for-cssstylesheet②">CSSStyleSheet</a></code> object <var>sheet</var>. <li>Set <var>sheet</var>’s <a data-link-type="dfn" href="https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-location" id="ref-for-concept-css-style-sheet-location">location</a> to the <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/semantics.html#link-options-base-url" id="ref-for-link-options-base-url">base URL</a> of the <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/nav-history-apis.html#concept-document-window" id="ref-for-concept-document-window">associated Document</a> for the <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/webappapis.html#current-global-object" id="ref-for-current-global-object">current global object</a>. <li>Set <var>sheet</var>’s <a data-link-type="dfn" href="#concept-css-style-sheet-stylesheet-base-url" id="ref-for-concept-css-style-sheet-stylesheet-base-url">stylesheet base URL</a> to the <code class="idl"><a data-link-type="idl" href="#dom-cssstylesheetinit-baseurl" id="ref-for-dom-cssstylesheetinit-baseurl">baseURL</a></code> attribute value from <var>options</var>. <li>Set <var>sheet</var>’s <a data-link-type="dfn" href="https://drafts.csswg.org/cssom-1/#concept-css-rule-parent-css-style-sheet" id="ref-for-concept-css-rule-parent-css-style-sheet">parent CSS style sheet</a> to null. <li>Set <var>sheet</var>’s <a data-link-type="dfn" href="https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-owner-node" id="ref-for-concept-css-style-sheet-owner-node">owner node</a> to null. <li>Set <var>sheet</var>’s <a data-link-type="dfn" href="https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-owner-css-rule" id="ref-for-concept-css-style-sheet-owner-css-rule">owner CSS rule</a> to null. <li>Set <var>sheet</var>’s <a data-link-type="dfn" href="https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-title" id="ref-for-concept-css-style-sheet-title">title</a> to the empty string. <li>Unset <var>sheet</var>’s <a data-link-type="dfn" href="https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-alternate-flag" id="ref-for-concept-css-style-sheet-alternate-flag">alternate flag</a>. <li>Set <var>sheet</var>’s <a data-link-type="dfn" href="https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-origin-clean-flag" id="ref-for-concept-css-style-sheet-origin-clean-flag">origin-clean flag</a>. <li>Set <var>sheet</var>’s <a data-link-type="dfn" href="#concept-css-style-sheet-constructed-flag" id="ref-for-concept-css-style-sheet-constructed-flag">constructed flag</a>. <li>Set <var>sheet</var>’s <a data-link-type="dfn" href="#concept-css-style-sheet-constructor-document" id="ref-for-concept-css-style-sheet-constructor-document">Constructor document</a> to the <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/nav-history-apis.html#concept-document-window" id="ref-for-concept-document-window①">associated Document</a> for the <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/webappapis.html#current-global-object" id="ref-for-current-global-object①">current global object</a>. <li>If the <code class="idl"><a data-link-type="idl" href="#dom-cssstylesheetinit-media" id="ref-for-dom-cssstylesheetinit-media">media</a></code> attribute of <var>options</var> is a string, <a data-link-type="dfn" href="#create-a-medialist-object" id="ref-for-create-a-medialist-object">create a MediaList object</a> from the string and assign it as <var>sheet</var>’s <a data-link-type="dfn" href="https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-media" id="ref-for-concept-css-style-sheet-media">media</a>. Otherwise, <a data-link-type="dfn" href="#serialize-a-media-query-list" id="ref-for-serialize-a-media-query-list①">serialize a media query list</a> from the attribute and then <span id="ref-for-create-a-medialist-object①">create a MediaList object</span> from the resulting string and set it as <var>sheet</var>’s <span id="ref-for-concept-css-style-sheet-media①">media</span>. <li>If the <code class="idl"><a data-link-type="idl" href="#dom-cssstylesheetinit-disabled" id="ref-for-dom-cssstylesheetinit-disabled">disabled</a></code> attribute of <var>options</var> is true, set <var>sheet</var>’s <a data-link-type="dfn" href="https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-disabled-flag" id="ref-for-concept-css-style-sheet-disabled-flag">disabled flag</a>. <li>Return <var>sheet</var>. </ol> </dl> <p>A <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet①">CSS style sheet</a> has a number of associated state items:</p> <dl> <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleSheet" data-dfn-type="dfn" data-noexport id="concept-css-style-sheet-type">type</dfn> <dd>The literal string "<code>text/css</code>". <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleSheet" data-dfn-type="dfn" data-noexport id="concept-css-style-sheet-location">location</dfn> <dd>Specified when created. The <a data-link-type="dfn" href="https://url.spec.whatwg.org/#absolute-url-string" id="ref-for-absolute-url-string">absolute-URL string</a> of the first request of the <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet②">CSS style sheet</a> or null if the <span id="ref-for-css-style-sheet③">CSS style sheet</span> was embedded. Does not change during the lifetime of the <span id="ref-for-css-style-sheet④">CSS style sheet</span>. <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleSheet" data-dfn-type="dfn" data-noexport id="concept-css-style-sheet-parent-css-style-sheet">parent CSS style sheet</dfn> <dd>Specified when created. The <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet⑤">CSS style sheet</a> that is the parent of the <span id="ref-for-css-style-sheet⑥">CSS style sheet</span> or null if there is no associated parent. <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleSheet" data-dfn-type="dfn" data-noexport id="concept-css-style-sheet-owner-node">owner node</dfn> <dd>Specified when created. The DOM node associated with the <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet⑦">CSS style sheet</a> or null if there is no associated DOM node. <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleSheet" data-dfn-type="dfn" data-noexport id="concept-css-style-sheet-owner-css-rule">owner CSS rule</dfn> <dd>Specified when created. The <a data-link-type="dfn" href="#css-rule" id="ref-for-css-rule">CSS rule</a> in the <a data-link-type="dfn" href="#concept-css-style-sheet-parent-css-style-sheet" id="ref-for-concept-css-style-sheet-parent-css-style-sheet">parent CSS style sheet</a> that caused the inclusion of the <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet⑧">CSS style sheet</a> or null if there is no associated rule. <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleSheet" data-dfn-type="dfn" data-noexport id="concept-css-style-sheet-media">media</dfn> <dd> Specified when created. The <code class="idl"><a data-link-type="idl" href="#medialist" id="ref-for-medialist①">MediaList</a></code> object associated with the <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet⑨">CSS style sheet</a>. <p>If this property is specified to a string, the <a data-link-type="dfn">media</a> must be set to the return value of invoking <a data-link-type="dfn" href="#create-a-medialist-object" id="ref-for-create-a-medialist-object②">create a <code>MediaList</code> object</a> steps for that string.</p> <p>If this property is specified to an attribute of the <a data-link-type="dfn" href="#concept-css-style-sheet-owner-node" id="ref-for-concept-css-style-sheet-owner-node①">owner node</a>, the <a data-link-type="dfn">media</a> must be set to the return value of invoking <a data-link-type="dfn" href="#create-a-medialist-object" id="ref-for-create-a-medialist-object③">create a <code>MediaList</code> object</a> steps for the value of that attribute. Whenever the attribute is set, changed or removed, the <span>media</span>’s <code class="idl"><a data-link-type="idl" href="#dom-medialist-mediatext" id="ref-for-dom-medialist-mediatext③">mediaText</a></code> attribute must be set to the new value of the attribute, or to null if the attribute is absent.</p> <p class="note" role="note"><span class="marker">Note:</span> Changing the <a data-link-type="dfn">media</a>’s <code class="idl"><a data-link-type="idl" href="#dom-medialist-mediatext" id="ref-for-dom-medialist-mediatext④">mediaText</a></code> attribute does not change the corresponding attribute on the <a data-link-type="dfn" href="#concept-css-style-sheet-owner-node" id="ref-for-concept-css-style-sheet-owner-node②">owner node</a>.</p> <p class="note" role="note"><span class="marker">Note:</span> The <a data-link-type="dfn" href="#concept-css-style-sheet-owner-node" id="ref-for-concept-css-style-sheet-owner-node③">owner node</a> of a <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet①⓪">CSS style sheet</a>, if non-null, is the node whose <a data-link-type="dfn" href="#associated-css-style-sheet" id="ref-for-associated-css-style-sheet">associated CSS style sheet</a> is the <span id="ref-for-css-style-sheet①①">CSS style sheet</span> in question, when the <span id="ref-for-css-style-sheet①②">CSS style sheet</span> is <a data-link-type="dfn" href="#add-a-css-style-sheet" id="ref-for-add-a-css-style-sheet">added</a>.</p> <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleSheet" data-dfn-type="dfn" data-noexport id="concept-css-style-sheet-title">title</dfn> <dd> Specified when created. The title of the <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet①③">CSS style sheet</a>, which can be the empty string. <div class="example" id="example-a945fdba"> <a class="self-link" href="#example-a945fdba"></a> In the following, the <a data-link-type="dfn" href="#concept-css-style-sheet-title" id="ref-for-concept-css-style-sheet-title①">title</a> is non-empty for the first style sheet, but is empty for the second and third style sheets. <pre><style title="papaya whip"> body { background: #ffefd5; } </style> </pre> <pre><style title=""> body { background: orange; } </style> </pre> <pre><style> body { background: brown; } </style> </pre> </div> <p>If this property is specified to an attribute of the <a data-link-type="dfn" href="#concept-css-style-sheet-owner-node" id="ref-for-concept-css-style-sheet-owner-node④">owner node</a>, the <a data-link-type="dfn" href="#concept-css-style-sheet-title" id="ref-for-concept-css-style-sheet-title②">title</a> must be set to the value of that attribute. Whenever the attribute is set, changed or removed, the <span id="ref-for-concept-css-style-sheet-title③">title</span> must be set to the new value of the attribute, or to the empty string if the attribute is absent.</p> <p class="note" role="note"><span class="marker">Note:</span> HTML only <a href="https://html.spec.whatwg.org/#the-style-element:concept-css-style-sheet-title">specifies</a> <a data-link-type="dfn" href="#concept-css-style-sheet-title" id="ref-for-concept-css-style-sheet-title④">title</a> to be an attribute of the <a data-link-type="dfn" href="#concept-css-style-sheet-owner-node" id="ref-for-concept-css-style-sheet-owner-node⑤">owner node</a> if the node is in <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#in-a-document-tree" id="ref-for-in-a-document-tree">in a document tree</a>.</p> <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleSheet" data-dfn-type="dfn" data-noexport id="concept-css-style-sheet-alternate-flag">alternate flag</dfn> <dd> Specified when created. Either set or unset. Unset by default. <div class="example" id="example-cd0d9c55"> <a class="self-link" href="#example-cd0d9c55"></a> The following <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet①④">CSS style sheets</a> have their <a data-link-type="dfn" href="#concept-css-style-sheet-alternate-flag" id="ref-for-concept-css-style-sheet-alternate-flag①">alternate flag</a> set: <pre><?xml-stylesheet alternate="yes" title="x" href="data:text/css,…"?></pre> <pre><link rel="alternate stylesheet" title="x" href="data:text/css,…"></pre> </div> <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleSheet" data-dfn-type="dfn" data-noexport id="concept-css-style-sheet-disabled-flag">disabled flag</dfn> <dd> Either set or unset. Unset by default. <p class="note" role="note"><span class="marker">Note:</span> Even when unset it does not necessarily mean that the <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet①⑤">CSS style sheet</a> is actually used for rendering.</p> <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleSheet" data-dfn-type="dfn" data-noexport id="concept-css-style-sheet-css-rules">CSS rules</dfn> <dd>The CSS rules associated with the <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet①⑥">CSS style sheet</a>. <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleSheet" data-dfn-type="dfn" data-noexport id="concept-css-style-sheet-origin-clean-flag">origin-clean flag</dfn> <dd>Specified when created. Either set or unset. If it is set, the API allows reading and modifying of the <a data-link-type="dfn" href="#concept-css-style-sheet-css-rules" id="ref-for-concept-css-style-sheet-css-rules">CSS rules</a>. <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleSheet" data-dfn-type="dfn" data-noexport id="concept-css-style-sheet-constructed-flag">constructed flag</dfn> <dd>Specified when created. Either set or unset. Unset by default. Signifies whether this stylesheet was created by invoking the IDL-defined constructor. <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleSheet" data-dfn-type="dfn" data-noexport id="concept-css-style-sheet-disallow-modification-flag">disallow modification flag</dfn> <dd>Either set or unset. Unset by default. If set, modification of the stylesheet’s rules is not allowed. <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleSheet" data-dfn-type="dfn" data-noexport id="concept-css-style-sheet-constructor-document">constructor document</dfn> <dd>Specified when created. The <code class="idl"><a data-link-type="idl" href="https://dom.spec.whatwg.org/#document" id="ref-for-document">Document</a></code> a constructed stylesheet is associated with. Null by default. Only non-null for stylesheets that have <a data-link-type="dfn" href="#concept-css-style-sheet-constructed-flag" id="ref-for-concept-css-style-sheet-constructed-flag①">constructed flag</a> set. <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleSheet" data-dfn-type="dfn" data-noexport id="concept-css-style-sheet-stylesheet-base-url">stylesheet base URL</dfn> <dd>The base URL to use when resolving relative URLs in the stylesheet. Null by default. Only non-null for stylesheets that have <a data-link-type="dfn" href="#concept-css-style-sheet-constructed-flag" id="ref-for-concept-css-style-sheet-constructed-flag②">constructed flag</a> set. </dl> <h4 class="heading settled" data-level="6.1.1" id="the-stylesheet-interface"><span class="secno">6.1.1. </span><span class="content">The <code class="idl"><a data-link-type="idl" href="#stylesheet" id="ref-for-stylesheet">StyleSheet</a></code> Interface</span><a class="self-link" href="#the-stylesheet-interface"></a></h4> <p>The <code class="idl"><a data-link-type="idl" href="#stylesheet" id="ref-for-stylesheet①">StyleSheet</a></code> interface represents an abstract, base style sheet.</p> <pre class="idl highlight def">[<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed" id="ref-for-Exposed①"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="stylesheet"><code><c- g>StyleSheet</c-></code></dfn> { <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring④"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSOMString" href="#dom-stylesheet-type" id="ref-for-dom-stylesheet-type"><c- g>type</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-USVString" id="ref-for-idl-USVString③"><c- b>USVString</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="USVString?" href="#dom-stylesheet-href" id="ref-for-dom-stylesheet-href"><c- g>href</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> (<a data-link-type="idl-name" href="https://dom.spec.whatwg.org/#element" id="ref-for-element"><c- n>Element</c-></a> <c- b>or</c-> <a data-link-type="idl-name" href="https://dom.spec.whatwg.org/#processinginstruction" id="ref-for-processinginstruction"><c- n>ProcessingInstruction</c-></a>)? <a class="idl-code" data-link-type="attribute" data-readonly data-type="(Element or ProcessingInstruction)?" href="#dom-stylesheet-ownernode" id="ref-for-dom-stylesheet-ownernode"><c- g>ownerNode</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssstylesheet" id="ref-for-cssstylesheet③"><c- n>CSSStyleSheet</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSStyleSheet?" href="#dom-stylesheet-parentstylesheet" id="ref-for-dom-stylesheet-parentstylesheet"><c- g>parentStyleSheet</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-DOMString" id="ref-for-idl-DOMString②"><c- b>DOMString</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="DOMString?" href="#dom-stylesheet-title" id="ref-for-dom-stylesheet-title"><c- g>title</c-></a>; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject" id="ref-for-SameObject"><c- g>SameObject</c-></a>, <a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#PutForwards" id="ref-for-PutForwards"><c- g>PutForwards</c-></a>=<a class="idl-code" data-link-type="attribute" href="#dom-medialist-mediatext" id="ref-for-dom-medialist-mediatext⑤"><c- n>mediaText</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#medialist" id="ref-for-medialist②"><c- n>MediaList</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="MediaList" href="#dom-stylesheet-media" id="ref-for-dom-stylesheet-media"><c- g>media</c-></a>; <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-boolean" id="ref-for-idl-boolean"><c- b>boolean</c-></a> <a class="idl-code" data-link-type="attribute" data-type="boolean" href="#dom-stylesheet-disabled" id="ref-for-dom-stylesheet-disabled"><c- g>disabled</c-></a>; }; </pre> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="StyleSheet" data-dfn-type="attribute" data-export id="dom-stylesheet-type"><code>type</code></dfn> attribute must return the <a data-link-type="dfn" href="#concept-css-style-sheet-type" id="ref-for-concept-css-style-sheet-type">type</a>.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="StyleSheet" data-dfn-type="attribute" data-export id="dom-stylesheet-href"><code>href</code></dfn> attribute must return the <a data-link-type="dfn" href="#concept-css-style-sheet-location" id="ref-for-concept-css-style-sheet-location①">location</a>.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="StyleSheet" data-dfn-type="attribute" data-export id="dom-stylesheet-ownernode"><code>ownerNode</code></dfn> attribute must return the <a data-link-type="dfn" href="#concept-css-style-sheet-owner-node" id="ref-for-concept-css-style-sheet-owner-node⑥">owner node</a>.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="StyleSheet" data-dfn-type="attribute" data-export id="dom-stylesheet-parentstylesheet"><code>parentStyleSheet</code></dfn> attribute must return the <a data-link-type="dfn" href="#concept-css-style-sheet-parent-css-style-sheet" id="ref-for-concept-css-style-sheet-parent-css-style-sheet①">parent CSS style sheet</a>.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="StyleSheet" data-dfn-type="attribute" data-export id="dom-stylesheet-title"><code>title</code></dfn> attribute must return the <a data-link-type="dfn" href="#concept-css-style-sheet-title" id="ref-for-concept-css-style-sheet-title⑤">title</a> or null if <span id="ref-for-concept-css-style-sheet-title⑥">title</span> is the empty string.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="StyleSheet" data-dfn-type="attribute" data-export id="dom-stylesheet-media"><code>media</code></dfn> attribute must return the <a data-link-type="dfn">media</a>.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="StyleSheet" data-dfn-type="attribute" data-export id="dom-stylesheet-disabled"><code>disabled</code></dfn> attribute, on getting, must return true if the <a data-link-type="dfn" href="#concept-css-style-sheet-disabled-flag" id="ref-for-concept-css-style-sheet-disabled-flag①">disabled flag</a> is set, or false otherwise. On setting, the <code class="idl"><a data-link-type="idl" href="#dom-stylesheet-disabled" id="ref-for-dom-stylesheet-disabled①">disabled</a></code> attribute must set the <span id="ref-for-concept-css-style-sheet-disabled-flag②">disabled flag</span> if the new value is true, or unset the <span id="ref-for-concept-css-style-sheet-disabled-flag③">disabled flag</span> otherwise.</p> <h4 class="heading settled" data-level="6.1.2" id="the-cssstylesheet-interface"><span class="secno">6.1.2. </span><span class="content">The <code class="idl"><a data-link-type="idl" href="#cssstylesheet" id="ref-for-cssstylesheet④">CSSStyleSheet</a></code> Interface</span><a class="self-link" href="#the-cssstylesheet-interface"></a></h4> <p>The <code class="idl"><a data-link-type="idl" href="#cssstylesheet" id="ref-for-cssstylesheet⑤">CSSStyleSheet</a></code> interface represents a <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet①⑦">CSS style sheet</a>.</p> <pre class="idl highlight def">[<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed" id="ref-for-Exposed②"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="cssstylesheet"><code><c- g>CSSStyleSheet</c-></code></dfn> : <a data-link-type="idl-name" href="#stylesheet" id="ref-for-stylesheet②"><c- n>StyleSheet</c-></a> { <a class="idl-code" data-link-type="constructor" href="#dom-cssstylesheet-cssstylesheet" id="ref-for-dom-cssstylesheet-cssstylesheet"><c- g>constructor</c-></a>(<c- b>optional</c-> <a data-link-type="idl-name" href="#dictdef-cssstylesheetinit" id="ref-for-dictdef-cssstylesheetinit①"><c- n>CSSStyleSheetInit</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet/CSSStyleSheet(options), CSSStyleSheet/constructor(options), CSSStyleSheet/CSSStyleSheet(), CSSStyleSheet/constructor()" data-dfn-type="argument" data-export id="dom-cssstylesheet-cssstylesheet-options-options"><code><c- g>options</c-></code></dfn> = {}); <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssrule" id="ref-for-cssrule"><c- n>CSSRule</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSRule?" href="#dom-cssstylesheet-ownerrule" id="ref-for-dom-cssstylesheet-ownerrule"><c- g>ownerRule</c-></a>; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject" id="ref-for-SameObject①"><c- g>SameObject</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssrulelist" id="ref-for-cssrulelist"><c- n>CSSRuleList</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSRuleList" href="#dom-cssstylesheet-cssrules" id="ref-for-dom-cssstylesheet-cssrules"><c- g>cssRules</c-></a>; <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long" id="ref-for-idl-unsigned-long②"><c- b>unsigned</c-> <c- b>long</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstylesheet-insertrule" id="ref-for-dom-cssstylesheet-insertrule"><c- g>insertRule</c-></a>(<a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring⑤"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet/insertRule(rule, index), CSSStyleSheet/insertRule(rule)" data-dfn-type="argument" data-export id="dom-cssstylesheet-insertrule-rule-index-rule"><code><c- g>rule</c-></code></dfn>, <c- b>optional</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long" id="ref-for-idl-unsigned-long③"><c- b>unsigned</c-> <c- b>long</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet/insertRule(rule, index), CSSStyleSheet/insertRule(rule)" data-dfn-type="argument" data-export id="dom-cssstylesheet-insertrule-rule-index-index"><code><c- g>index</c-></code></dfn> = 0); <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-undefined" id="ref-for-idl-undefined②"><c- b>undefined</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstylesheet-deleterule" id="ref-for-dom-cssstylesheet-deleterule"><c- g>deleteRule</c-></a>(<a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long" id="ref-for-idl-unsigned-long④"><c- b>unsigned</c-> <c- b>long</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet/deleteRule(index)" data-dfn-type="argument" data-export id="dom-cssstylesheet-deleterule-index-index"><code><c- g>index</c-></code></dfn>); <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-promise" id="ref-for-idl-promise"><c- b>Promise</c-></a><<a data-link-type="idl-name" href="#cssstylesheet" id="ref-for-cssstylesheet⑥"><c- n>CSSStyleSheet</c-></a>> <a class="idl-code" data-link-type="method" href="#dom-cssstylesheet-replace" id="ref-for-dom-cssstylesheet-replace"><c- g>replace</c-></a>(<a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-USVString" id="ref-for-idl-USVString④"><c- b>USVString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet/replace(text)" data-dfn-type="argument" data-export id="dom-cssstylesheet-replace-text-text"><code><c- g>text</c-></code></dfn>); <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-undefined" id="ref-for-idl-undefined③"><c- b>undefined</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstylesheet-replacesync" id="ref-for-dom-cssstylesheet-replacesync"><c- g>replaceSync</c-></a>(<a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-USVString" id="ref-for-idl-USVString⑤"><c- b>USVString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet/replaceSync(text)" data-dfn-type="argument" data-export id="dom-cssstylesheet-replacesync-text-text"><code><c- g>text</c-></code></dfn>); }; <c- b>dictionary</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="dictionary" data-export id="dictdef-cssstylesheetinit"><code><c- g>CSSStyleSheetInit</c-></code></dfn> { <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-DOMString" id="ref-for-idl-DOMString③"><c- b>DOMString</c-></a> <dfn class="dfn-paneled idl-code" data-default="null" data-dfn-for="CSSStyleSheetInit" data-dfn-type="dict-member" data-export data-type="DOMString" id="dom-cssstylesheetinit-baseurl"><code><c- g>baseURL</c-></code></dfn> = <c- b>null</c->; (<a data-link-type="idl-name" href="#medialist" id="ref-for-medialist③"><c- n>MediaList</c-></a> <c- b>or</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-DOMString" id="ref-for-idl-DOMString④"><c- b>DOMString</c-></a>) <dfn class="dfn-paneled idl-code" data-default="""" data-dfn-for="CSSStyleSheetInit" data-dfn-type="dict-member" data-export data-type="(MediaList or DOMString)" id="dom-cssstylesheetinit-media"><code><c- g>media</c-></code></dfn> = ""; <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-boolean" id="ref-for-idl-boolean①"><c- b>boolean</c-></a> <dfn class="dfn-paneled idl-code" data-default="false" data-dfn-for="CSSStyleSheetInit" data-dfn-type="dict-member" data-export data-type="boolean" id="dom-cssstylesheetinit-disabled"><code><c- g>disabled</c-></code></dfn> = <c- b>false</c->; }; </pre> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet" data-dfn-type="attribute" data-export id="dom-cssstylesheet-ownerrule"><code>ownerRule</code></dfn> attribute must return the <a data-link-type="dfn" href="#concept-css-style-sheet-owner-css-rule" id="ref-for-concept-css-style-sheet-owner-css-rule①">owner CSS rule</a>. If a value other than null is ever returned, then that same value must always be returned on each get access.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet" data-dfn-type="attribute" data-export id="dom-cssstylesheet-cssrules"><code>cssRules</code></dfn> attribute must follow these steps:</p> <ol> <li>If the <a data-link-type="dfn" href="#concept-css-style-sheet-origin-clean-flag" id="ref-for-concept-css-style-sheet-origin-clean-flag①">origin-clean flag</a> is unset, <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-throw" id="ref-for-dfn-throw①">throw</a> a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#securityerror" id="ref-for-securityerror">SecurityError</a></code> exception. <li> Return a read-only, live <code class="idl"><a data-link-type="idl" href="#cssrulelist" id="ref-for-cssrulelist①">CSSRuleList</a></code> object representing the <a data-link-type="dfn" href="#concept-css-style-sheet-css-rules" id="ref-for-concept-css-style-sheet-css-rules①">CSS rules</a>. <p class="note" role="note"><span class="marker">Note:</span> Even though the returned <code class="idl"><a data-link-type="idl" href="#cssrulelist" id="ref-for-cssrulelist②">CSSRuleList</a></code> object is read-only (from the perspective of client-authored script), it can nevertheless change over time due to its liveness status. For example, invoking the <code class="idl"><a data-link-type="idl" href="#dom-cssstylesheet-insertrule" id="ref-for-dom-cssstylesheet-insertrule①">insertRule()</a></code> or <code class="idl"><a data-link-type="idl" href="#dom-cssstylesheet-deleterule" id="ref-for-dom-cssstylesheet-deleterule①">deleteRule()</a></code> methods can result in mutations reflected in the returned object.</p> </ol> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet" data-dfn-type="method" data-export data-lt="insertRule(rule, index)|insertRule(rule)" id="dom-cssstylesheet-insertrule"><code>insertRule(<var>rule</var>, <var>index</var>)</code></dfn> method must run the following steps:</p> <ol> <li>If the <a data-link-type="dfn" href="#concept-css-style-sheet-origin-clean-flag" id="ref-for-concept-css-style-sheet-origin-clean-flag②">origin-clean flag</a> is unset, <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-throw" id="ref-for-dfn-throw②">throw</a> a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#securityerror" id="ref-for-securityerror①">SecurityError</a></code> exception. <li>If the <a data-link-type="dfn" href="#concept-css-style-sheet-disallow-modification-flag" id="ref-for-concept-css-style-sheet-disallow-modification-flag">disallow modification flag</a> is set, throw a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#notallowederror" id="ref-for-notallowederror">NotAllowedError</a></code> <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#idl-DOMException" id="ref-for-idl-DOMException">DOMException</a></code>. <li>Let <var>parsed rule</var> be the return value of invoking <a data-link-type="dfn" href="https://drafts.csswg.org/css-syntax-3/#parse-a-rule" id="ref-for-parse-a-rule">parse a rule</a> with <var>rule</var>. <li>If <var>parsed rule</var> is a syntax error, throw a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#syntaxerror" id="ref-for-syntaxerror">SyntaxError</a></code> <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#idl-DOMException" id="ref-for-idl-DOMException①">DOMException</a></code>. <li>If <var>parsed rule</var> is an <a class="css" data-link-type="at-rule" href="https://drafts.csswg.org/css-cascade-5/#at-ruledef-import" id="ref-for-at-ruledef-import">@import</a> rule, and the <a data-link-type="dfn" href="#concept-css-style-sheet-constructed-flag" id="ref-for-concept-css-style-sheet-constructed-flag③">constructed flag</a> is set, throw a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#syntaxerror" id="ref-for-syntaxerror①">SyntaxError</a></code> <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#idl-DOMException" id="ref-for-idl-DOMException②">DOMException</a></code>. <li>Return the result of invoking <a data-link-type="dfn" href="#insert-a-css-rule" id="ref-for-insert-a-css-rule">insert a CSS rule</a> <var>rule</var> in the <a data-link-type="dfn" href="#concept-css-style-sheet-css-rules" id="ref-for-concept-css-style-sheet-css-rules②">CSS rules</a> at <var>index</var>. </ol> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet" data-dfn-type="method" data-export id="dom-cssstylesheet-deleterule"><code>deleteRule(<var>index</var>)</code></dfn> method must run the following steps:</p> <ol> <li>If the <a data-link-type="dfn" href="#concept-css-style-sheet-origin-clean-flag" id="ref-for-concept-css-style-sheet-origin-clean-flag③">origin-clean flag</a> is unset, <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-throw" id="ref-for-dfn-throw③">throw</a> a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#securityerror" id="ref-for-securityerror②">SecurityError</a></code> exception. <li>If the <a data-link-type="dfn" href="#concept-css-style-sheet-disallow-modification-flag" id="ref-for-concept-css-style-sheet-disallow-modification-flag①">disallow modification flag</a> is set, throw a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#notallowederror" id="ref-for-notallowederror①">NotAllowedError</a></code> <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#idl-DOMException" id="ref-for-idl-DOMException③">DOMException</a></code>. <li><a data-link-type="dfn" href="#remove-a-css-rule" id="ref-for-remove-a-css-rule">Remove a CSS rule</a> in the <a data-link-type="dfn" href="#concept-css-style-sheet-css-rules" id="ref-for-concept-css-style-sheet-css-rules③">CSS rules</a> at <var>index</var>. </ol> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet" data-dfn-type="method" data-export id="dom-cssstylesheet-replace"><code>replace(<a data-link-type="dfn" href="#concept-css-rule-text" id="ref-for-concept-css-rule-text">text</a>)</code></dfn> method must run the following steps:</p> <ol> <li>Let <var>promise</var> be a promise. <li>If the <a data-link-type="dfn" href="#concept-css-style-sheet-constructed-flag" id="ref-for-concept-css-style-sheet-constructed-flag④">constructed flag</a> is not set, or the <a data-link-type="dfn" href="#concept-css-style-sheet-disallow-modification-flag" id="ref-for-concept-css-style-sheet-disallow-modification-flag②">disallow modification flag</a> is set, reject <var>promise</var> with a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#notallowederror" id="ref-for-notallowederror②">NotAllowedError</a></code> <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#idl-DOMException" id="ref-for-idl-DOMException④">DOMException</a></code> and return <var>promise</var>. <li>Set the <a data-link-type="dfn" href="#concept-css-style-sheet-disallow-modification-flag" id="ref-for-concept-css-style-sheet-disallow-modification-flag③">disallow modification flag</a>. <li> <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/infrastructure.html#in-parallel" id="ref-for-in-parallel">In parallel</a>, do these steps: <ol> <li>Let <var>rules</var> be the result of running <a data-link-type="dfn" href="https://drafts.csswg.org/css-syntax-3/#parse-a-stylesheets-contents" id="ref-for-parse-a-stylesheets-contents">parse a stylesheet’s contents</a> from <var>text</var>. <li>If <var>rules</var> contains one or more <a class="css" data-link-type="at-rule" href="https://drafts.csswg.org/css-cascade-5/#at-ruledef-import" id="ref-for-at-ruledef-import①">@import</a> rules, <a data-link-type="dfn" href="#remove-a-css-rule" id="ref-for-remove-a-css-rule①">remove those rules</a> from <var>rules</var>. <li>Set <var>sheet</var>’s <a data-link-type="dfn" href="#concept-css-style-sheet-css-rules" id="ref-for-concept-css-style-sheet-css-rules④">CSS rules</a> to <var>rules</var>. <li>Unset <var>sheet</var>’s <a data-link-type="dfn" href="#concept-css-style-sheet-disallow-modification-flag" id="ref-for-concept-css-style-sheet-disallow-modification-flag④">disallow modification flag</a>. <li>Resolve <var>promise</var> with <var>sheet</var>. </ol> <li>Return <var>promise</var>. </ol> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet" data-dfn-type="method" data-export id="dom-cssstylesheet-replacesync"><code>replaceSync(<a data-link-type="dfn" href="#concept-css-rule-text" id="ref-for-concept-css-rule-text①">text</a>)</code></dfn> method must run the steps to <a data-link-type="dfn" href="#synchronously-replace-the-rules-of-a-cssstylesheet" id="ref-for-synchronously-replace-the-rules-of-a-cssstylesheet">synchronously replace the rules of a CSSStyleSheet</a> on this <code class="idl"><a data-link-type="idl" href="#cssstylesheet" id="ref-for-cssstylesheet⑦">CSSStyleSheet</a></code> given <var>text</var>.</p> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="synchronously-replace-the-rules-of-a-cssstylesheet">synchronously replace the rules of a CSSStyleSheet</dfn> on <var>sheet</var> given <var>text</var>, run these steps:</p> <ol> <li>If the <a data-link-type="dfn" href="#concept-css-style-sheet-constructed-flag" id="ref-for-concept-css-style-sheet-constructed-flag⑤">constructed flag</a> is not set, or the <a data-link-type="dfn" href="#concept-css-style-sheet-disallow-modification-flag" id="ref-for-concept-css-style-sheet-disallow-modification-flag⑤">disallow modification flag</a> is set, throw a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#notallowederror" id="ref-for-notallowederror③">NotAllowedError</a></code> <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#idl-DOMException" id="ref-for-idl-DOMException⑤">DOMException</a></code>. <li>Let <var>rules</var> be the result of running <a data-link-type="dfn" href="https://drafts.csswg.org/css-syntax-3/#parse-a-stylesheets-contents" id="ref-for-parse-a-stylesheets-contents①">parse a stylesheet’s contents</a> from <var>text</var>. <li>If <var>rules</var> contains one or more <a class="css" data-link-type="at-rule" href="https://drafts.csswg.org/css-cascade-5/#at-ruledef-import" id="ref-for-at-ruledef-import②">@import</a> rules, <a data-link-type="dfn" href="#remove-a-css-rule" id="ref-for-remove-a-css-rule②">remove those rules</a> from <var>rules</var>. <li>Set <var>sheet</var>’s <a data-link-type="dfn" href="#concept-css-style-sheet-css-rules" id="ref-for-concept-css-style-sheet-css-rules⑤">CSS rules</a> to <var>rules</var>. </ol> <h5 class="heading settled" data-level="6.1.2.1" id="legacy-css-style-sheet-members"><span class="secno">6.1.2.1. </span><span class="content">Deprecated CSSStyleSheet members</span><a class="self-link" href="#legacy-css-style-sheet-members"></a></h5> <p class="note" role="note"><span class="marker">Note:</span> These members are required for compatibility with existing sites.</p> <pre class="idl highlight def"><c- b>partial</c-> <c- b>interface</c-> <a class="idl-code" data-link-type="interface" href="#cssstylesheet" id="ref-for-cssstylesheet⑧"><c- g>CSSStyleSheet</c-></a> { [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject" id="ref-for-SameObject②"><c- g>SameObject</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssrulelist" id="ref-for-cssrulelist③"><c- n>CSSRuleList</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSRuleList" href="#dom-cssstylesheet-rules" id="ref-for-dom-cssstylesheet-rules"><c- g>rules</c-></a>; <a class="idl-code" data-link-type="interface" href="http://heycam.github.io/webidl/#idl-long" id="ref-for-idl-long"><c- b>long</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstylesheet-addrule" id="ref-for-dom-cssstylesheet-addrule"><c- g>addRule</c-></a>(<c- b>optional</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-DOMString" id="ref-for-idl-DOMString⑤"><c- b>DOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet/addRule(selector, style, index), CSSStyleSheet/addRule(selector, style), CSSStyleSheet/addRule(selector), CSSStyleSheet/addRule()" data-dfn-type="argument" data-export id="dom-cssstylesheet-addrule-selector-style-index-selector"><code><c- g>selector</c-></code></dfn> = "undefined", <c- b>optional</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-DOMString" id="ref-for-idl-DOMString⑥"><c- b>DOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet/addRule(selector, style, index), CSSStyleSheet/addRule(selector, style), CSSStyleSheet/addRule(selector), CSSStyleSheet/addRule()" data-dfn-type="argument" data-export id="dom-cssstylesheet-addrule-selector-style-index-style"><code><c- g>style</c-></code></dfn> = "undefined", <c- b>optional</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long" id="ref-for-idl-unsigned-long⑤"><c- b>unsigned</c-> <c- b>long</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet/addRule(selector, style, index), CSSStyleSheet/addRule(selector, style), CSSStyleSheet/addRule(selector), CSSStyleSheet/addRule()" data-dfn-type="argument" data-export id="dom-cssstylesheet-addrule-selector-style-index-index"><code><c- g>index</c-></code></dfn>); <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-undefined" id="ref-for-idl-undefined④"><c- b>undefined</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstylesheet-removerule" id="ref-for-dom-cssstylesheet-removerule"><c- g>removeRule</c-></a>(<c- b>optional</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long" id="ref-for-idl-unsigned-long⑥"><c- b>unsigned</c-> <c- b>long</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet/removeRule(index), CSSStyleSheet/removeRule()" data-dfn-type="argument" data-export id="dom-cssstylesheet-removerule-index-index"><code><c- g>index</c-></code></dfn> = 0); }; </pre> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet" data-dfn-type="attribute" data-export id="dom-cssstylesheet-rules"><code>rules</code></dfn> attribute must follow the same steps as <code class="idl"><a data-link-type="idl" href="#dom-cssstylesheet-cssrules" id="ref-for-dom-cssstylesheet-cssrules①">cssRules</a></code>, and return the same object <code class="idl"><a data-link-type="idl" href="#dom-cssstylesheet-cssrules" id="ref-for-dom-cssstylesheet-cssrules②">cssRules</a></code> would return.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet" data-dfn-type="method" data-export data-lt="removeRule(index)|removeRule()" id="dom-cssstylesheet-removerule"><code>removeRule(<var>index</var>)</code></dfn> method must run the same steps as <code class="idl"><a data-link-type="idl" href="#dom-cssstylesheet-deleterule" id="ref-for-dom-cssstylesheet-deleterule②">deleteRule()</a></code>.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleSheet" data-dfn-type="method" data-export data-lt="addRule(selector, style, index)|addRule(selector, style)|addRule(selector)|addRule()|addRule(selector, block, optionalIndex)" id="dom-cssstylesheet-addrule"><code>addRule(<var>selector</var>, <var>block</var>, <var>optionalIndex</var>)</code></dfn> method must run the following steps:</p> <ol> <li>Let <var>rule</var> be an empty string. <li>Append <var>selector</var> to <var>rule</var>. <li>Append <code>" { "</code> to <var>rule</var>. <li>If <var>block</var> is not empty, append <var>block</var>, followed by a space, to <var>rule</var>. <li>Append <code>"}"</code> to <var>rule</var> <li>Let <var>index</var> be <var>optionalIndex</var> if provided, or the number of <a data-link-type="dfn" href="#concept-css-style-sheet-css-rules" id="ref-for-concept-css-style-sheet-css-rules⑥">CSS rules</a> in the stylesheet otherwise. <li>Call <code class="idl"><a data-link-type="idl" href="#dom-cssstylesheet-insertrule" id="ref-for-dom-cssstylesheet-insertrule②">insertRule()</a></code>, with <var>rule</var> and <var>index</var> as arguments. <li>Return <code>-1</code>. </ol> <p class="advisement"> Authors should not use these members and should instead use and teach the standard <code class="idl"><a data-link-type="idl" href="#cssstylesheet" id="ref-for-cssstylesheet⑨">CSSStyleSheet</a></code> interface defined earlier, which is consistent with <code class="idl"><a data-link-type="idl" href="#cssgroupingrule" id="ref-for-cssgroupingrule">CSSGroupingRule</a></code>. </p> <h3 class="heading settled" data-level="6.2" id="css-style-sheet-collections"><span class="secno">6.2. </span><span class="content">CSS Style Sheet Collections</span><a class="self-link" href="#css-style-sheet-collections"></a></h3> <p>Below various new concepts are defined that are associated with each <code class="idl"><a data-link-type="idl" href="https://dom.spec.whatwg.org/#documentorshadowroot" id="ref-for-documentorshadowroot">DocumentOrShadowRoot</a></code> object.</p> <p>Each <code class="idl"><a data-link-type="idl" href="https://dom.spec.whatwg.org/#documentorshadowroot" id="ref-for-documentorshadowroot①">DocumentOrShadowRoot</a></code> has an associated list of zero or more <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet①⑧">CSS style sheets</a>, named the <dfn class="dfn-paneled" data-dfn-for="DocumentOrShadowRoot" data-dfn-type="dfn" data-export id="documentorshadowroot-document-or-shadow-root-css-style-sheets">document or shadow root CSS style sheets</dfn>. This is an ordered list that contains:</p> <ol> <li>Any <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet①⑨">CSS style sheets</a> created from HTTP <code>Link</code> headers, in header order <li>Any <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet②⓪">CSS style sheets</a> associated with the <code class="idl"><a data-link-type="idl" href="https://dom.spec.whatwg.org/#documentorshadowroot" id="ref-for-documentorshadowroot②">DocumentOrShadowRoot</a></code>, in <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/infrastructure.html#tree-order" id="ref-for-tree-order">tree order</a> </ol> <p>Each <code class="idl"><a data-link-type="idl" href="https://dom.spec.whatwg.org/#documentorshadowroot" id="ref-for-documentorshadowroot③">DocumentOrShadowRoot</a></code> has an associated list of zero or more <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet②①">CSS style sheets</a>, named the <dfn class="dfn-paneled" data-dfn-for="DocumentOrShadowRoot" data-dfn-type="dfn" data-export id="documentorshadowroot-final-css-style-sheets">final CSS style sheets</dfn>. This is an ordered list that contains:</p> <ol> <li>The <a data-link-type="dfn" href="#documentorshadowroot-document-or-shadow-root-css-style-sheets" id="ref-for-documentorshadowroot-document-or-shadow-root-css-style-sheets">document or shadow root CSS style sheets</a>. <li>The contents of <code class="idl"><a data-link-type="idl" href="https://dom.spec.whatwg.org/#documentorshadowroot" id="ref-for-documentorshadowroot④">DocumentOrShadowRoot</a></code>’s <code class="idl"><a data-link-type="idl" href="#dom-documentorshadowroot-adoptedstylesheets" id="ref-for-dom-documentorshadowroot-adoptedstylesheets">adoptedStyleSheets</a></code>' <a data-link-type="dfn" href="https://webidl.spec.whatwg.org/#observable-array-attribute-backing-list" id="ref-for-observable-array-attribute-backing-list">backing list</a>, in array order. </ol> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="create-a-css-style-sheet">create a CSS style sheet</dfn>, run these steps:</p> <ol> <li>Create a new <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet②②">CSS style sheet</a> object and set its properties as specified. <li> Then run the <a data-link-type="dfn" href="#add-a-css-style-sheet" id="ref-for-add-a-css-style-sheet①">add a CSS style sheet</a> steps for the newly created <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet②③">CSS style sheet</a>. <p class="warning">If the <a data-link-type="dfn" href="#concept-css-style-sheet-origin-clean-flag" id="ref-for-concept-css-style-sheet-origin-clean-flag④">origin-clean flag</a> is unset, this can expose information from the user’s intranet. </p> </ol> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="add-a-css-style-sheet">add a CSS style sheet</dfn>, run these steps:</p> <ol> <li>Add the <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet②④">CSS style sheet</a> to the list of <a data-link-type="dfn" href="#documentorshadowroot-document-or-shadow-root-css-style-sheets" id="ref-for-documentorshadowroot-document-or-shadow-root-css-style-sheets①">document or shadow root CSS style sheets</a> at the appropriate location. <li> <p>If the <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet②⑤">CSS style sheet</a>’s <a data-link-type="dfn" href="#concept-css-style-sheet-owner-node" id="ref-for-concept-css-style-sheet-owner-node⑦">owner node</a> <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/semantics.html#contributes-a-script-blocking-style-sheet" id="ref-for-contributes-a-script-blocking-style-sheet">contributes a script-blocking style sheet</a>, then user agents must <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#list-append" id="ref-for-list-append">append</a> the <span id="ref-for-concept-css-style-sheet-owner-node⑧">owner node</span> to its <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-node-document" id="ref-for-concept-node-document">node document</a>’s <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/semantics.html#script-blocking-style-sheet-set" id="ref-for-script-blocking-style-sheet-set">script-blocking style sheet set</a>.</p> <p class="note" role="note">The remainder of these steps deal with the <a data-link-type="dfn" href="#concept-css-style-sheet-disabled-flag" id="ref-for-concept-css-style-sheet-disabled-flag④">disabled flag</a>.</p> <li>If the <a data-link-type="dfn" href="#concept-css-style-sheet-disabled-flag" id="ref-for-concept-css-style-sheet-disabled-flag⑤">disabled flag</a> is set, then return. <li>If the <a data-link-type="dfn" href="#concept-css-style-sheet-title" id="ref-for-concept-css-style-sheet-title⑦">title</a> is not the empty string, the <a data-link-type="dfn" href="#concept-css-style-sheet-alternate-flag" id="ref-for-concept-css-style-sheet-alternate-flag②">alternate flag</a> is unset, and <a data-link-type="dfn" href="#preferred-css-style-sheet-set-name" id="ref-for-preferred-css-style-sheet-set-name">preferred CSS style sheet set name</a> is the empty string <a data-link-type="dfn" href="#change-the-preferred-css-style-sheet-set-name" id="ref-for-change-the-preferred-css-style-sheet-set-name">change the preferred CSS style sheet set name</a> to the <span id="ref-for-concept-css-style-sheet-title⑧">title</span>. <li> If any of the following is true, then unset the <a data-link-type="dfn" href="#concept-css-style-sheet-disabled-flag" id="ref-for-concept-css-style-sheet-disabled-flag⑥">disabled flag</a> and return: <ul> <li>The <a data-link-type="dfn" href="#concept-css-style-sheet-title" id="ref-for-concept-css-style-sheet-title⑨">title</a> is the empty string. <li>The <a data-link-type="dfn" href="#last-css-style-sheet-set-name" id="ref-for-last-css-style-sheet-set-name">last CSS style sheet set name</a> is null and the <a data-link-type="dfn" href="#concept-css-style-sheet-title" id="ref-for-concept-css-style-sheet-title①⓪">title</a> is a <a data-link-type="dfn">case-sensitive</a> match for the <a data-link-type="dfn" href="#preferred-css-style-sheet-set-name" id="ref-for-preferred-css-style-sheet-set-name①">preferred CSS style sheet set name</a>. <li>The <a data-link-type="dfn" href="#concept-css-style-sheet-title" id="ref-for-concept-css-style-sheet-title①①">title</a> is a <a data-link-type="dfn">case-sensitive</a> match for the <a data-link-type="dfn" href="#last-css-style-sheet-set-name" id="ref-for-last-css-style-sheet-set-name①">last CSS style sheet set name</a>. </ul> <li>Set the <a data-link-type="dfn" href="#concept-css-style-sheet-disabled-flag" id="ref-for-concept-css-style-sheet-disabled-flag⑦">disabled flag</a>. </ol> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="remove-a-css-style-sheet">remove a CSS style sheet</dfn>, run these steps:</p> <ol> <li>Remove the <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet②⑥">CSS style sheet</a> from the list of <a data-link-type="dfn" href="#documentorshadowroot-document-or-shadow-root-css-style-sheets" id="ref-for-documentorshadowroot-document-or-shadow-root-css-style-sheets②">document or shadow root CSS style sheets</a>. <li>Set the <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet②⑦">CSS style sheet</a>’s <a data-link-type="dfn" href="#concept-css-style-sheet-parent-css-style-sheet" id="ref-for-concept-css-style-sheet-parent-css-style-sheet②">parent CSS style sheet</a>, <a data-link-type="dfn" href="#concept-css-style-sheet-owner-node" id="ref-for-concept-css-style-sheet-owner-node⑨">owner node</a> and <a data-link-type="dfn" href="#concept-css-style-sheet-owner-css-rule" id="ref-for-concept-css-style-sheet-owner-css-rule②">owner CSS rule</a> to null. </ol> <p>A <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="persistent-css-style-sheet">persistent CSS style sheet</dfn> is a <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet②⑧">CSS style sheet</a> from the <a data-link-type="dfn" href="#documentorshadowroot-document-or-shadow-root-css-style-sheets" id="ref-for-documentorshadowroot-document-or-shadow-root-css-style-sheets③">document or shadow root CSS style sheets</a> whose <a data-link-type="dfn" href="#concept-css-style-sheet-title" id="ref-for-concept-css-style-sheet-title①②">title</a> is the empty string and whose <a data-link-type="dfn" href="#concept-css-style-sheet-alternate-flag" id="ref-for-concept-css-style-sheet-alternate-flag③">alternate flag</a> is unset.</p> <p>A <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="css-style-sheet-set">CSS style sheet set</dfn> is an ordered collection of one or more <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet②⑨">CSS style sheets</a> from the <a data-link-type="dfn" href="#documentorshadowroot-document-or-shadow-root-css-style-sheets" id="ref-for-documentorshadowroot-document-or-shadow-root-css-style-sheets④">document or shadow root CSS style sheets</a> which have an identical <a data-link-type="dfn" href="#concept-css-style-sheet-title" id="ref-for-concept-css-style-sheet-title①③">title</a> that is not the empty string.</p> <p>A <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="css-style-sheet-set-name">CSS style sheet set name</dfn> is the <a data-link-type="dfn" href="#concept-css-style-sheet-title" id="ref-for-concept-css-style-sheet-title①④">title</a> the <a data-link-type="dfn" href="#css-style-sheet-set" id="ref-for-css-style-sheet-set">CSS style sheet set</a> has in common.</p> <p>An <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="enabled-css-style-sheet-set">enabled CSS style sheet set</dfn> is a <a data-link-type="dfn" href="#css-style-sheet-set" id="ref-for-css-style-sheet-set①">CSS style sheet set</a> of which each <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet③⓪">CSS style sheet</a> has its <a data-link-type="dfn" href="#concept-css-style-sheet-disabled-flag" id="ref-for-concept-css-style-sheet-disabled-flag⑧">disabled flag</a> unset.</p> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="enable-a-css-style-sheet-set">enable a CSS style sheet set</dfn> with name <var>name</var>, run these steps:</p> <ol> <li>If <var>name</var> is the empty string, set the <a data-link-type="dfn" href="#concept-css-style-sheet-disabled-flag" id="ref-for-concept-css-style-sheet-disabled-flag⑨">disabled flag</a> for each <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet③①">CSS style sheet</a> that is in a <a data-link-type="dfn" href="#css-style-sheet-set" id="ref-for-css-style-sheet-set②">CSS style sheet set</a> and return. <li>Unset the <a data-link-type="dfn" href="#concept-css-style-sheet-disabled-flag" id="ref-for-concept-css-style-sheet-disabled-flag①⓪">disabled flag</a> for each <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet③②">CSS style sheet</a> in a <a data-link-type="dfn" href="#css-style-sheet-set" id="ref-for-css-style-sheet-set③">CSS style sheet set</a> whose <a data-link-type="dfn" href="#css-style-sheet-set-name" id="ref-for-css-style-sheet-set-name">CSS style sheet set name</a> is a <a data-link-type="dfn">case-sensitive</a> match for <var>name</var> and set it for all other <span id="ref-for-css-style-sheet③③">CSS style sheets</span> in a <span id="ref-for-css-style-sheet-set④">CSS style sheet set</span>. </ol> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="select-a-css-style-sheet-set">select a CSS style sheet set</dfn> with name <var>name</var>, run these steps:</p> <ol> <li><a data-link-type="dfn" href="#enable-a-css-style-sheet-set" id="ref-for-enable-a-css-style-sheet-set">enable a CSS style sheet set</a> with name <var>name</var>. <li>Set <a data-link-type="dfn" href="#last-css-style-sheet-set-name" id="ref-for-last-css-style-sheet-set-name②">last CSS style sheet set name</a> to <var>name</var>. </ol> <p>A <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="last-css-style-sheet-set-name">last CSS style sheet set name</dfn> is a concept to determine what <a data-link-type="dfn" href="#css-style-sheet-set" id="ref-for-css-style-sheet-set⑤">CSS style sheet set</a> was last <a data-link-type="dfn" href="#select-a-css-style-sheet-set" id="ref-for-select-a-css-style-sheet-set">selected</a>. Initially its value is null.</p> <p>A <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="preferred-css-style-sheet-set-name">preferred CSS style sheet set name</dfn> is a concept to determine which <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet③④">CSS style sheets</a> need to have their <a data-link-type="dfn" href="#concept-css-style-sheet-disabled-flag" id="ref-for-concept-css-style-sheet-disabled-flag①①">disabled flag</a> unset. Initially its value is the empty string.</p> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="change-the-preferred-css-style-sheet-set-name">change the preferred CSS style sheet set name</dfn> with name <var>name</var>, run these steps:</p> <ol> <li>Let <var>current</var> be the <a data-link-type="dfn" href="#preferred-css-style-sheet-set-name" id="ref-for-preferred-css-style-sheet-set-name②">preferred CSS style sheet set name</a>. <li>Set <a data-link-type="dfn" href="#preferred-css-style-sheet-set-name" id="ref-for-preferred-css-style-sheet-set-name③">preferred CSS style sheet set name</a> to <var>name</var>. <li>If <var>name</var> is not a <a data-link-type="dfn">case-sensitive</a> match for <var>current</var> and <a data-link-type="dfn" href="#last-css-style-sheet-set-name" id="ref-for-last-css-style-sheet-set-name③">last CSS style sheet set name</a> is null <a data-link-type="dfn" href="#enable-a-css-style-sheet-set" id="ref-for-enable-a-css-style-sheet-set①">enable a CSS style sheet set</a> with name <var>name</var>. </ol> <h4 class="heading settled" data-level="6.2.1" id="the-http-default-style-header"><span class="secno">6.2.1. </span><span class="content">The HTTP Default-Style Header</span><a class="self-link" href="#the-http-default-style-header"></a></h4> <p>The HTTP <a data-link-type="dfn" href="#http-default-style" id="ref-for-http-default-style">Default-Style</a> header can be used to set the <a data-link-type="dfn" href="#preferred-css-style-sheet-set-name" id="ref-for-preferred-css-style-sheet-set-name④">preferred CSS style sheet set name</a> influencing which <a data-link-type="dfn" href="#css-style-sheet-set" id="ref-for-css-style-sheet-set⑥">CSS style sheet set</a> is (initially) the <a data-link-type="dfn" href="#enabled-css-style-sheet-set" id="ref-for-enabled-css-style-sheet-set">enabled CSS style sheet set</a>.</p> <p>For each HTTP <a data-link-type="dfn" href="#http-default-style" id="ref-for-http-default-style①">Default-Style</a> header, in header order, the user agent must <a data-link-type="dfn" href="#change-the-preferred-css-style-sheet-set-name" id="ref-for-change-the-preferred-css-style-sheet-set-name①">change the preferred CSS style sheet set name</a> with name being the value of the header.</p> <h4 class="heading settled" data-level="6.2.2" id="the-stylesheetlist-interface"><span class="secno">6.2.2. </span><span class="content">The <code class="idl"><a data-link-type="idl" href="#stylesheetlist" id="ref-for-stylesheetlist">StyleSheetList</a></code> Interface</span><a class="self-link" href="#the-stylesheetlist-interface"></a></h4> <p>The <code class="idl"><a data-link-type="idl" href="#stylesheetlist" id="ref-for-stylesheetlist①">StyleSheetList</a></code> interface represents an ordered collection of <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet③⑤">CSS style sheets</a>.</p> <pre class="idl highlight def">[<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed" id="ref-for-Exposed③"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="stylesheetlist"><code><c- g>StyleSheetList</c-></code></dfn> { <c- b>getter</c-> <a data-link-type="idl-name" href="#cssstylesheet" id="ref-for-cssstylesheet①⓪"><c- n>CSSStyleSheet</c-></a>? <a class="idl-code" data-link-type="method" href="#dom-stylesheetlist-item" id="ref-for-dom-stylesheetlist-item"><c- g>item</c-></a>(<a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long" id="ref-for-idl-unsigned-long⑦"><c- b>unsigned</c-> <c- b>long</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="StyleSheetList/item(index)" data-dfn-type="argument" data-export id="dom-stylesheetlist-item-index-index"><code><c- g>index</c-></code></dfn>); <c- b>readonly</c-> <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long" id="ref-for-idl-unsigned-long⑧"><c- b>unsigned</c-> <c- b>long</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="unsigned long" href="#dom-stylesheetlist-length" id="ref-for-dom-stylesheetlist-length"><c- g>length</c-></a>; }; </pre> <p>The object’s <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-supported-property-indices" id="ref-for-dfn-supported-property-indices②">supported property indices</a> are the numbers in the range zero to one less than the number of <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet③⑥">CSS style sheets</a> represented by the collection. If there are no such <span id="ref-for-css-style-sheet③⑦">CSS style sheets</span>, then there are no <span id="ref-for-dfn-supported-property-indices③">supported property indices</span>.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="StyleSheetList" data-dfn-type="method" data-export id="dom-stylesheetlist-item"><code>item(<var>index</var>)</code></dfn> method must return the <var>index</var>th <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet③⑧">CSS style sheet</a> in the collection. If there is no <var>index</var>th object in the collection, then the method must return null.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="StyleSheetList" data-dfn-type="attribute" data-export id="dom-stylesheetlist-length"><code>length</code></dfn> attribute must return the number of <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet③⑨">CSS style sheets</a> represented by the collection.</p> <h4 class="heading settled" data-level="6.2.3" id="extensions-to-the-document-or-shadow-root-interface"><span class="secno">6.2.3. </span><span class="content">Extensions to the <code class="idl"><a data-link-type="idl" href="https://dom.spec.whatwg.org/#documentorshadowroot" id="ref-for-documentorshadowroot⑤">DocumentOrShadowRoot</a></code> Interface Mixin</span><a class="self-link" href="#extensions-to-the-document-or-shadow-root-interface"></a></h4> <pre class="idl highlight def"><c- b>partial</c-> <c- b>interface</c-> <c- b>mixin</c-> <a class="idl-code" data-link-type="interface" href="https://dom.spec.whatwg.org/#documentorshadowroot" id="ref-for-documentorshadowroot⑥"><c- g>DocumentOrShadowRoot</c-></a> { [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject" id="ref-for-SameObject③"><c- g>SameObject</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#stylesheetlist" id="ref-for-stylesheetlist②"><c- n>StyleSheetList</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="StyleSheetList" href="#dom-documentorshadowroot-stylesheets" id="ref-for-dom-documentorshadowroot-stylesheets"><c- g>styleSheets</c-></a>; <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-observable-array" id="ref-for-idl-observable-array"><c- b>ObservableArray</c-></a><<a data-link-type="idl-name" href="#cssstylesheet" id="ref-for-cssstylesheet①①"><c- n>CSSStyleSheet</c-></a>> <a class="idl-code" data-link-type="attribute" data-type="ObservableArray<CSSStyleSheet>" href="#dom-documentorshadowroot-adoptedstylesheets" id="ref-for-dom-documentorshadowroot-adoptedstylesheets①"><c- g>adoptedStyleSheets</c-></a>; }; </pre> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="DocumentOrShadowRoot" data-dfn-type="attribute" data-export id="dom-documentorshadowroot-stylesheets"><code>styleSheets</code></dfn> attribute must return a <code class="idl"><a data-link-type="idl" href="#stylesheetlist" id="ref-for-stylesheetlist③">StyleSheetList</a></code> collection representing the <a data-link-type="dfn" href="#documentorshadowroot-document-or-shadow-root-css-style-sheets" id="ref-for-documentorshadowroot-document-or-shadow-root-css-style-sheets⑤">document or shadow root CSS style sheets</a>.</p> <p>The <a data-link-type="dfn" href="https://webidl.spec.whatwg.org/#observable-array-attribute-set-an-indexed-value" id="ref-for-observable-array-attribute-set-an-indexed-value">set an indexed value</a> algorithm for <dfn class="dfn-paneled idl-code" data-dfn-for="DocumentOrShadowRoot" data-dfn-type="attribute" data-export id="dom-documentorshadowroot-adoptedstylesheets"><code>adoptedStyleSheets</code></dfn>, given <var>value</var> and <var>index</var>, is the following:</p> <ol> <li>If <var>value</var>’s <a data-link-type="dfn" href="#concept-css-style-sheet-constructed-flag" id="ref-for-concept-css-style-sheet-constructed-flag⑥">constructed flag</a> is not set, or its <a data-link-type="dfn" href="#concept-css-style-sheet-constructor-document" id="ref-for-concept-css-style-sheet-constructor-document①">constructor document</a> is not equal to this <code class="idl"><a data-link-type="idl" href="https://dom.spec.whatwg.org/#documentorshadowroot" id="ref-for-documentorshadowroot⑦">DocumentOrShadowRoot</a></code>’s <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-node-document" id="ref-for-concept-node-document①">node document</a>, throw a "<code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#notallowederror" id="ref-for-notallowederror④">NotAllowedError</a></code>" <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#idl-DOMException" id="ref-for-idl-DOMException⑥">DOMException</a></code>. </ol> <h3 class="heading settled" data-level="6.3" id="style-sheet-association"><span class="secno">6.3. </span><span class="content">Style Sheet Association</span><a class="self-link" href="#style-sheet-association"></a></h3> <p>This section defines the interface an <a data-link-type="dfn" href="#concept-css-style-sheet-owner-node" id="ref-for-concept-css-style-sheet-owner-node①⓪">owner node</a> of a <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet④⓪">CSS style sheet</a> has to implement and defines the requirements for <a data-link-type="dfn" href="https://www.w3.org/TR/xml-stylesheet/#dt-xml-stylesheet" id="ref-for-dt-xml-stylesheet">xml-stylesheet processing instructions</a> and HTTP <code>Link</code> headers when the link relation type is an <a data-link-type="dfn">ASCII case-insensitive</a> match for "<code>stylesheet</code>".</p> <h4 class="heading settled" data-level="6.3.1" id="fetching-css-style-sheets"><span class="secno">6.3.1. </span><span class="content">Fetching CSS style sheets</span><a class="self-link" href="#fetching-css-style-sheets"></a></h4> <div class="algorithm" data-algorithm="fetch a CSS style sheet"> To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="fetch-a-css-style-sheet">fetch a CSS style sheet</dfn> with parsed URL <var>parsed URL</var>, referrer <var>referrer</var>, document <var>document</var>, optionally a set of parameters <var>parameters</var> (used as input to creating a <a data-link-type="dfn" href="https://fetch.spec.whatwg.org/#concept-request" id="ref-for-concept-request">request</a>), and an algorithm for handling the response result <var>processTheResponse</var> that takes a response, follow these steps: <ol> <li>Let <var>origin</var> be <var>document</var>’s <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/browsers.html#concept-origin" id="ref-for-concept-origin">origin</a>. <li>Let <var>request</var> be a new <a data-link-type="dfn" href="https://fetch.spec.whatwg.org/#concept-request" id="ref-for-concept-request①">request</a>, with the <a data-link-type="dfn" href="https://fetch.spec.whatwg.org/#concept-request-url" id="ref-for-concept-request-url">url</a> <var>parsed URL</var>, <a data-link-type="dfn" href="https://fetch.spec.whatwg.org/#concept-request-origin" id="ref-for-concept-request-origin">origin</a> <var>origin</var>, <a data-link-type="dfn" href="https://fetch.spec.whatwg.org/#concept-request-referrer" id="ref-for-concept-request-referrer">referrer</a> <var>referrer</var>, and if specified the set of parameters <var>parameters</var>. <li> <a data-link-type="dfn" href="https://fetch.spec.whatwg.org/#concept-fetch" id="ref-for-concept-fetch">Fetch</a> <var>request</var>, with <var>processResponseEndOfBody</var>, given <var>response</var>, being the following steps: <ol> <li>If <var>response</var> is a <a data-link-type="dfn" href="https://fetch.spec.whatwg.org/#concept-network-error" id="ref-for-concept-network-error">network error</a>, return. <li>If <var>document</var> is in <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-document-quirks" id="ref-for-concept-document-quirks">quirks mode</a>, <var>response</var> is <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/urls-and-fetching.html#cors-same-origin" id="ref-for-cors-same-origin">CORS-same-origin</a> and the <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/infrastructure.html#content-type" id="ref-for-content-type">Content-Type metadata</a> of <var>response</var> is not a <a data-link-type="dfn" href="#supported-styling-language" id="ref-for-supported-styling-language">supported styling language</a> change the <span id="ref-for-content-type①">Content-Type metadata</span> of <var>response</var> to <code>text/css</code>. <li>If <var>response</var> is not in a <a data-link-type="dfn" href="#supported-styling-language" id="ref-for-supported-styling-language①">supported styling language</a>, return. <li>Execute <var>processTheResponse</var> given <var>response</var> </ol> </ol> </div> <h4 class="heading settled" data-level="6.3.2" id="the-linkstyle-interface"><span class="secno">6.3.2. </span><span class="content">The <code class="idl"><a data-link-type="idl" href="#linkstyle" id="ref-for-linkstyle">LinkStyle</a></code> Interface</span><a class="self-link" href="#the-linkstyle-interface"></a></h4> <p>The <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="associated-css-style-sheet">associated CSS style sheet</dfn> of a node is the <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet④①">CSS style sheet</a> in the list of <a data-link-type="dfn" href="#documentorshadowroot-document-or-shadow-root-css-style-sheets" id="ref-for-documentorshadowroot-document-or-shadow-root-css-style-sheets⑥">document or shadow root CSS style sheets</a> of which the <a data-link-type="dfn" href="#concept-css-style-sheet-owner-node" id="ref-for-concept-css-style-sheet-owner-node①①">owner node</a> is said node. This node must also implement the <code class="idl"><a data-link-type="idl" href="#linkstyle" id="ref-for-linkstyle①">LinkStyle</a></code> interface.</p> <pre class="idl highlight def"><c- b>interface</c-> <c- b>mixin</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="linkstyle"><code><c- g>LinkStyle</c-></code></dfn> { <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssstylesheet" id="ref-for-cssstylesheet①②"><c- n>CSSStyleSheet</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSStyleSheet?" href="#dom-linkstyle-sheet" id="ref-for-dom-linkstyle-sheet"><c- g>sheet</c-></a>; }; </pre> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="LinkStyle" data-dfn-type="attribute" data-export id="dom-linkstyle-sheet"><code>sheet</code></dfn> attribute must return the <a data-link-type="dfn" href="#associated-css-style-sheet" id="ref-for-associated-css-style-sheet①">associated CSS style sheet</a> for the node or null if there is no <span id="ref-for-associated-css-style-sheet②">associated CSS style sheet</span>.</p> <div class="example" id="example-3accc107"> <a class="self-link" href="#example-3accc107"></a> In the following fragment, the first <code><a data-link-type="element" href="https://html.spec.whatwg.org/multipage/semantics.html#the-style-element" id="ref-for-the-style-element">style</a></code> element has a <code class="idl"><a data-link-type="idl" href="#dom-linkstyle-sheet" id="ref-for-dom-linkstyle-sheet①">sheet</a></code> attribute that returns a <code class="idl"><a data-link-type="idl" href="#stylesheet" id="ref-for-stylesheet③">StyleSheet</a></code> object representing the style sheet, but for the second <code><a data-link-type="element" href="https://html.spec.whatwg.org/multipage/semantics.html#the-style-element" id="ref-for-the-style-element①">style</a></code> element, the <code class="idl"><a data-link-type="idl" href="#dom-linkstyle-sheet" id="ref-for-dom-linkstyle-sheet②">sheet</a></code> attribute returns null, assuming the user agent supports CSS (<code>text/css</code>), but does not support the (hypothetical) ExampleSheets (<code>text/example-sheets</code>). <pre><style type="text/css"> body { background:lime } </style> </pre> <pre><style type="text/example-sheets"> $(body).background := lime </style> </pre> </div> <p class="note" role="note"><span class="marker">Note:</span> Whether or not the node refers to a style sheet is defined by the specification that defines the semantics of said node.</p> <h4 class="heading settled" data-level="6.3.3" id="requirements-on-specifications"><span class="secno">6.3.3. </span><span class="content">Requirements on specifications</span><a class="self-link" href="#requirements-on-specifications"></a></h4> <p>Specifications introducing new ways of associating style sheets through the DOM should define which nodes implement the <code class="idl"><a data-link-type="idl" href="#linkstyle" id="ref-for-linkstyle②">LinkStyle</a></code> interface. When doing so, they must also define when a <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet④②">CSS style sheet</a> is <a data-link-type="dfn" href="#create-a-css-style-sheet" id="ref-for-create-a-css-style-sheet">created</a>.</p> <h4 class="heading settled" data-level="6.3.4" id="requirements-on-user-agents-implementing-the-xml-stylesheet-processing-instruction"><span class="secno">6.3.4. </span><span class="content">Requirements on user agents Implementing the xml-stylesheet processing instruction</span><a class="self-link" href="#requirements-on-user-agents-implementing-the-xml-stylesheet-processing-instruction"></a></h4> <pre class="idl highlight def"><a data-link-type="idl-name" href="https://dom.spec.whatwg.org/#processinginstruction" id="ref-for-processinginstruction①"><c- n>ProcessingInstruction</c-></a> <c- b>includes</c-> <a data-link-type="idl-name" href="#linkstyle" id="ref-for-linkstyle③"><c- n>LinkStyle</c-></a>;</pre> <p>The <dfn class="dfn-paneled" data-dfn-type="dfn" data-noexport id="prolog">prolog</dfn> refers to <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-node" id="ref-for-concept-node">nodes</a> that are children of the <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#clone-a-node-document" id="ref-for-clone-a-node-document">document</a> and are not <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-tree-following" id="ref-for-concept-tree-following">following</a> the <code class="idl"><a data-link-type="idl" href="https://dom.spec.whatwg.org/#element" id="ref-for-element①">Element</a></code> child of the <span id="ref-for-clone-a-node-document①">document</span>, if any.</p> <p>When a <code>ProcessingInstruction</code> <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#boundary-point-node" id="ref-for-boundary-point-node">node</a> <var>node</var> becomes part of the <a data-link-type="dfn" href="#prolog" id="ref-for-prolog">prolog</a>, is no longer part of the <span id="ref-for-prolog①">prolog</span>, or has its <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-cd-data" id="ref-for-concept-cd-data">data</a> changed, these steps must be run:</p> <div class="algorithm" data-algorithm="handle a PI stylesheet"> <ol> <li>If an instance of this algorithm is currently running for <var>node</var>, abort that instance, and stop the associated <a data-link-type="dfn" href="https://fetch.spec.whatwg.org/#concept-fetch" id="ref-for-concept-fetch①">fetching</a> if applicable. <li>If <var>node</var> has an <a data-link-type="dfn" href="#associated-css-style-sheet" id="ref-for-associated-css-style-sheet③">associated CSS style sheet</a>, <a data-link-type="dfn" href="#remove-a-css-style-sheet" id="ref-for-remove-a-css-style-sheet">remove</a> it. <li>If <var>node</var> is not an <a data-link-type="dfn" href="https://www.w3.org/TR/xml-stylesheet/#dt-xml-stylesheet" id="ref-for-dt-xml-stylesheet①">xml-stylesheet processing instruction</a>, then return. <li>If <var>node</var> does not have an <code>href</code> <a data-link-type="dfn" href="https://www.w3.org/TR/xml-stylesheet/#dt-pseudo-attribute" id="ref-for-dt-pseudo-attribute">pseudo-attribute</a>, then return. <li>Let <var>title</var> be the value of the <code>title</code> <a data-link-type="dfn" href="https://www.w3.org/TR/xml-stylesheet/#dt-pseudo-attribute" id="ref-for-dt-pseudo-attribute①">pseudo-attribute</a> or the empty string if the <code>title</code> <span id="ref-for-dt-pseudo-attribute②">pseudo-attribute</span> is not specified. <li>If there is an <code>alternate</code> <a data-link-type="dfn" href="https://www.w3.org/TR/xml-stylesheet/#dt-pseudo-attribute" id="ref-for-dt-pseudo-attribute③">pseudo-attribute</a> whose value is a <a data-link-type="dfn">case-sensitive</a> match for "<code>yes</code>" and <var>title</var> is the empty string, then return. <li>If there is a <code>type</code> <a data-link-type="dfn" href="https://www.w3.org/TR/xml-stylesheet/#dt-pseudo-attribute" id="ref-for-dt-pseudo-attribute④">pseudo-attribute</a> whose value is not a <a data-link-type="dfn" href="#supported-styling-language" id="ref-for-supported-styling-language②">supported styling language</a> the user agent may return. <li>Let <var>input URL</var> be the value specified by the <code>href</code> <a data-link-type="dfn" href="https://www.w3.org/TR/xml-stylesheet/#dt-pseudo-attribute" id="ref-for-dt-pseudo-attribute⑤">pseudo-attribute</a>. <li>Let <var>document</var> be <var>node</var>’s <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-node-document" id="ref-for-concept-node-document②">node document</a> <li>Let <var>base URL</var> be <var>document</var>’s <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/urls-and-fetching.html#document-base-url" id="ref-for-document-base-url">document base URL</a>. <li>Let <var>referrer</var> be <var>document</var>’s <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-document-url" id="ref-for-concept-document-url">address</a>. <li>Let <var>parsed URL</var> be the return value of invoking the <a data-link-type="dfn" href="https://url.spec.whatwg.org/#concept-url-parser" id="ref-for-concept-url-parser">URL parser</a> with the string <var>input URL</var> and the base URL <var>base URL</var>. <li>If <var>parsed URL</var> is failure, then return. <li> <a data-link-type="dfn" href="#fetch-a-css-style-sheet" id="ref-for-fetch-a-css-style-sheet">Fetch a CSS style sheet</a> with parsed URL <var>parsed URL</var>, referrer <var>referrer</var>, document <var>document</var>, and <var>processTheResponse</var> given <var>response</var> being the following steps: <ol> <li> <a data-link-type="dfn" href="#create-a-css-style-sheet" id="ref-for-create-a-css-style-sheet①">Create a CSS style sheet</a> with the following properties: <dl> <dt><a data-link-type="dfn" href="#concept-css-style-sheet-location" id="ref-for-concept-css-style-sheet-location②">location</a> <dd>The result of invoking the <a data-link-type="dfn" href="https://url.spec.whatwg.org/#concept-url-serializer" id="ref-for-concept-url-serializer">URL serializer</a> with <var>parsed URL</var>. <dt><a data-link-type="dfn" href="#concept-css-style-sheet-parent-css-style-sheet" id="ref-for-concept-css-style-sheet-parent-css-style-sheet③">parent CSS style sheet</a> <dd>null. <dt><a data-link-type="dfn" href="#concept-css-style-sheet-owner-node" id="ref-for-concept-css-style-sheet-owner-node①②">owner node</a> <dd><var>node</var>. <dt><a data-link-type="dfn" href="#concept-css-style-sheet-owner-css-rule" id="ref-for-concept-css-style-sheet-owner-css-rule③">owner CSS rule</a> <dd>null. <dt><a data-link-type="dfn">media</a> <dd>The value of the <code>media</code> <a data-link-type="dfn" href="https://www.w3.org/TR/xml-stylesheet/#dt-pseudo-attribute" id="ref-for-dt-pseudo-attribute⑥">pseudo-attribute</a> if any, or the empty string otherwise. <dt><a data-link-type="dfn" href="#concept-css-style-sheet-title" id="ref-for-concept-css-style-sheet-title①⑤">title</a> <dd><var>title</var>. <dt><a data-link-type="dfn" href="#concept-css-style-sheet-alternate-flag" id="ref-for-concept-css-style-sheet-alternate-flag④">alternate flag</a> <dd>Set if the <code>alternate</code> <a data-link-type="dfn" href="https://www.w3.org/TR/xml-stylesheet/#dt-pseudo-attribute" id="ref-for-dt-pseudo-attribute⑦">pseudo-attribute</a> value is a <a data-link-type="dfn">case-sensitive</a> match for "<code>yes</code>", or unset otherwise. <dt><a data-link-type="dfn" href="#concept-css-style-sheet-origin-clean-flag" id="ref-for-concept-css-style-sheet-origin-clean-flag⑤">origin-clean flag</a> <dd>Set if <var>response</var> is <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/urls-and-fetching.html#cors-same-origin" id="ref-for-cors-same-origin①">CORS-same-origin</a>, or unset otherwise. </dl> <p>The CSS <a data-link-type="dfn" href="https://drafts.csswg.org/css-syntax-3/#environment-encoding" id="ref-for-environment-encoding">environment encoding</a> is the result of running the following steps:</p> <ol> <li>If the element has a <code>charset</code> <a data-link-type="dfn" href="https://www.w3.org/TR/xml-stylesheet/#dt-pseudo-attribute" id="ref-for-dt-pseudo-attribute⑧">pseudo-attribute</a>, <a data-link-type="dfn" href="https://encoding.spec.whatwg.org/#concept-encoding-get" id="ref-for-concept-encoding-get">get an encoding</a> from that pseudo-attribute’s value. If that succeeds, return the resulting encoding and abort these steps. <li>Otherwise, return the <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-document-encoding" id="ref-for-concept-document-encoding">document’s character encoding</a>. <a data-link-type="biblio" href="#biblio-dom" title="DOM Standard">[DOM]</a> </ol> </ol> </ol> </div> <h4 class="heading settled" data-level="6.3.5" id="requirements-on-user-agents-implementing-the-http-link-header"><span class="secno">6.3.5. </span><span class="content">Requirements on user agents Implementing the HTTP Link Header</span><a class="self-link" href="#requirements-on-user-agents-implementing-the-http-link-header"></a></h4> <p class="atrisk">For each HTTP <code>Link</code> header of which one of the link relation types is an <a data-link-type="dfn">ASCII case-insensitive</a> match for "<code>stylesheet</code>" these steps must be run: </p> <div class="algorithm" data-algorithm="fetch a Link header stylesheet"> <ol> <li>Let <var>title</var> be the value of the first of all the <code>title</code> parameters. If there are no such parameters it is the empty string. <li>If one of the (other) link relation types is an <a data-link-type="dfn">ASCII case-insensitive</a> match for "<code>alternate</code>" and <var>title</var> is the empty string, then return. <li> Let <var>input URL</var> be the value specified. <p class="issue" id="issue-d4a93110"><a class="self-link" href="#issue-d4a93110"></a> Be more specific</p> <li> Let <var>base URL</var> be the document’s <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/urls-and-fetching.html#document-base-url" id="ref-for-document-base-url①">document base URL</a>. <p class="issue" id="issue-af048285"><a class="self-link" href="#issue-af048285"></a> Is there a document at this point?</p> <li>Let <var>referrer</var> be the document’s <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-document-url" id="ref-for-concept-document-url①">address</a>. <li>Let <var>origin</var> be the document’s <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/browsers.html#concept-origin" id="ref-for-concept-origin①">origin</a>. <li>Let <var>parsed URL</var> be the return value of invoking the <a data-link-type="dfn" href="https://url.spec.whatwg.org/#concept-url-parser" id="ref-for-concept-url-parser①">URL parser</a> with the string <var>input URL</var> and the base URL <var>base URL</var>. <li>If <var>parsed URL</var> is failure, then return. <li> <a data-link-type="dfn" href="#fetch-a-css-style-sheet" id="ref-for-fetch-a-css-style-sheet①">Fetch a CSS style sheet</a> with parsed URL <var>parsed URL</var>, referrer <var>referrer</var>, document being the document, and <var>processTheResponse</var>, given <var>response</var>, being the following steps: <p class="issue" id="issue-45012e41"><a class="self-link" href="#issue-45012e41"></a> What if the HTML parser hasn’t decided on quirks/non-quirks yet?</p> <ol> <li> <a data-link-type="dfn" href="#create-a-css-style-sheet" id="ref-for-create-a-css-style-sheet②">Create a CSS style sheet</a> with the following properties: <dl> <dt><a data-link-type="dfn" href="#concept-css-style-sheet-location" id="ref-for-concept-css-style-sheet-location③">location</a> <dd>The result of invoking the <a data-link-type="dfn" href="https://url.spec.whatwg.org/#concept-url-serializer" id="ref-for-concept-url-serializer①">URL serializer</a> with <var>parsed URL</var>. <dt><a data-link-type="dfn" href="#concept-css-style-sheet-owner-node" id="ref-for-concept-css-style-sheet-owner-node①③">owner node</a> <dd>null. <dt><a data-link-type="dfn" href="#concept-css-style-sheet-parent-css-style-sheet" id="ref-for-concept-css-style-sheet-parent-css-style-sheet④">parent CSS style sheet</a> <dd>null. <dt><a data-link-type="dfn" href="#concept-css-style-sheet-owner-css-rule" id="ref-for-concept-css-style-sheet-owner-css-rule④">owner CSS rule</a> <dd>null. <dt><a data-link-type="dfn">media</a> <dd>The value of the first <code>media</code> parameter. <dt><a data-link-type="dfn" href="#concept-css-style-sheet-title" id="ref-for-concept-css-style-sheet-title①⑥">title</a> <dd><var>title</var>. <dt><a data-link-type="dfn" href="#concept-css-style-sheet-alternate-flag" id="ref-for-concept-css-style-sheet-alternate-flag⑤">alternate flag</a> <dd>Set if one of the specified link relation type for this HTTP <code>Link</code> header is an <a data-link-type="dfn">ASCII case-insensitive</a> match for "<code>alternate</code>", or false otherwise. <dt><a data-link-type="dfn" href="#concept-css-style-sheet-origin-clean-flag" id="ref-for-concept-css-style-sheet-origin-clean-flag⑥">origin-clean flag</a> <dd>Set if <var>response</var> is <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/urls-and-fetching.html#cors-same-origin" id="ref-for-cors-same-origin②">CORS-same-origin</a>, or unset otherwise. </dl> </ol> </ol> </div> <p>A style sheet referenced by a HTTP <code>Link</code> header using the rules in this section is said to be <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/semantics.html#a-style-sheet-that-is-blocking-scripts" id="ref-for-a-style-sheet-that-is-blocking-scripts">a style sheet that is blocking scripts</a> if the style sheet was enabled when created, and the user agent hasn’t given up on that particular style sheet yet. A user agent may give up on such a style sheet at any time.</p> <h3 class="heading settled" data-level="6.4" id="css-rules"><span class="secno">6.4. </span><span class="content">CSS Rules</span><a class="self-link" href="#css-rules"></a></h3> <p>A <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="css-rule">CSS rule</dfn> is an abstract concept that denotes a rule as defined by the CSS specification. A <a data-link-type="dfn" href="#css-rule" id="ref-for-css-rule①">CSS rule</a> is represented as an object that implements a subclass of the <code class="idl"><a data-link-type="idl" href="#cssrule" id="ref-for-cssrule①">CSSRule</a></code> interface, and which has the following associated state items:</p> <dl> <dt><dfn class="dfn-paneled" data-dfn-for="CSSRule" data-dfn-type="dfn" data-noexport id="concept-css-rule-type">type</dfn> <dd>A non-negative integer associated with a particular type of rule. This item is initialized when a rule is created and cannot change. <dt><dfn class="dfn-paneled" data-dfn-for="CSSRule" data-dfn-type="dfn" data-noexport id="concept-css-rule-text">text</dfn> <dd>A text representation of the rule suitable for direct use in a style sheet. This item is initialized when a rule is created and can be changed. <dt><dfn class="dfn-paneled" data-dfn-for="CSSRule" data-dfn-type="dfn" data-noexport id="concept-css-rule-parent-css-rule">parent CSS rule</dfn> <dd>A reference to an enclosing <a data-link-type="dfn" href="#css-rule" id="ref-for-css-rule②">CSS rule</a> or null. If the rule has an enclosing rule when it is created, then this item is initialized to the enclosing rule; otherwise it is null. It can be changed to null. <dt><dfn class="dfn-paneled" data-dfn-for="CSSRule" data-dfn-type="dfn" data-noexport id="concept-css-rule-parent-css-style-sheet">parent CSS style sheet</dfn> <dd>A reference to a parent <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet④③">CSS style sheet</a> or null. This item is initialized to reference an associated style sheet when the rule is created. It can be changed to null. <dt><dfn class="dfn-paneled" data-dfn-for="CSSRule" data-dfn-type="dfn" data-noexport id="concept-css-rule-child-css-rules">child CSS rules</dfn> <dd>A list of child <a data-link-type="dfn" href="#css-rule" id="ref-for-css-rule③">CSS rules</a>. The list can be mutated. </dl> <p>In addition to the above state, each <a data-link-type="dfn" href="#css-rule" id="ref-for-css-rule④">CSS rule</a> may be associated with other state in accordance with its <a data-link-type="dfn" href="#concept-css-rule-type" id="ref-for-concept-css-rule-type">type</a>.</p> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="parse-a-css-rule">parse a CSS rule</dfn> from a string <var>string</var>, run the following steps:</p> <ol> <li>Let <var>rule</var> be the return value of invoking <a data-link-type="dfn" href="https://drafts.csswg.org/css-syntax-3/#parse-a-rule" id="ref-for-parse-a-rule①">parse a rule</a> with <var>string</var>. <li>If <var>rule</var> is a syntax error, return <var>rule</var>. <li>Let <var>parsed rule</var> be the result of parsing <var>rule</var> according to the appropriate CSS specifications, dropping parts that are said to be ignored. If the whole <var>rule</var> is dropped, return a syntax error. <li>Return <var>parsed rule</var>. </ol> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-css-rule">serialize a CSS rule</dfn>, perform one of the following in accordance with the <a data-link-type="dfn" href="#css-rule" id="ref-for-css-rule⑤">CSS rule</a>’s <a data-link-type="dfn" href="#concept-css-rule-type" id="ref-for-concept-css-rule-type①">type</a>:</p> <dl class="switch"> <dt><code class="idl"><a data-link-type="idl" href="#cssstylerule" id="ref-for-cssstylerule">CSSStyleRule</a></code> <dd> Return the result of the following steps: <ol> <li>Let <var>s</var> initially be the result of performing <a data-link-type="dfn" href="#serialize-a-group-of-selectors" id="ref-for-serialize-a-group-of-selectors①">serialize a group of selectors</a> on the rule’s associated selectors, followed by the string "<code> {</code>", i.e., a single SPACE (U+0020), followed by LEFT CURLY BRACKET (U+007B). <li>Let <var>decls</var> be the result of performing <a data-link-type="dfn" href="#serialize-a-css-declaration-block" id="ref-for-serialize-a-css-declaration-block">serialize a CSS declaration block</a> on the rule’s associated declarations, or null if there are no such declarations. <li>Let <var>rules</var> be the result of performing <a data-link-type="dfn" href="#serialize-a-css-rule" id="ref-for-serialize-a-css-rule">serialize a CSS rule</a> on each rule in the rule’s <code class="idl"><a data-link-type="idl" href="https://www.w3.org/TR/css-nesting-1/#dom-cssstylerule-cssrules" id="ref-for-dom-cssstylerule-cssrules">cssRules</a></code> list, or null if there are no such rules. <li>If <var>decls</var> and <var>rules</var> are both null, append " }" to <var>s</var> (i.e. a single SPACE (U+0020) followed by RIGHT CURLY BRACKET (U+007D)) and return <var>s</var>. <li> If <var>rules</var> is null: <ol> <li>Append a single SPACE (U+0020) to <var>s</var> <li>Append <var>decls</var> to <var>s</var> <li>Append " }" to <var>s</var> (i.e. a single SPACE (U+0020) followed by RIGHT CURLY BRACKET (U+007D)). <li>Return <var>s</var>. </ol> <li> Otherwise: <ol> <li>If <var>decls</var> is not null, prepend it to <var>rules</var>. <li> For each <var>rule</var> in <var>rules</var>: <ul> <li>If <var>rule</var> is the empty string, do nothing. <li> Otherwise: <ol> <li>Append a newline followed by two spaces to <var>s</var>. <li>Append <var>rule</var> to <var>s</var>. </ol> </ul> <li>Append a newline followed by RIGHT CURLY BRACKET (U+007D) to <var>s</var>. <li>Return <var>s</var>. </ol> </ol> <dt><code class="idl"><a data-link-type="idl" href="#cssimportrule" id="ref-for-cssimportrule">CSSImportRule</a></code> <dd> The result of concatenating the following: <ol> <li>The string "<code>@import</code>" followed by a single SPACE (U+0020). <li>The result of performing <a data-link-type="dfn" href="#serialize-a-url" id="ref-for-serialize-a-url">serialize a URL</a> on the rule’s location. <li>If the rule’s associated media list is not empty, a single SPACE (U+0020) followed by the result of performing <a data-link-type="dfn" href="#serialize-a-media-query-list" id="ref-for-serialize-a-media-query-list②">serialize a media query list</a> on the media list. <li>The string "<code>;</code>", i.e., SEMICOLON (U+003B). </ol> <div class="example" id="example-844003e0"> <a class="self-link" href="#example-844003e0"></a> <pre>@import url("import.css");</pre> <pre>@import url("print.css") print;</pre> </div> <dt><code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-conditional-3/#cssmediarule" id="ref-for-cssmediarule">CSSMediaRule</a></code> <dd> The result of concatenating the following: <ol> <li>The string "<code>@media</code>", followed by a single SPACE (U+0020). <li>The result of performing <a data-link-type="dfn" href="#serialize-a-media-query-list" id="ref-for-serialize-a-media-query-list③">serialize a media query list</a> on rule’s media query list. <li>A single SPACE (U+0020), followed by the string "{", i.e., LEFT CURLY BRACKET (U+007B), followed by a newline. <li>The result of performing <a data-link-type="dfn" href="#serialize-a-css-rule" id="ref-for-serialize-a-css-rule①">serialize a CSS rule</a> on each rule in the rule’s <code class="idl"><a data-link-type="idl" href="#dom-cssgroupingrule-cssrules" id="ref-for-dom-cssgroupingrule-cssrules">cssRules</a></code> list, filtering out empty strings, indenting each item with two spaces, all joined with newline. <li>A newline, followed by the string "}", i.e., RIGHT CURLY BRACKET (U+007D) </ol> <dt><code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-fonts-5/#cssfontfacerule" id="ref-for-cssfontfacerule">CSSFontFaceRule</a></code> <dd> The result of concatenating the following: <ol> <li>The string "<code>@font-face {</code>", followed by a single SPACE (U+0020). <li>The string "<code>font-family:</code>", followed by a single SPACE (U+0020). <li>The result of performing <a data-link-type="dfn" href="#serialize-a-string" id="ref-for-serialize-a-string④">serialize a string</a> on the rule’s font family name. <li>The string "<code>;</code>", i.e., SEMICOLON (U+003B). <li> If the rule’s associated source list is not empty, follow these substeps: <ol> <li>A single SPACE (U+0020), followed by the string "<code>src:</code>", followed by a single SPACE (U+0020). <li>The result of invoking <a data-link-type="dfn" href="#serialize-a-comma-separated-list" id="ref-for-serialize-a-comma-separated-list③">serialize a comma-separated list</a> on performing <a data-link-type="dfn" href="#serialize-a-url" id="ref-for-serialize-a-url①">serialize a URL</a> or <a data-link-type="dfn" href="#serialize-a-local" id="ref-for-serialize-a-local">serialize a LOCAL</a> for each source on the source list. <li>The string "<code>;</code>", i.e., SEMICOLON (U+003B). </ol> <li>If rule’s associated <a class="property css" data-link-type="property">unicode-range</a> descriptor is present, a single SPACE (U+0020), followed by the string "<code>unicode-range:</code>", followed by a single SPACE (U+0020), followed by the result of performing serialize a <span class="production"><'unicode-range'></span>, followed by the string "<code>;</code>", i.e., SEMICOLON (U+003B). <li>If rule’s associated <a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-fonts-4/#propdef-font-variant" id="ref-for-propdef-font-variant">font-variant</a> descriptor is present, a single SPACE (U+0020), followed by the string "<code>font-variant:</code>", followed by a single SPACE (U+0020), followed by the result of performing serialize a <span class="production" id="ref-for-propdef-font-variant①"><'font-variant'></span>, followed by the string "<code>;</code>", i.e., SEMICOLON (U+003B). <li>If rule’s associated <a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-fonts-4/#propdef-font-feature-settings" id="ref-for-propdef-font-feature-settings">font-feature-settings</a> descriptor is present, a single SPACE (U+0020), followed by the string "<code>font-feature-settings:</code>", followed by a single SPACE (U+0020), followed by the result of performing serialize a <span class="production" id="ref-for-propdef-font-feature-settings①"><'font-feature-settings'></span>, followed by the string "<code>;</code>", i.e., SEMICOLON (U+003B). <li>If rule’s associated <a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-fonts-4/#propdef-font-stretch" id="ref-for-propdef-font-stretch">font-stretch</a> descriptor is present, a single SPACE (U+0020), followed by the string "<code>font-stretch:</code>", followed by a single SPACE (U+0020), followed by the result of performing serialize a <span class="production" id="ref-for-propdef-font-stretch①"><'font-stretch'></span>, followed by the string "<code>;</code>", i.e., SEMICOLON (U+003B). <li>If rule’s associated <a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-fonts-4/#propdef-font-weight" id="ref-for-propdef-font-weight">font-weight</a> descriptor is present, a single SPACE (U+0020), followed by the string "<code>font-weight:</code>", followed by a single SPACE (U+0020), followed by the result of performing serialize a <span class="production" id="ref-for-propdef-font-weight①"><'font-weight'></span>, followed by the string "<code>;</code>", i.e., SEMICOLON (U+003B). <li>If rule’s associated <a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-fonts-4/#propdef-font-style" id="ref-for-propdef-font-style">font-style</a> descriptor is present, a single SPACE (U+0020), followed by the string "<code>font-style:</code>", followed by a single SPACE (U+0020), followed by the result of performing serialize a <span class="production" id="ref-for-propdef-font-style①"><'font-style'></span>, followed by the string "<code>;</code>", i.e., SEMICOLON (U+003B). <li>A single SPACE (U+0020), followed by the string "}", i.e., RIGHT CURLY BRACKET (U+007D). </ol> <p class="issue" id="issue-f92cf3b3"><a class="self-link" href="#issue-f92cf3b3"></a> Need to define how the <code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-fonts-5/#cssfontfacerule" id="ref-for-cssfontfacerule①">CSSFontFaceRule</a></code> descriptors' values are serialized.</p> <dt><code class="idl"><a data-link-type="idl" href="#csspagerule" id="ref-for-csspagerule">CSSPageRule</a></code> <dd> <p class="issue" id="issue-be6dc86c"><a class="self-link" href="#issue-be6dc86c"></a> Need to define how <code class="idl"><a data-link-type="idl" href="#csspagerule" id="ref-for-csspagerule①">CSSPageRule</a></code> is serialized.</p> <dt><code class="idl"><a data-link-type="idl" href="#cssnamespacerule" id="ref-for-cssnamespacerule">CSSNamespaceRule</a></code> <dd>The literal string "<code>@namespace</code>", followed by a single SPACE (U+0020), followed by the <a data-link-type="dfn" href="#serialize-an-identifier" id="ref-for-serialize-an-identifier⑦">serialization as an identifier</a> of the <code class="idl"><a data-link-type="idl" href="#dom-cssnamespacerule-prefix" id="ref-for-dom-cssnamespacerule-prefix">prefix</a></code> attribute (if any), followed by a single SPACE (U+0020) if there is a prefix, followed by the <a data-link-type="dfn" href="#serialize-a-url" id="ref-for-serialize-a-url②">serialization as URL</a> of the <code class="idl"><a data-link-type="idl" href="#dom-cssnamespacerule-namespaceuri" id="ref-for-dom-cssnamespacerule-namespaceuri">namespaceURI</a></code> attribute, followed the character "<code>;</code>" (U+003B). <dt><code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-animations-1/#csskeyframesrule" id="ref-for-csskeyframesrule">CSSKeyframesRule</a></code> <dd> The result of concatenating the following: <ol> <li>The literal string "<code>@keyframes</code>", followed by a single SPACE (U+0020). <li>The serialization of the <code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-animations-1/#dom-csskeyframesrule-name" id="ref-for-dom-csskeyframesrule-name">name</a></code> attribute. If the attribute is a CSS wide keyword, or the value <a class="css" data-link-type="maybe" href="https://drafts.csswg.org/css-ui-4/#valdef-cursor-default" id="ref-for-valdef-cursor-default">default</a>, or the value <a class="css" data-link-type="maybe" href="https://drafts.csswg.org/css-anchor-position-1/#valdef-anchor-name-none" id="ref-for-valdef-anchor-name-none">none</a>, then it is <a data-link-type="dfn" href="#serialize-a-string" id="ref-for-serialize-a-string⑤">serialized as a string</a>. Otherwise, it is <a data-link-type="dfn" href="#serialize-an-identifier" id="ref-for-serialize-an-identifier⑧">serialized as an identifier</a>. <li>The string "<code> { </code>", i.e., a single SPACE (U+0020), followed by LEFT CURLY BRACKET (U+007B), followed by a single SPACE (U+0020). <li>The result of performing <a data-link-type="dfn" href="#serialize-a-css-rule" id="ref-for-serialize-a-css-rule②">serialize a CSS rule</a> on each rule in the rule’s <code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-animations-1/#dom-csskeyframesrule-cssrules" id="ref-for-dom-csskeyframesrule-cssrules">cssRules</a></code> list, separated by a newline and indented by two spaces. <li>A newline, followed by the string "}", i.e., RIGHT CURLY BRACKET (U+007D) </ol> <dt><code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-animations-1/#csskeyframerule" id="ref-for-csskeyframerule">CSSKeyframeRule</a></code> <dd> The result of concatenating the following: <ol> <li>The <code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-animations-1/#dom-csskeyframerule-keytext" id="ref-for-dom-csskeyframerule-keytext">keyText</a></code>. <li>The string "<code> { </code>", i.e., a single SPACE (U+0020), followed by LEFT CURLY BRACKET (U+007B), followed by a single SPACE (U+0020). <li>The result of performing <a data-link-type="dfn" href="#serialize-a-css-declaration-block" id="ref-for-serialize-a-css-declaration-block①">serialize a CSS declaration block</a> on the rule’s associated declarations. <li>If the rule is associated with one or more declarations, the string "<code> </code>", i.e., a single SPACE (U+0020). <li>The string "<code>}</code>", RIGHT CURLY BRACKET (U+007D). </ol> </dl> <p class="issue" id="issue-ca02cb3b"><a class="self-link" href="#issue-ca02cb3b"></a> The "indented by two spaces" bit matches browsers, but needs work, see <a href="https://github.com/w3c/csswg-drafts/issues/5494">#5494</a></p> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="insert-a-css-rule">insert a CSS rule</dfn> <var>rule</var> in a CSS rule list <var>list</var> at index <var>index</var>, with a flag <var>nested</var>, follow these steps:</p> <ol> <li>Set <var>length</var> to the number of items in <var>list</var>. <li>If <var>index</var> is greater than <var>length</var>, then <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-throw" id="ref-for-dfn-throw④">throw</a> an <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#indexsizeerror" id="ref-for-indexsizeerror">IndexSizeError</a></code> exception. <li>Set <var>new rule</var> to the results of performing <a data-link-type="dfn" href="#parse-a-css-rule" id="ref-for-parse-a-css-rule">parse a CSS rule</a> on argument <var>rule</var>. <li> If <var>new rule</var> is a syntax error, and <var>nested</var> is set, perform the following substeps: <ul> <li> Set <var>declarations</var> to the results of performing <a data-link-type="dfn" href="#parse-a-css-declaration-block" id="ref-for-parse-a-css-declaration-block">parse a CSS declaration block</a>, on argument <var>rule</var>. <li> If <var>declarations</var> is empty, <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-throw" id="ref-for-dfn-throw⑤">throw</a> a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#syntaxerror" id="ref-for-syntaxerror②">SyntaxError</a></code> exception. <li> Otherwise, set <var>new rule</var> to a new <a data-link-type="dfn" href="https://drafts.csswg.org/css-nesting-1/#nested-declarations-rule%E2%91%A0" id="ref-for-nested-declarations-rule%E2%91%A0">nested declarations rule</a> with <var>declarations</var> as it contents. </ul> <li>If <var>new rule</var> is a syntax error, <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-throw" id="ref-for-dfn-throw⑥">throw</a> a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#syntaxerror" id="ref-for-syntaxerror③">SyntaxError</a></code> exception. <li> If <var>new rule</var> cannot be inserted into <var>list</var> at the zero-index position <var>index</var> due to constraints specified by CSS, then <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-throw" id="ref-for-dfn-throw⑦">throw</a> a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#hierarchyrequesterror" id="ref-for-hierarchyrequesterror">HierarchyRequestError</a></code> exception. <a data-link-type="biblio" href="#biblio-css21" title="Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification">[CSS21]</a> <p class="note" role="note"><span class="marker">Note:</span> For example, a CSS style sheet cannot contain an <code>@import</code> at-rule after a style rule.</p> <li>If <var>new rule</var> is an <code>@namespace</code> at-rule, and <var>list</var> contains anything other than <code>@import</code> at-rules, and <code>@namespace</code> at-rules, <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-throw" id="ref-for-dfn-throw⑧">throw</a> an <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#invalidstateerror" id="ref-for-invalidstateerror">InvalidStateError</a></code> exception. <li>Insert <var>new rule</var> into <var>list</var> at the zero-indexed position <var>index</var>. <li>Return <var>index</var>. </ol> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="remove-a-css-rule">remove a CSS rule</dfn> from a CSS rule list <var>list</var> at index <var>index</var>, follow these steps:</p> <ol> <li>Set <var>length</var> to the number of items in <var>list</var>. <li>If <var>index</var> is greater than or equal to <var>length</var>, then <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-throw" id="ref-for-dfn-throw⑨">throw</a> an <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#indexsizeerror" id="ref-for-indexsizeerror①">IndexSizeError</a></code> exception. <li>Set <var>old rule</var> to the <var>index</var>th item in <var>list</var>. <li>If <var>old rule</var> is an <code>@namespace</code> at-rule, and <var>list</var> contains anything other than <code>@import</code> at-rules, and <code>@namespace</code> at-rules, <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-throw" id="ref-for-dfn-throw①⓪">throw</a> an <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#invalidstateerror" id="ref-for-invalidstateerror①">InvalidStateError</a></code> exception. <li>Remove rule <var>old rule</var> from <var>list</var> at the zero-indexed position <var>index</var>. <li>Set <var>old rule</var>’s <a data-link-type="dfn" href="#concept-css-rule-parent-css-rule" id="ref-for-concept-css-rule-parent-css-rule">parent CSS rule</a> and <a data-link-type="dfn" href="#concept-css-rule-parent-css-style-sheet" id="ref-for-concept-css-rule-parent-css-style-sheet①">parent CSS style sheet</a> to null. </ol> <h4 class="heading settled" data-level="6.4.1" id="the-cssrulelist-interface"><span class="secno">6.4.1. </span><span class="content">The <code class="idl"><a data-link-type="idl" href="#cssrulelist" id="ref-for-cssrulelist④">CSSRuleList</a></code> Interface</span><a class="self-link" href="#the-cssrulelist-interface"></a></h4> <p>The <code class="idl"><a data-link-type="idl" href="#cssrulelist" id="ref-for-cssrulelist⑤">CSSRuleList</a></code> interface represents an ordered collection of <a data-link-type="dfn" href="#concept-css-style-sheet-css-rules" id="ref-for-concept-css-style-sheet-css-rules⑦">CSS rules</a>.</p> <pre class="idl highlight def">[<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed" id="ref-for-Exposed④"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="cssrulelist"><code><c- g>CSSRuleList</c-></code></dfn> { <c- b>getter</c-> <a data-link-type="idl-name" href="#cssrule" id="ref-for-cssrule②"><c- n>CSSRule</c-></a>? <a class="idl-code" data-link-type="method" href="#dom-cssrulelist-item" id="ref-for-dom-cssrulelist-item"><c- g>item</c-></a>(<a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long" id="ref-for-idl-unsigned-long⑨"><c- b>unsigned</c-> <c- b>long</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSRuleList/item(index)" data-dfn-type="argument" data-export id="dom-cssrulelist-item-index-index"><code><c- g>index</c-></code></dfn>); <c- b>readonly</c-> <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long" id="ref-for-idl-unsigned-long①⓪"><c- b>unsigned</c-> <c- b>long</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="unsigned long" href="#dom-cssrulelist-length" id="ref-for-dom-cssrulelist-length"><c- g>length</c-></a>; }; </pre> <p>The object’s <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-supported-property-indices" id="ref-for-dfn-supported-property-indices④">supported property indices</a> are the numbers in the range zero to one less than the number of <code class="idl"><a data-link-type="idl" href="#cssrule" id="ref-for-cssrule③">CSSRule</a></code> objects represented by the collection. If there are no such <code class="idl"><a data-link-type="idl" href="#cssrule" id="ref-for-cssrule④">CSSRule</a></code> objects, then there are no <span id="ref-for-dfn-supported-property-indices⑤">supported property indices</span>.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSRuleList" data-dfn-type="method" data-export id="dom-cssrulelist-item"><code>item(<var>index</var>)</code></dfn> method must return the <var>index</var>th <code class="idl"><a data-link-type="idl" href="#cssrule" id="ref-for-cssrule⑤">CSSRule</a></code> object in the collection. If there is no <var>index</var>th object in the collection, then the method must return null.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSRuleList" data-dfn-type="attribute" data-export id="dom-cssrulelist-length"><code>length</code></dfn> attribute must return the number of <code class="idl"><a data-link-type="idl" href="#cssrule" id="ref-for-cssrule⑥">CSSRule</a></code> objects represented by the collection.</p> <h4 class="heading settled" data-level="6.4.2" id="the-cssrule-interface"><span class="secno">6.4.2. </span><span class="content">The <code class="idl"><a data-link-type="idl" href="#cssrule" id="ref-for-cssrule⑦">CSSRule</a></code> Interface</span><a class="self-link" href="#the-cssrule-interface"></a></h4> <p>The <code class="idl"><a data-link-type="idl" href="#cssrule" id="ref-for-cssrule⑧">CSSRule</a></code> interface represents an abstract, base <a data-link-type="dfn" href="#css-rule" id="ref-for-css-rule⑥">CSS rule</a>. Each distinct CSS rule type is represented by a distinct interface that inherits from this interface.</p> <pre class="idl highlight def">[<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed" id="ref-for-Exposed⑤"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="cssrule"><code><c- g>CSSRule</c-></code></dfn> { <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring⑥"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-type="CSSOMString" href="#dom-cssrule-csstext" id="ref-for-dom-cssrule-csstext"><c- g>cssText</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssrule" id="ref-for-cssrule⑨"><c- n>CSSRule</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSRule?" href="#dom-cssrule-parentrule" id="ref-for-dom-cssrule-parentrule"><c- g>parentRule</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssstylesheet" id="ref-for-cssstylesheet①③"><c- n>CSSStyleSheet</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSStyleSheet?" href="#dom-cssrule-parentstylesheet" id="ref-for-dom-cssrule-parentstylesheet"><c- g>parentStyleSheet</c-></a>; // the following attribute and constants are historical <c- b>readonly</c-> <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short" id="ref-for-idl-unsigned-short"><c- b>unsigned</c-> <c- b>short</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="unsigned short" href="#dom-cssrule-type" id="ref-for-dom-cssrule-type"><c- g>type</c-></a>; <c- b>const</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short" id="ref-for-idl-unsigned-short①"><c- b>unsigned</c-> <c- b>short</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSRule" data-dfn-type="const" data-export id="dom-cssrule-style_rule"><code><c- g>STYLE_RULE</c-></code></dfn> = 1; <c- b>const</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short" id="ref-for-idl-unsigned-short②"><c- b>unsigned</c-> <c- b>short</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSRule" data-dfn-type="const" data-export id="dom-cssrule-charset_rule"><code><c- g>CHARSET_RULE</c-></code></dfn> = 2; <c- b>const</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short" id="ref-for-idl-unsigned-short③"><c- b>unsigned</c-> <c- b>short</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSRule" data-dfn-type="const" data-export id="dom-cssrule-import_rule"><code><c- g>IMPORT_RULE</c-></code></dfn> = 3; <c- b>const</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short" id="ref-for-idl-unsigned-short④"><c- b>unsigned</c-> <c- b>short</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSRule" data-dfn-type="const" data-export id="dom-cssrule-media_rule"><code><c- g>MEDIA_RULE</c-></code></dfn> = 4; <c- b>const</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short" id="ref-for-idl-unsigned-short⑤"><c- b>unsigned</c-> <c- b>short</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSRule" data-dfn-type="const" data-export id="dom-cssrule-font_face_rule"><code><c- g>FONT_FACE_RULE</c-></code></dfn> = 5; <c- b>const</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short" id="ref-for-idl-unsigned-short⑥"><c- b>unsigned</c-> <c- b>short</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSRule" data-dfn-type="const" data-export id="dom-cssrule-page_rule"><code><c- g>PAGE_RULE</c-></code></dfn> = 6; <c- b>const</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short" id="ref-for-idl-unsigned-short⑦"><c- b>unsigned</c-> <c- b>short</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSRule" data-dfn-type="const" data-export id="dom-cssrule-margin_rule"><code><c- g>MARGIN_RULE</c-></code></dfn> = 9; <c- b>const</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short" id="ref-for-idl-unsigned-short⑧"><c- b>unsigned</c-> <c- b>short</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSRule" data-dfn-type="const" data-export id="dom-cssrule-namespace_rule"><code><c- g>NAMESPACE_RULE</c-></code></dfn> = 10; }; </pre> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSRule" data-dfn-type="attribute" data-export id="dom-cssrule-csstext"><code>cssText</code></dfn> attribute must return a <a data-link-type="dfn" href="#serialize-a-css-rule" id="ref-for-serialize-a-css-rule③">serialization</a> of the <a data-link-type="dfn" href="#css-rule" id="ref-for-css-rule⑦">CSS rule</a>. On setting the <code class="idl"><a data-link-type="idl" href="#dom-cssrule-csstext" id="ref-for-dom-cssrule-csstext①">cssText</a></code> attribute must do nothing.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSRule" data-dfn-type="attribute" data-export id="dom-cssrule-parentrule"><code>parentRule</code></dfn> attribute must return the <a data-link-type="dfn" href="#concept-css-rule-parent-css-rule" id="ref-for-concept-css-rule-parent-css-rule①">parent CSS rule</a>.</p> <p class="note" role="note"><span class="marker">Note:</span> For example, <code>@media</code> can enclose a rule, in which case <code class="idl"><a data-link-type="idl" href="#dom-cssrule-parentrule" id="ref-for-dom-cssrule-parentrule①">parentRule</a></code> would be non-null; in cases where there is no enclosing rule, <code class="idl"><a data-link-type="idl" href="#dom-cssrule-parentrule" id="ref-for-dom-cssrule-parentrule②">parentRule</a></code> will be null.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSRule" data-dfn-type="attribute" data-export id="dom-cssrule-parentstylesheet"><code>parentStyleSheet</code></dfn> attribute must return the <a data-link-type="dfn" href="#concept-css-rule-parent-css-style-sheet" id="ref-for-concept-css-rule-parent-css-style-sheet②">parent CSS style sheet</a>.</p> <p class="note" role="note"><span class="marker">Note:</span> The only circumstance where null is returned when a rule has been <a data-link-type="dfn" href="#remove-a-css-rule" id="ref-for-remove-a-css-rule③">removed</a>.</p> <p class="note" role="note"><span class="marker">Note:</span> Removing a <code>Node</code> that implements the <code>LinkStyle</code> interface from a <code class="idl"><a data-link-type="idl" href="https://dom.spec.whatwg.org/#document" id="ref-for-document①">Document</a></code> instance does not (by itself) cause the <code>CSSStyleSheet</code> referenced by a <code>CSSRule</code> to be unreachable.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSRule" data-dfn-type="attribute" data-export id="dom-cssrule-type"><code>type</code></dfn> attribute is deprecated. It must return an integer, as follows:</p> <dl class="switch"> <dt>If the object is a <code class="idl"><a data-link-type="idl" href="#cssstylerule" id="ref-for-cssstylerule①">CSSStyleRule</a></code> <dd>Return 1. <dt>If the object is a <code class="idl"><a data-link-type="idl" href="#cssimportrule" id="ref-for-cssimportrule①">CSSImportRule</a></code> <dd>Return 3. <dt>If the object is a <code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-conditional-3/#cssmediarule" id="ref-for-cssmediarule①">CSSMediaRule</a></code> <dd>Return 4. <dt>If the object is a <code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-fonts-5/#cssfontfacerule" id="ref-for-cssfontfacerule②">CSSFontFaceRule</a></code> <dd>Return 5. <dt>If the object is a <code class="idl"><a data-link-type="idl" href="#csspagerule" id="ref-for-csspagerule②">CSSPageRule</a></code> <dd>Return 6. <dt>If the object is a <code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-animations-1/#csskeyframesrule" id="ref-for-csskeyframesrule①">CSSKeyframesRule</a></code> <dd>Return 7. <dt>If the object is a <code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-animations-1/#csskeyframerule" id="ref-for-csskeyframerule①">CSSKeyframeRule</a></code> <dd>Return 8. <dt>If the object is a <code class="idl"><a data-link-type="idl" href="#cssmarginrule" id="ref-for-cssmarginrule">CSSMarginRule</a></code> <dd>Return 9. <dt>If the object is a <code class="idl"><a data-link-type="idl" href="#cssnamespacerule" id="ref-for-cssnamespacerule①">CSSNamespaceRule</a></code> <dd>Return 10. <dt>If the object is a <code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-counter-styles-3/#csscounterstylerule" id="ref-for-csscounterstylerule">CSSCounterStyleRule</a></code> <dd>Return 11. <dt>If the object is a <code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-conditional-3/#csssupportsrule" id="ref-for-csssupportsrule">CSSSupportsRule</a></code> <dd>Return 12. <dt>If the object is a <code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-fonts-4/#cssfontfeaturevaluesrule" id="ref-for-cssfontfeaturevaluesrule">CSSFontFeatureValuesRule</a></code> <dd>Return 14. <dt>Otherwise <dd>Return 0. </dl> <p class="note" role="note"><span class="marker">Note:</span> The practice of using an integer enumeration and several constants to <em>identify</em> the integers is a legacy design practice that is no longer used in Web APIs. Instead, to tell what type of rule a given object is, it is recommended to check <code class="highlight">rule<c- p>.</c-><c- kr>constructor</c-><c- p>.</c->name</code>, which will return a string like <code class="highlight"><c- u>"CSSStyleRule"</c-></code>. This enumeration is thus frozen in its current state, and no new new values will be added to reflect additional at-rules; all at-rules beyond the ones listed above will return 0.</p> <h4 class="heading settled" data-level="6.4.3" id="the-cssstylerule-interface"><span class="secno">6.4.3. </span><span class="content">The <code class="idl"><a data-link-type="idl" href="#cssstylerule" id="ref-for-cssstylerule②">CSSStyleRule</a></code> Interface</span><a class="self-link" href="#the-cssstylerule-interface"></a></h4> <p>The <code>CSSStyleRule</code> interface represents a style rule.</p> <pre class="idl highlight def">[<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed" id="ref-for-Exposed⑥"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="cssstylerule"><code><c- g>CSSStyleRule</c-></code></dfn> : <a data-link-type="idl-name" href="#cssgroupingrule" id="ref-for-cssgroupingrule①"><c- n>CSSGroupingRule</c-></a> { <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring⑦"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-type="CSSOMString" href="#dom-cssstylerule-selectortext" id="ref-for-dom-cssstylerule-selectortext"><c- g>selectorText</c-></a>; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject" id="ref-for-SameObject④"><c- g>SameObject</c-></a>, <a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#PutForwards" id="ref-for-PutForwards①"><c- g>PutForwards</c-></a>=<a class="idl-code" data-link-type="attribute"><c- n>cssText</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssstyleproperties" id="ref-for-cssstyleproperties"><c- n>CSSStyleProperties</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSStyleProperties" href="#dom-cssstylerule-style" id="ref-for-dom-cssstylerule-style"><c- g>style</c-></a>; }; </pre> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleRule" data-dfn-type="attribute" data-export id="dom-cssstylerule-selectortext"><code>selectorText</code></dfn> attribute, on getting, must return the result of <a data-link-type="dfn" href="#serialize-a-group-of-selectors" id="ref-for-serialize-a-group-of-selectors②">serializing</a> the associated <a data-link-type="dfn">group of selectors</a>. On setting the <code class="idl"><a data-link-type="idl" href="#dom-cssstylerule-selectortext" id="ref-for-dom-cssstylerule-selectortext①">selectorText</a></code> attribute these steps must be run:</p> <ol> <li>Run the <a data-link-type="dfn" href="#parse-a-group-of-selectors" id="ref-for-parse-a-group-of-selectors">parse a group of selectors</a> algorithm on the given value. <li>If the algorithm returns a non-null value replace the associated <a data-link-type="dfn">group of selectors</a> with the returned value. <li>Otherwise, if the algorithm returns a null value, do nothing. </ol> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleRule" data-dfn-type="attribute" data-export id="dom-cssstylerule-style"><code>style</code></dfn> attribute must return a <code>CSSStyleProperties</code> object for the style rule, with the following properties:</p> <dl> <dt><a data-link-type="dfn" href="#cssstyledeclaration-computed-flag" id="ref-for-cssstyledeclaration-computed-flag">computed flag</a> <dd>Unset. <dt><a data-link-type="dfn" href="#cssstyledeclaration-readonly-flag" id="ref-for-cssstyledeclaration-readonly-flag">readonly flag</a> <dd>Unset. <dt><a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations">declarations</a> <dd>The declared declarations in the rule, in <a data-link-type="dfn" href="#concept-declarations-specified-order" id="ref-for-concept-declarations-specified-order">specified order</a>. <dt><a data-link-type="dfn" href="#cssstyledeclaration-parent-css-rule" id="ref-for-cssstyledeclaration-parent-css-rule">parent CSS rule</a> <dd>The <a data-link-type="dfn">context object</a>. <dt><a data-link-type="dfn" href="#cssstyledeclaration-owner-node" id="ref-for-cssstyledeclaration-owner-node">owner node</a> <dd>Null. </dl> <p>The <dfn class="dfn-paneled" data-dfn-type="dfn" data-noexport id="concept-declarations-specified-order">specified order</dfn> for declarations is the same as specified, but with shorthand properties expanded into their longhand properties, in canonical order. If a property is specified more than once (after shorthand expansion), only the one with greatest cascading order must be represented, at the same relative position as it was specified. <a data-link-type="biblio" href="#biblio-css3cascade" title="CSS Cascading and Inheritance Level 3">[CSS3CASCADE]</a></p> <h4 class="heading settled" data-level="6.4.4" id="the-cssimportrule-interface"><span class="secno">6.4.4. </span><span class="content">The <code class="idl"><a data-link-type="idl" href="#cssimportrule" id="ref-for-cssimportrule②">CSSImportRule</a></code> Interface</span><a class="self-link" href="#the-cssimportrule-interface"></a></h4> <p>The <code>CSSImportRule</code> interface represents an <code>@import</code> at-rule.</p> <pre class="idl highlight def">[<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed" id="ref-for-Exposed⑦"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="cssimportrule"><code><c- g>CSSImportRule</c-></code></dfn> : <a data-link-type="idl-name" href="#cssrule" id="ref-for-cssrule①⓪"><c- n>CSSRule</c-></a> { <c- b>readonly</c-> <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-USVString" id="ref-for-idl-USVString⑥"><c- b>USVString</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="USVString" href="#dom-cssimportrule-href" id="ref-for-dom-cssimportrule-href"><c- g>href</c-></a>; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject" id="ref-for-SameObject⑤"><c- g>SameObject</c-></a>, <a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#PutForwards" id="ref-for-PutForwards②"><c- g>PutForwards</c-></a>=<a class="idl-code" data-link-type="attribute" href="#dom-medialist-mediatext" id="ref-for-dom-medialist-mediatext⑥"><c- n>mediaText</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#medialist" id="ref-for-medialist④"><c- n>MediaList</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="MediaList" href="#dom-cssimportrule-media" id="ref-for-dom-cssimportrule-media"><c- g>media</c-></a>; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject" id="ref-for-SameObject⑥"><c- g>SameObject</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssstylesheet" id="ref-for-cssstylesheet①④"><c- n>CSSStyleSheet</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSStyleSheet?" href="#dom-cssimportrule-stylesheet" id="ref-for-dom-cssimportrule-stylesheet"><c- g>styleSheet</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring⑧"><c- n>CSSOMString</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSOMString?" href="#dom-cssimportrule-layername" id="ref-for-dom-cssimportrule-layername"><c- g>layerName</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring⑨"><c- n>CSSOMString</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSOMString?" href="#dom-cssimportrule-supportstext" id="ref-for-dom-cssimportrule-supportstext"><c- g>supportsText</c-></a>; }; </pre> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSImportRule" data-dfn-type="attribute" data-export id="dom-cssimportrule-href"><code>href</code></dfn> attribute must return the <a data-link-type="dfn" href="https://url.spec.whatwg.org/#concept-url" id="ref-for-concept-url">URL</a> specified by the <code>@import</code> at-rule.</p> <p class="note" role="note"><span class="marker">Note:</span> To get the resolved <a data-link-type="dfn" href="https://url.spec.whatwg.org/#concept-url" id="ref-for-concept-url①">URL</a> use the <code class="idl"><a data-link-type="idl" href="#dom-stylesheet-href" id="ref-for-dom-stylesheet-href①">href</a></code> attribute of the associated <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet④④">CSS style sheet</a>.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSImportRule" data-dfn-type="attribute" data-export id="dom-cssimportrule-media"><code>media</code></dfn> attribute must return the value of the <code class="idl"><a data-link-type="idl" href="#dom-stylesheet-media" id="ref-for-dom-stylesheet-media①">media</a></code> attribute of the associated <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet④⑤">CSS style sheet</a>.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSImportRule" data-dfn-type="attribute" data-export id="dom-cssimportrule-stylesheet"><code>styleSheet</code></dfn> attribute must return the associated <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet④⑥">CSS style sheet</a>, if any, or null otherwise.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSImportRule" data-dfn-type="attribute" data-export id="dom-cssimportrule-layername"><code>layerName</code></dfn> attribute must return the <a data-link-type="dfn">layer name</a> declared in the at-rule itself, or an empty string if the layer is anonymous, or null if the at-rule does not declare a layer.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSImportRule" data-dfn-type="attribute" data-export id="dom-cssimportrule-supportstext"><code>supportsText</code></dfn> attribute must return the <a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-conditional-3/#typedef-supports-condition" id="ref-for-typedef-supports-condition"><supports-condition></a> declared in the at-rule itself, or null if the at-rule does not declare a supports condition.</p> <p class="note" role="note"><span class="marker">Note:</span> An <code>@import</code> at-rule might not have an associated <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet④⑦">CSS style sheet</a> (e.g., if it has a non-matching <code>supports()</code> condition).</p> <h4 class="heading settled" data-level="6.4.5" id="the-cssgroupingrule-interface"><span class="secno">6.4.5. </span><span class="content">The <code class="idl"><a data-link-type="idl" href="#cssgroupingrule" id="ref-for-cssgroupingrule②">CSSGroupingRule</a></code> Interface</span><a class="self-link" href="#the-cssgroupingrule-interface"></a></h4> <p>The <code>CSSGroupingRule</code> interface represents an at-rule that contains other rules nested inside itself.</p> <pre class="idl highlight def">[<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed" id="ref-for-Exposed⑧"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="cssgroupingrule"><code><c- g>CSSGroupingRule</c-></code></dfn> : <a data-link-type="idl-name" href="#cssrule" id="ref-for-cssrule①①"><c- n>CSSRule</c-></a> { [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject" id="ref-for-SameObject⑦"><c- g>SameObject</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssrulelist" id="ref-for-cssrulelist⑥"><c- n>CSSRuleList</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSRuleList" href="#dom-cssgroupingrule-cssrules" id="ref-for-dom-cssgroupingrule-cssrules①"><c- g>cssRules</c-></a>; <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long" id="ref-for-idl-unsigned-long①①"><c- b>unsigned</c-> <c- b>long</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssgroupingrule-insertrule" id="ref-for-dom-cssgroupingrule-insertrule"><c- g>insertRule</c-></a>(<a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring①⓪"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSGroupingRule/insertRule(rule, index), CSSGroupingRule/insertRule(rule)" data-dfn-type="argument" data-export id="dom-cssgroupingrule-insertrule-rule-index-rule"><code><c- g>rule</c-></code></dfn>, <c- b>optional</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long" id="ref-for-idl-unsigned-long①②"><c- b>unsigned</c-> <c- b>long</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSGroupingRule/insertRule(rule, index), CSSGroupingRule/insertRule(rule)" data-dfn-type="argument" data-export id="dom-cssgroupingrule-insertrule-rule-index-index"><code><c- g>index</c-></code></dfn> = 0); <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-undefined" id="ref-for-idl-undefined⑤"><c- b>undefined</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssgroupingrule-deleterule" id="ref-for-dom-cssgroupingrule-deleterule"><c- g>deleteRule</c-></a>(<a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long" id="ref-for-idl-unsigned-long①③"><c- b>unsigned</c-> <c- b>long</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSGroupingRule/deleteRule(index)" data-dfn-type="argument" data-export id="dom-cssgroupingrule-deleterule-index-index"><code><c- g>index</c-></code></dfn>); }; </pre> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSGroupingRule" data-dfn-type="attribute" data-export id="dom-cssgroupingrule-cssrules"><code>cssRules</code></dfn> attribute must return a <code>CSSRuleList</code> object for the <a data-link-type="dfn" href="#concept-css-rule-child-css-rules" id="ref-for-concept-css-rule-child-css-rules">child CSS rules</a>.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSGroupingRule" data-dfn-type="method" data-export data-lt="insertRule(rule, index)|insertRule(rule)" id="dom-cssgroupingrule-insertrule"><code>insertRule(<var>rule</var>, <var>index</var>)</code></dfn> method must return the result of invoking <a data-link-type="dfn" href="#insert-a-css-rule" id="ref-for-insert-a-css-rule①">insert a CSS rule</a> <var>rule</var> into the <a data-link-type="dfn" href="#concept-css-rule-child-css-rules" id="ref-for-concept-css-rule-child-css-rules①">child CSS rules</a> at <var>index</var>, with the <var>nested</var> flag set.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSGroupingRule" data-dfn-type="method" data-export id="dom-cssgroupingrule-deleterule"><code>deleteRule(<var>index</var>)</code></dfn> method must <a data-link-type="dfn" href="#remove-a-css-rule" id="ref-for-remove-a-css-rule④">remove a CSS rule</a> from the <a data-link-type="dfn" href="#concept-css-rule-child-css-rules" id="ref-for-concept-css-rule-child-css-rules②">child CSS rules</a> at <var>index</var>.</p> <h4 class="heading settled" data-level="6.4.6" id="the-cssmediarule-interface"><span class="secno">6.4.6. </span><span class="content">The <code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-conditional-3/#cssmediarule" id="ref-for-cssmediarule②">CSSMediaRule</a></code> Interface</span><a class="self-link" href="#the-cssmediarule-interface"></a></h4> <p>The <code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-conditional-3/#cssmediarule" id="ref-for-cssmediarule③">CSSMediaRule</a></code> interface is defined in <cite>CSS Conditional Rules</cite>. <a data-link-type="biblio" href="#biblio-css3-conditional" title="CSS Conditional Rules Module Level 3">[CSS3-CONDITIONAL]</a></p> <h4 class="heading settled" data-level="6.4.7" id="the-csspagerule-interface"><span class="secno">6.4.7. </span><span class="content">The <code class="idl"><a data-link-type="idl" href="#csspagerule" id="ref-for-csspagerule③">CSSPageRule</a></code> Interface</span><a class="self-link" href="#the-csspagerule-interface"></a></h4> <p>The <code>CSSPageRule</code> interface represents an <code>@page</code> at-rule.</p> <p class="issue" id="issue-ba9fab84"><a class="self-link" href="#issue-ba9fab84"></a> Need to define the rules for <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="parse-a-list-of-css-page-selectors">parse a list of CSS page selectors</dfn> and <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-list-of-css-page-selectors">serialize a list of CSS page selectors</dfn>.</p> <pre class="idl highlight def">[<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed" id="ref-for-Exposed⑨"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="csspagedescriptors"><code><c- g>CSSPageDescriptors</c-></code></dfn> : <a data-link-type="idl-name" href="#cssstyledeclaration" id="ref-for-cssstyledeclaration"><c- n>CSSStyleDeclaration</c-></a> { <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString①"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring①①"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSPageDescriptors" data-dfn-type="attribute" data-export data-type="CSSOMString" id="dom-csspagedescriptors-margin"><code><c- g>margin</c-></code></dfn>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString②"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring①②"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSPageDescriptors" data-dfn-type="attribute" data-export data-type="CSSOMString" id="dom-csspagedescriptors-margintop"><code><c- g>marginTop</c-></code></dfn>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString③"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring①③"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSPageDescriptors" data-dfn-type="attribute" data-export data-type="CSSOMString" id="dom-csspagedescriptors-marginright"><code><c- g>marginRight</c-></code></dfn>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString④"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring①④"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSPageDescriptors" data-dfn-type="attribute" data-export data-type="CSSOMString" id="dom-csspagedescriptors-marginbottom"><code><c- g>marginBottom</c-></code></dfn>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString⑤"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring①⑤"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSPageDescriptors" data-dfn-type="attribute" data-export data-type="CSSOMString" id="dom-csspagedescriptors-marginleft"><code><c- g>marginLeft</c-></code></dfn>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString⑥"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring①⑥"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSPageDescriptors" data-dfn-type="attribute" data-export data-type="CSSOMString" id="dom-csspagedescriptors-margin-top"><code><c- g>margin-top</c-></code></dfn>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString⑦"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring①⑦"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSPageDescriptors" data-dfn-type="attribute" data-export data-type="CSSOMString" id="dom-csspagedescriptors-margin-right"><code><c- g>margin-right</c-></code></dfn>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString⑧"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring①⑧"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSPageDescriptors" data-dfn-type="attribute" data-export data-type="CSSOMString" id="dom-csspagedescriptors-margin-bottom"><code><c- g>margin-bottom</c-></code></dfn>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString⑨"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring①⑨"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSPageDescriptors" data-dfn-type="attribute" data-export data-type="CSSOMString" id="dom-csspagedescriptors-margin-left"><code><c- g>margin-left</c-></code></dfn>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString①⓪"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring②⓪"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSPageDescriptors" data-dfn-type="attribute" data-export data-type="CSSOMString" id="dom-csspagedescriptors-size"><code><c- g>size</c-></code></dfn>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString①①"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring②①"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSPageDescriptors" data-dfn-type="attribute" data-export data-type="CSSOMString" id="dom-csspagedescriptors-pageorientation"><code><c- g>pageOrientation</c-></code></dfn>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString①②"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring②②"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSPageDescriptors" data-dfn-type="attribute" data-export data-type="CSSOMString" id="dom-csspagedescriptors-page-orientation"><code><c- g>page-orientation</c-></code></dfn>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString①③"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring②③"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSPageDescriptors" data-dfn-type="attribute" data-export data-type="CSSOMString" id="dom-csspagedescriptors-marks"><code><c- g>marks</c-></code></dfn>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString①④"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring②④"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSPageDescriptors" data-dfn-type="attribute" data-export data-type="CSSOMString" id="dom-csspagedescriptors-bleed"><code><c- g>bleed</c-></code></dfn>; }; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed" id="ref-for-Exposed①⓪"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="csspagerule"><code><c- g>CSSPageRule</c-></code></dfn> : <a data-link-type="idl-name" href="#cssgroupingrule" id="ref-for-cssgroupingrule③"><c- n>CSSGroupingRule</c-></a> { <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring②⑤"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-type="CSSOMString" href="#dom-csspagerule-selectortext" id="ref-for-dom-csspagerule-selectortext"><c- g>selectorText</c-></a>; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject" id="ref-for-SameObject⑧"><c- g>SameObject</c-></a>, <a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#PutForwards" id="ref-for-PutForwards③"><c- g>PutForwards</c-></a>=<a class="idl-code" data-link-type="attribute"><c- n>cssText</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#csspagedescriptors" id="ref-for-csspagedescriptors"><c- n>CSSPageDescriptors</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSPageDescriptors" href="#dom-csspagerule-style" id="ref-for-dom-csspagerule-style"><c- g>style</c-></a>; }; </pre> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSPageRule" data-dfn-type="attribute" data-export id="dom-csspagerule-selectortext"><code>selectorText</code></dfn> attribute, on getting, must return the result of <a data-link-type="dfn" href="#serialize-a-list-of-css-page-selectors" id="ref-for-serialize-a-list-of-css-page-selectors">serializing</a> the associated <a data-link-type="dfn">list of CSS page selectors</a>. On setting the <code class="idl"><a data-link-type="idl" href="#dom-csspagerule-selectortext" id="ref-for-dom-csspagerule-selectortext①">selectorText</a></code> attribute these steps must be run:</p> <ol> <li>Run the <a data-link-type="dfn" href="#parse-a-list-of-css-page-selectors" id="ref-for-parse-a-list-of-css-page-selectors">parse a list of CSS page selectors</a> algorithm on the given value. <li>If the algorithm returns a non-null value replace the associated <a data-link-type="dfn">list of CSS page selectors</a> with the returned value. <li>Otherwise, if the algorithm returns a null value, do nothing. </ol> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSPageRule" data-dfn-type="attribute" data-export id="dom-csspagerule-style"><code>style</code></dfn> attribute must return a <code>CSSPageDescriptors</code> object for the <code>@page</code> at-rule, with the following properties:</p> <dl> <dt><a data-link-type="dfn" href="#cssstyledeclaration-computed-flag" id="ref-for-cssstyledeclaration-computed-flag①">computed flag</a> <dd>Unset. <dt><a data-link-type="dfn" href="#cssstyledeclaration-readonly-flag" id="ref-for-cssstyledeclaration-readonly-flag①">readonly flag</a> <dd>Unset. <dt><a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations①">declarations</a> <dd>The declared descriptors in the rule, in <a data-link-type="dfn" href="#concept-declarations-specified-order" id="ref-for-concept-declarations-specified-order①">specified order</a>. <dt><a data-link-type="dfn" href="#cssstyledeclaration-parent-css-rule" id="ref-for-cssstyledeclaration-parent-css-rule①">parent CSS rule</a> <dd>The <a data-link-type="dfn">context object</a>. <dt><a data-link-type="dfn" href="#cssstyledeclaration-owner-node" id="ref-for-cssstyledeclaration-owner-node①">owner node</a> <dd>Null. </dl> <h4 class="heading settled" data-level="6.4.8" id="the-cssmarginrule-interface"><span class="secno">6.4.8. </span><span class="content">The <code class="idl"><a data-link-type="idl" href="#cssmarginrule" id="ref-for-cssmarginrule①">CSSMarginRule</a></code> Interface</span><a class="self-link" href="#the-cssmarginrule-interface"></a></h4> <p>The <code>CSSMarginRule</code> interface represents a margin at-rule (e.g. <code>@top-left</code>) in an <code>@page</code> at-rule. <a data-link-type="biblio" href="#biblio-css3page" title="CSS Paged Media Module Level 3">[CSS3PAGE]</a></p> <pre class="idl highlight def">[<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed" id="ref-for-Exposed①①"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="cssmarginrule"><code><c- g>CSSMarginRule</c-></code></dfn> : <a data-link-type="idl-name" href="#cssrule" id="ref-for-cssrule①②"><c- n>CSSRule</c-></a> { <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring②⑥"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSOMString" href="#dom-cssmarginrule-name" id="ref-for-dom-cssmarginrule-name"><c- g>name</c-></a>; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject" id="ref-for-SameObject⑨"><c- g>SameObject</c-></a>, <a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#PutForwards" id="ref-for-PutForwards④"><c- g>PutForwards</c-></a>=<a class="idl-code" data-link-type="attribute"><c- n>cssText</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name"><c- n>CSSMarginDescriptors</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSMarginDescriptors" href="#dom-cssmarginrule-style" id="ref-for-dom-cssmarginrule-style"><c- g>style</c-></a>; }; </pre> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSMarginRule" data-dfn-type="attribute" data-export id="dom-cssmarginrule-name"><code>name</code></dfn> attribute must return the name of the margin at-rule. The <code>@</code> character is not included in the name. <a data-link-type="biblio" href="#biblio-css3syn" title="CSS Syntax Module Level 3">[CSS3SYN]</a></p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSMarginRule" data-dfn-type="attribute" data-export id="dom-cssmarginrule-style"><code>style</code></dfn> attribute must return a <code>CSSMarginDescriptors</code> object for the margin at-rule, with the following properties:</p> <dl> <dt><a data-link-type="dfn" href="#cssstyledeclaration-computed-flag" id="ref-for-cssstyledeclaration-computed-flag②">computed flag</a> <dd>Unset. <dt><a data-link-type="dfn" href="#cssstyledeclaration-readonly-flag" id="ref-for-cssstyledeclaration-readonly-flag②">readonly flag</a> <dd>Unset. <dt><a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations②">declarations</a> <dd>The declared declarations in the rule, in <a data-link-type="dfn" href="#concept-declarations-specified-order" id="ref-for-concept-declarations-specified-order②">specified order</a>. <dt><a data-link-type="dfn" href="#cssstyledeclaration-parent-css-rule" id="ref-for-cssstyledeclaration-parent-css-rule②">parent CSS rule</a> <dd>The <a data-link-type="dfn">context object</a>. <dt><a data-link-type="dfn" href="#cssstyledeclaration-owner-node" id="ref-for-cssstyledeclaration-owner-node②">owner node</a> <dd>Null. </dl> <h4 class="heading settled" data-level="6.4.9" id="the-cssnamespacerule-interface"><span class="secno">6.4.9. </span><span class="content">The <code class="idl"><a data-link-type="idl" href="#cssnamespacerule" id="ref-for-cssnamespacerule②">CSSNamespaceRule</a></code> Interface</span><a class="self-link" href="#the-cssnamespacerule-interface"></a></h4> <p>The <code>CSSNamespaceRule</code> interface represents an <code>@namespace</code> at-rule.</p> <pre class="idl highlight def">[<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed" id="ref-for-Exposed①②"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="cssnamespacerule"><code><c- g>CSSNamespaceRule</c-></code></dfn> : <a data-link-type="idl-name" href="#cssrule" id="ref-for-cssrule①③"><c- n>CSSRule</c-></a> { <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring②⑦"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSOMString" href="#dom-cssnamespacerule-namespaceuri" id="ref-for-dom-cssnamespacerule-namespaceuri①"><c- g>namespaceURI</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring②⑧"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSOMString" href="#dom-cssnamespacerule-prefix" id="ref-for-dom-cssnamespacerule-prefix①"><c- g>prefix</c-></a>; }; </pre> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSNamespaceRule" data-dfn-type="attribute" data-export id="dom-cssnamespacerule-namespaceuri"><code>namespaceURI</code></dfn> attribute must return the namespace of the <code>@namespace</code> at-rule.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSNamespaceRule" data-dfn-type="attribute" data-export id="dom-cssnamespacerule-prefix"><code>prefix</code></dfn> attribute must return the prefix of the <code>@namespace</code> at-rule or the empty string if there is no prefix.</p> <h3 class="heading settled" data-level="6.5" id="css-declarations"><span class="secno">6.5. </span><span class="content">CSS Declarations</span><a class="self-link" href="#css-declarations"></a></h3> <p>A <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="css-declaration">CSS declaration</dfn> is an abstract concept that is not exposed as an object in the DOM. A <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration">CSS declaration</a> has the following associated properties:</p> <dl> <dt><dfn class="dfn-paneled" data-dfn-for="CSS declaration" data-dfn-type="dfn" data-noexport id="css-declaration-property-name">property name</dfn> <dd>The property name of the declaration. <dt><dfn class="dfn-paneled" data-dfn-for="CSS declaration" data-dfn-type="dfn" data-noexport id="css-declaration-value">value</dfn> <dd>The value of the declaration represented as a list of component values. <dt><dfn class="dfn-paneled" data-dfn-for="CSS declaration" data-dfn-type="dfn" data-noexport id="css-declaration-important-flag">important flag</dfn> <dd>Either set or unset. Can be changed. <dt><dfn class="dfn-paneled" data-dfn-for="CSS declaration" data-dfn-type="dfn" data-noexport id="css-declaration-case-sensitive-flag">case-sensitive flag</dfn> <dd>Set if the <a data-link-type="dfn" href="#css-declaration-property-name" id="ref-for-css-declaration-property-name">property name</a> is defined to be case-sensitive according to its specification, otherwise unset. </dl> <h3 class="heading settled" data-level="6.6" id="css-declaration-blocks"><span class="secno">6.6. </span><span class="content">CSS Declaration Blocks</span><a class="self-link" href="#css-declaration-blocks"></a></h3> <p>A <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="css-declaration-block">CSS declaration block</dfn> is an ordered collection of CSS properties with their associated values, also named <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration①">CSS declarations</a>. In the DOM a <a data-link-type="dfn" href="#css-declaration-block" id="ref-for-css-declaration-block">CSS declaration block</a> is a <code>CSSStyleDeclaration</code> object. A <span id="ref-for-css-declaration-block①">CSS declaration block</span> has the following associated properties:</p> <dl> <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleDeclaration" data-dfn-type="dfn" data-export id="cssstyledeclaration-computed-flag">computed flag</dfn> <dd>Set if the object is a computed style declaration, rather than a specified style. Unless otherwise stated it is unset. <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleDeclaration" data-dfn-type="dfn" data-export id="cssstyledeclaration-readonly-flag">readonly flag</dfn> <dd>Set if the object is not modifiable. <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleDeclaration" data-dfn-type="dfn" data-export id="cssstyledeclaration-declarations">declarations</dfn> <dd>The <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration②">CSS declarations</a> associated with the object. <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleDeclaration" data-dfn-type="dfn" data-export id="cssstyledeclaration-parent-css-rule">parent CSS rule</dfn> <dd>The <a data-link-type="dfn" href="#css-rule" id="ref-for-css-rule⑧">CSS rule</a> that the <a data-link-type="dfn" href="#css-declaration-block" id="ref-for-css-declaration-block②">CSS declaration block</a> is associated with, if any, or null otherwise. <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleDeclaration" data-dfn-type="dfn" data-export id="cssstyledeclaration-owner-node">owner node</dfn> <dd>The <code class="idl"><a data-link-type="idl" href="https://dom.spec.whatwg.org/#element" id="ref-for-element②">Element</a></code> that the <a data-link-type="dfn" href="#css-declaration-block" id="ref-for-css-declaration-block③">CSS declaration block</a> is associated with, if any, or null otherwise. <dt><dfn class="dfn-paneled" data-dfn-for="CSSStyleDeclaration" data-dfn-type="dfn" data-export id="cssstyledeclaration-updating-flag">updating flag</dfn> <dd>Unset by default. Set when the <a data-link-type="dfn" href="#css-declaration-block" id="ref-for-css-declaration-block④">CSS declaration block</a> is updating the <a data-link-type="dfn" href="#cssstyledeclaration-owner-node" id="ref-for-cssstyledeclaration-owner-node③">owner node</a>’s <code>style</code> attribute. </dl> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="parse-a-css-declaration-block">parse a CSS declaration block</dfn> from a string <var>string</var>, follow these steps:</p> <ol> <li>Let <var>declarations</var> be the returned declarations from invoking <a data-link-type="dfn" href="https://drafts.csswg.org/css-syntax-3/#parse-a-blocks-contents" id="ref-for-parse-a-blocks-contents">parse a block’s contents</a> with <var>string</var>. <li>Let <var>parsed declarations</var> be a new empty list. <li> For each item <var>declaration</var> in <var>declarations</var>, follow these substeps: <ol> <li>Let <var>parsed declaration</var> be the result of parsing <var>declaration</var> according to the appropriate CSS specifications, dropping parts that are said to be ignored. If the whole declaration is dropped, let <var>parsed declaration</var> be null. <li>If <var>parsed declaration</var> is not null, append it to <var>parsed declarations</var>. </ol> <li>Return <var>parsed declarations</var>. </ol> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-css-declaration">serialize a CSS declaration</dfn> with property name <var>property</var>, value <var>value</var> and optionally an <i>important</i> flag set, follow these steps:</p> <ol> <li>Let <var>s</var> be the empty string. <li>Append <var>property</var> to <var>s</var>. <li>Append "<code>: </code>" (U+003A U+0020) to <var>s</var>. <li>Append <var>value</var> to <var>s</var>. <li>If the <i>important</i> flag is set, append "<code> !important</code>" (U+0020 U+0021 U+0069 U+006D U+0070 U+006F U+0072 U+0074 U+0061 U+006E U+0074) to <var>s</var>. <li>Append "<code>;</code>" (U+003B) to <var>s</var>. <li>Return <var>s</var>. </ol> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-css-declaration-block">serialize a CSS declaration block</dfn> <var>declaration block</var> means to run the steps below:</p> <ol> <li>Let <var>list</var> be an empty array. <li>Let <var>already serialized</var> be an empty array. <li> <i>Declaration loop</i>: For each <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration③">CSS declaration</a> <var>declaration</var> in <var>declaration block</var>’s <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations③">declarations</a>, follow these substeps: <ol> <li>Let <var>property</var> be <var>declaration</var>’s <a data-link-type="dfn" href="#css-declaration-property-name" id="ref-for-css-declaration-property-name①">property name</a>. <li>If <var>property</var> is in <var>already serialized</var>, continue with the steps labeled <i>declaration loop</i>. <li>If <var>property</var> maps to one or more shorthand properties, let <var>shorthands</var> be an array of those shorthand properties, in <a data-link-type="dfn" href="#concept-shorthands-preferred-order" id="ref-for-concept-shorthands-preferred-order">preferred order</a>. <li> <i>Shorthand loop</i>: For each <var>shorthand</var> in <var>shorthands</var>, follow these substeps: <ol> <li>Let <var>longhands</var> be an array consisting of all <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration④">CSS declarations</a> in <var>declaration block</var>’s <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations④">declarations</a> that that are not in <var>already serialized</var> and have a <a data-link-type="dfn" href="#css-declaration-property-name" id="ref-for-css-declaration-property-name②">property name</a> that maps to one of the shorthand properties in <var>shorthands</var>. <li>If all properties that map to <var>shorthand</var> are not present in <var>longhands</var>, continue with the steps labeled <i>shorthand loop</i>. <li>Let <var>current longhands</var> be an empty array. <li>Append all <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration⑤">CSS declarations</a> in <var>longhands</var> that have a <a data-link-type="dfn" href="#css-declaration-property-name" id="ref-for-css-declaration-property-name③">property name</a> that maps to <var>shorthand</var> to <var>current longhands</var>. <li>If there is one or more <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration⑥">CSS declarations</a> in <var>current longhands</var> have their <a data-link-type="dfn" href="#css-declaration-important-flag" id="ref-for-css-declaration-important-flag">important flag</a> set and one or more with it unset, continue with the steps labeled <i>shorthand loop</i>. <li>If there’s any declaration in <var>declaration block</var> in between the first and the last longhand in <var>current longhands</var> which belongs to the same <a data-link-type="dfn" href="https://drafts.csswg.org/css-logical-1/#logical-property-group" id="ref-for-logical-property-group">logical property group</a>, but has a different <a data-link-type="dfn" href="https://drafts.csswg.org/css-logical-1/#mapping-logic" id="ref-for-mapping-logic">mapping logic</a> as any of the longhands in <var>current longhands</var>, and is not in <var>current longhands</var>, continue with the steps labeled <i>shorthand loop</i>. <li>Let <var>value</var> be the result of invoking <a data-link-type="dfn" href="#serialize-a-css-value" id="ref-for-serialize-a-css-value">serialize a CSS value</a> of <var>current longhands</var>. <li>If <var>value</var> is the empty string, continue with the steps labeled <i>shorthand loop</i>. <li>Let <var>serialized declaration</var> be the result of invoking <a data-link-type="dfn" href="#serialize-a-css-declaration" id="ref-for-serialize-a-css-declaration">serialize a CSS declaration</a> with property name <var>shorthand</var>, value <var>value</var>, and the <i>important</i> flag set if the <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration⑦">CSS declarations</a> in <var>current longhands</var> have their <a data-link-type="dfn" href="#css-declaration-important-flag" id="ref-for-css-declaration-important-flag①">important flag</a> set. <li>Append <var>serialized declaration</var> to <var>list</var>. <li>Append the property names of all items of <var>current longhands</var> to <var>already serialized</var>. <li>Continue with the steps labeled <i>declaration loop</i>. </ol> <li>Let <var>value</var> be the result of invoking <a data-link-type="dfn" href="#serialize-a-css-value" id="ref-for-serialize-a-css-value①">serialize a CSS value</a> of <var>declaration</var>. <li>Let <var>serialized declaration</var> be the result of invoking <a data-link-type="dfn" href="#serialize-a-css-declaration" id="ref-for-serialize-a-css-declaration①">serialize a CSS declaration</a> with property name <var>property</var>, value <var>value</var>, and the <i>important</i> flag set if <var>declaration</var> has its <a data-link-type="dfn" href="#css-declaration-important-flag" id="ref-for-css-declaration-important-flag②">important flag</a> set. <li>Append <var>serialized declaration</var> to <var>list</var>. <li>Append <var>property</var> to <var>already serialized</var>. </ol> <li>Return <var>list</var> joined with "<code> </code>" (U+0020). </ol> <p class="note" role="note"><span class="marker">Note:</span> The serialization of an empty CSS declaration block is the empty string.</p> <p class="note" role="note"><span class="marker">Note:</span> The serialization of a non-empty CSS declaration block does not include any surrounding whitespace, i.e., no whitespace appears before the first property name and no whitespace appears after the final semicolon delimiter that follows the last property value.</p> <p>A <a data-link-type="dfn" href="#css-declaration-block" id="ref-for-css-declaration-block⑤">CSS declaration block</a> has these <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-element-attributes-change-ext" id="ref-for-concept-element-attributes-change-ext">attribute change steps</a> for its <a data-link-type="dfn" href="#cssstyledeclaration-owner-node" id="ref-for-cssstyledeclaration-owner-node④">owner node</a> with <var>localName</var>, <var>value</var>, and <var>namespace</var>:</p> <ol> <li>If the <a data-link-type="dfn" href="#cssstyledeclaration-computed-flag" id="ref-for-cssstyledeclaration-computed-flag③">computed flag</a> is set, then return. <li>If the <a data-link-type="dfn" href="#cssstyledeclaration-updating-flag" id="ref-for-cssstyledeclaration-updating-flag">updating flag</a> is set, then return. <li>If <var>localName</var> is not "<code>style</code>", or <var>namespace</var> is not null, then return. <li>If <var>value</var> is null, empty the <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations⑤">declarations</a>. <li>Otherwise, let the <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations⑥">declarations</a> be the result of <a data-link-type="dfn" href="#parse-a-css-declaration-block" id="ref-for-parse-a-css-declaration-block①">parse a CSS declaration block</a> from a string <var>value</var>. </ol> <p>When a <a data-link-type="dfn" href="#css-declaration-block" id="ref-for-css-declaration-block⑥">CSS declaration block</a> object is created, then:</p> <ol> <li>Let <var>owner node</var> be the <a data-link-type="dfn" href="#cssstyledeclaration-owner-node" id="ref-for-cssstyledeclaration-owner-node⑤">owner node</a>. <li>If <var>owner node</var> is null, or the <a data-link-type="dfn" href="#cssstyledeclaration-computed-flag" id="ref-for-cssstyledeclaration-computed-flag④">computed flag</a> is set, then return. <li>Let <var>value</var> be the result of <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-element-attributes-get-by-namespace" id="ref-for-concept-element-attributes-get-by-namespace">getting an attribute</a> given null, "<code>style</code>", and <var>owner node</var>. <li>If <var>value</var> is not null, let the <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations⑦">declarations</a> be the result of <a data-link-type="dfn" href="#parse-a-css-declaration-block" id="ref-for-parse-a-css-declaration-block②">parse a CSS declaration block</a> from a string <var>value</var>. </ol> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="update-style-attribute-for">update style attribute for</dfn> <var>declaration block</var> means to run the steps below:</p> <ol> <li>Assert: <var>declaration block</var>’s <a data-link-type="dfn" href="#cssstyledeclaration-computed-flag" id="ref-for-cssstyledeclaration-computed-flag⑤">computed flag</a> is unset. <li>Let <var>owner node</var> be <var>declaration block</var>’s <a data-link-type="dfn" href="#cssstyledeclaration-owner-node" id="ref-for-cssstyledeclaration-owner-node⑥">owner node</a>. <li>If <var>owner node</var> is null, then return. <li>Set <var>declaration block</var>’s <a data-link-type="dfn" href="#cssstyledeclaration-updating-flag" id="ref-for-cssstyledeclaration-updating-flag①">updating flag</a>. <li><a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-element-attributes-set-value" id="ref-for-concept-element-attributes-set-value">Set an attribute value</a> for <var>owner node</var> using "<code>style</code>" and the result of <a data-link-type="dfn" href="#serialize-a-css-declaration-block" id="ref-for-serialize-a-css-declaration-block②">serializing</a> <var>declaration block</var>. <li>Unset <var>declaration block</var>’s <a data-link-type="dfn" href="#cssstyledeclaration-updating-flag" id="ref-for-cssstyledeclaration-updating-flag②">updating flag</a>. </ol> <p>The <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="concept-shorthands-preferred-order">preferred order</dfn> of a list of shorthand properties <var>shorthands</var> is as follows:</p> <ol> <li>Order <var>shorthands</var> lexicographically. <li>Move all items in <var>shorthands</var> that begin with "<code>-</code>" (U+002D) last in the list, retaining their relative order. <li>Move all items in <var>shorthands</var> that begin with "<code>-</code>" (U+002D) but do not begin with "<code>-webkit-</code>" last in the list, retaining their relative order. <li>Order <var>shorthands</var> by the number of longhand properties that map to it, with the greatest number first. </ol> <h4 class="heading settled" data-level="6.6.1" id="the-cssstyledeclaration-interface"><span class="secno">6.6.1. </span><span class="content">The <code class="idl"><a data-link-type="idl" href="#cssstyledeclaration" id="ref-for-cssstyledeclaration①">CSSStyleDeclaration</a></code> Interface</span><a class="self-link" href="#the-cssstyledeclaration-interface"></a></h4> <p>The <code>CSSStyleDeclaration</code> interface represents a <a data-link-type="dfn" href="#css-declaration-block" id="ref-for-css-declaration-block⑦">CSS declaration block</a>, including its underlying state, where this underlying state depends upon the source of the <code>CSSStyleDeclaration</code> instance.</p> <pre class="idl highlight def">[<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed" id="ref-for-Exposed①③"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="cssstyledeclaration"><code><c- g>CSSStyleDeclaration</c-></code></dfn> { [<a class="idl-code" data-link-type="extended-attribute" href="https://html.spec.whatwg.org/multipage/custom-elements.html#cereactions" id="ref-for-cereactions"><c- g>CEReactions</c-></a>] <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring②⑨"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-type="CSSOMString" href="#dom-cssstyledeclaration-csstext" id="ref-for-dom-cssstyledeclaration-csstext"><c- g>cssText</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long" id="ref-for-idl-unsigned-long①④"><c- b>unsigned</c-> <c- b>long</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="unsigned long" href="#dom-cssstyledeclaration-length" id="ref-for-dom-cssstyledeclaration-length"><c- g>length</c-></a>; <c- b>getter</c-> <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring③⓪"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstyledeclaration-item" id="ref-for-dom-cssstyledeclaration-item"><c- g>item</c-></a>(<a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long" id="ref-for-idl-unsigned-long①⑤"><c- b>unsigned</c-> <c- b>long</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleDeclaration/item(index)" data-dfn-type="argument" data-export id="dom-cssstyledeclaration-item-index-index"><code><c- g>index</c-></code></dfn>); <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring③①"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstyledeclaration-getpropertyvalue" id="ref-for-dom-cssstyledeclaration-getpropertyvalue"><c- g>getPropertyValue</c-></a>(<a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring③②"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleDeclaration/getPropertyValue(property)" data-dfn-type="argument" data-export id="dom-cssstyledeclaration-getpropertyvalue-property-property"><code><c- g>property</c-></code></dfn>); <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring③③"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstyledeclaration-getpropertypriority" id="ref-for-dom-cssstyledeclaration-getpropertypriority"><c- g>getPropertyPriority</c-></a>(<a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring③④"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleDeclaration/getPropertyPriority(property)" data-dfn-type="argument" data-export id="dom-cssstyledeclaration-getpropertypriority-property-property"><code><c- g>property</c-></code></dfn>); [<a class="idl-code" data-link-type="extended-attribute" href="https://html.spec.whatwg.org/multipage/custom-elements.html#cereactions" id="ref-for-cereactions①"><c- g>CEReactions</c-></a>] <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-undefined" id="ref-for-idl-undefined⑥"><c- b>undefined</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstyledeclaration-setproperty" id="ref-for-dom-cssstyledeclaration-setproperty"><c- g>setProperty</c-></a>(<a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring③⑤"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleDeclaration/setProperty(property, value, priority), CSSStyleDeclaration/setProperty(property, value)" data-dfn-type="argument" data-export id="dom-cssstyledeclaration-setproperty-property-value-priority-property"><code><c- g>property</c-></code></dfn>, [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString①⑤"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring③⑥"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleDeclaration/setProperty(property, value, priority), CSSStyleDeclaration/setProperty(property, value)" data-dfn-type="argument" data-export id="dom-cssstyledeclaration-setproperty-property-value-priority-value"><code><c- g>value</c-></code></dfn>, <c- b>optional</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString①⑥"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring③⑦"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleDeclaration/setProperty(property, value, priority), CSSStyleDeclaration/setProperty(property, value)" data-dfn-type="argument" data-export id="dom-cssstyledeclaration-setproperty-property-value-priority-priority"><code><c- g>priority</c-></code></dfn> = ""); [<a class="idl-code" data-link-type="extended-attribute" href="https://html.spec.whatwg.org/multipage/custom-elements.html#cereactions" id="ref-for-cereactions②"><c- g>CEReactions</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring③⑧"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstyledeclaration-removeproperty" id="ref-for-dom-cssstyledeclaration-removeproperty"><c- g>removeProperty</c-></a>(<a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring③⑨"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleDeclaration/removeProperty(property)" data-dfn-type="argument" data-export id="dom-cssstyledeclaration-removeproperty-property-property"><code><c- g>property</c-></code></dfn>); <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssrule" id="ref-for-cssrule①④"><c- n>CSSRule</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSRule?" href="#dom-cssstyledeclaration-parentrule" id="ref-for-dom-cssstyledeclaration-parentrule"><c- g>parentRule</c-></a>; }; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed" id="ref-for-Exposed①④"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="cssstyleproperties"><code><c- g>CSSStyleProperties</c-></code></dfn> : <a data-link-type="idl-name" href="#cssstyledeclaration" id="ref-for-cssstyledeclaration②"><c- n>CSSStyleDeclaration</c-></a> { [<a class="idl-code" data-link-type="extended-attribute" href="https://html.spec.whatwg.org/multipage/custom-elements.html#cereactions" id="ref-for-cereactions③"><c- g>CEReactions</c-></a>] <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString①⑦"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring④⓪"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-type="CSSOMString" href="#dom-cssstyleproperties-cssfloat" id="ref-for-dom-cssstyleproperties-cssfloat"><c- g>cssFloat</c-></a>; }; </pre> <p>The object’s <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-supported-property-indices" id="ref-for-dfn-supported-property-indices⑥">supported property indices</a> are the numbers in the range zero to one less than the number of <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration⑧">CSS declarations</a> in the <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations⑧">declarations</a>. If there are no such <span id="ref-for-css-declaration⑨">CSS declarations</span>, then there are no <span id="ref-for-dfn-supported-property-indices⑦">supported property indices</span>.</p> <p>Getting the <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleDeclaration" data-dfn-type="attribute" data-export id="dom-cssstyledeclaration-csstext"><code>cssText</code></dfn> attribute must run these steps:</p> <ol> <li data-md> <p>If the <a data-link-type="dfn" href="#cssstyledeclaration-computed-flag" id="ref-for-cssstyledeclaration-computed-flag⑥">computed flag</a> is set, then return the empty string.</p> <li data-md> <p>Return the result of <a data-link-type="dfn" href="#serialize-a-css-declaration-block" id="ref-for-serialize-a-css-declaration-block③">serializing</a> the <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations⑨">declarations</a>.</p> </ol> <p>Setting the <code class="idl"><a data-link-type="idl" href="#dom-cssstyledeclaration-csstext" id="ref-for-dom-cssstyledeclaration-csstext①">cssText</a></code> attribute must run these steps:</p> <ol> <li>If the <a data-link-type="dfn" href="#cssstyledeclaration-readonly-flag" id="ref-for-cssstyledeclaration-readonly-flag③">readonly flag</a> is set, then <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-throw" id="ref-for-dfn-throw①①">throw</a> a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#nomodificationallowederror" id="ref-for-nomodificationallowederror">NoModificationAllowedError</a></code> exception. <li>Empty the <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations①⓪">declarations</a>. <li><a data-link-type="dfn" href="#parse-a-css-declaration-block" id="ref-for-parse-a-css-declaration-block③">Parse</a> the given value and, if the return value is not the empty list, insert the items in the list into the <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations①①">declarations</a>, in <a data-link-type="dfn" href="#concept-declarations-specified-order" id="ref-for-concept-declarations-specified-order③">specified order</a>. <li><a data-link-type="dfn" href="#update-style-attribute-for" id="ref-for-update-style-attribute-for">Update style attribute for</a> the <a data-link-type="dfn" href="#css-declaration-block" id="ref-for-css-declaration-block⑧">CSS declaration block</a>. </ol> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleDeclaration" data-dfn-type="attribute" data-export id="dom-cssstyledeclaration-length"><code>length</code></dfn> attribute must return the number of <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration①⓪">CSS declarations</a> in the <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations①②">declarations</a>.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleDeclaration" data-dfn-type="method" data-export id="dom-cssstyledeclaration-item"><code>item(<var>index</var>)</code></dfn> method must return the <a data-link-type="dfn" href="#css-declaration-property-name" id="ref-for-css-declaration-property-name④">property name</a> of the <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration①①">CSS declaration</a> at position <var>index</var>.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleDeclaration" data-dfn-type="method" data-export id="dom-cssstyledeclaration-getpropertyvalue"><code>getPropertyValue(<var>property</var>)</code></dfn> method must run these steps:</p> <ol> <li> If <var>property</var> is not a <a data-link-type="dfn" href="https://drafts.csswg.org/css-variables-1/#custom-property" id="ref-for-custom-property①">custom property</a>, follow these substeps: <ol> <li>Let <var>property</var> be <var>property</var> <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#ascii-lowercase" id="ref-for-ascii-lowercase②">converted to ASCII lowercase</a>. <li> If <var>property</var> is a shorthand property, then follow these substeps: <ol> <li>Let <var>list</var> be a new empty array. <li> For each longhand property <var>longhand</var> that <var>property</var> maps to, in canonical order, follow these substeps: <ol> <li>If <var>longhand</var> is a <a data-link-type="dfn">case-sensitive</a> match for a <a data-link-type="dfn" href="#css-declaration-property-name" id="ref-for-css-declaration-property-name⑤">property name</a> of a <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration①②">CSS declaration</a> in the <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations①③">declarations</a>, let <var>declaration</var> be that <span id="ref-for-css-declaration①③">CSS declaration</span>, or null otherwise. <li>If <var>declaration</var> is null, then return the empty string. <li>Append the <var>declaration</var> to <var>list</var>. </ol> <li>If <a data-link-type="dfn" href="#css-declaration-important-flag" id="ref-for-css-declaration-important-flag③">important flags</a> of all declarations in <var>list</var> are same, then return the <a data-link-type="dfn" href="#serialize-a-css-value" id="ref-for-serialize-a-css-value②">serialization</a> of <var>list</var>. <li>Return the empty string. </ol> </ol> <li>If <var>property</var> is a <a data-link-type="dfn">case-sensitive</a> match for a <a data-link-type="dfn" href="#css-declaration-property-name" id="ref-for-css-declaration-property-name⑥">property name</a> of a <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration①④">CSS declaration</a> in the <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations①④">declarations</a>, then return the result of invoking <a data-link-type="dfn" href="#serialize-a-css-value" id="ref-for-serialize-a-css-value③">serialize a CSS value</a> of that declaration. <li>Return the empty string. </ol> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleDeclaration" data-dfn-type="method" data-export id="dom-cssstyledeclaration-getpropertypriority"><code>getPropertyPriority(<var>property</var>)</code></dfn> method must run these steps:</p> <ol> <li> If <var>property</var> is not a <a data-link-type="dfn" href="https://drafts.csswg.org/css-variables-1/#custom-property" id="ref-for-custom-property②">custom property</a>, follow these substeps: <ol> <li>Let <var>property</var> be <var>property</var> <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#ascii-lowercase" id="ref-for-ascii-lowercase③">converted to ASCII lowercase</a>. <li> If <var>property</var> is a shorthand property, follow these substeps: <ol> <li>Let <var>list</var> be a new array. <li>For each longhand property <var>longhand</var> that <var>property</var> maps to, append the result of invoking <code class="idl"><a data-link-type="idl" href="#dom-cssstyledeclaration-getpropertypriority" id="ref-for-dom-cssstyledeclaration-getpropertypriority①">getPropertyPriority()</a></code> with <var>longhand</var> as argument to <var>list</var>. <li>If all items in <var>list</var> are the string "<code>important</code>", then return the string "<code>important</code>". </ol> </ol> <li>If <var>property</var> is a <a data-link-type="dfn">case-sensitive</a> match for a <a data-link-type="dfn" href="#css-declaration-property-name" id="ref-for-css-declaration-property-name⑦">property name</a> of a <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration①⑤">CSS declaration</a> in the <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations①⑤">declarations</a> that has the <a data-link-type="dfn" href="#css-declaration-important-flag" id="ref-for-css-declaration-important-flag④">important flag</a> set, return the string "<code>important</code>". <li>Return the empty string. </ol> <div class="example" id="example-666534ab"><a class="self-link" href="#example-666534ab"></a>E.g. for <code>background-color:lime !IMPORTANT</code> the return value would be "<code>important</code>".</div> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleDeclaration" data-dfn-type="method" data-export data-lt="setProperty(property, value, priority)|setProperty(property, value)" id="dom-cssstyledeclaration-setproperty"><code>setProperty(<var>property</var>, <var>value</var>, <var>priority</var>)</code></dfn> method must run these steps:</p> <ol> <li>If the <a data-link-type="dfn" href="#cssstyledeclaration-readonly-flag" id="ref-for-cssstyledeclaration-readonly-flag④">readonly flag</a> is set, then <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-throw" id="ref-for-dfn-throw①②">throw</a> a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#nomodificationallowederror" id="ref-for-nomodificationallowederror①">NoModificationAllowedError</a></code> exception. <li> If <var>property</var> is not a <a data-link-type="dfn" href="https://drafts.csswg.org/css-variables-1/#custom-property" id="ref-for-custom-property③">custom property</a>, follow these substeps: <ol> <li>Let <var>property</var> be <var>property</var> <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#ascii-lowercase" id="ref-for-ascii-lowercase④">converted to ASCII lowercase</a>. <li>If <var>property</var> is not a <a data-link-type="dfn">case-sensitive</a> match for a <a data-link-type="dfn" href="#supported-css-property" id="ref-for-supported-css-property①">supported CSS property</a>, then return. </ol> <li>If <var>value</var> is the empty string, invoke <code class="idl"><a data-link-type="idl" href="#dom-cssstyledeclaration-removeproperty" id="ref-for-dom-cssstyledeclaration-removeproperty①">removeProperty()</a></code> with <var>property</var> as argument and return. <li>If <var>priority</var> is not the empty string and is not an <a data-link-type="dfn">ASCII case-insensitive</a> match for the string "<code>important</code>", then return. <li> Let <var>component value list</var> be the result of <a data-link-type="dfn" href="#parse-a-css-value" id="ref-for-parse-a-css-value">parsing</a> <var>value</var> for property <var>property</var>. <p class="note" role="note"><span class="marker">Note:</span> <var>value</var> can not include "<code>!important</code>".</p> <li>If <var>component value list</var> is null, then return. <li>Let <var>updated</var> be false. <li> If <var>property</var> is a shorthand property, then for each longhand property <var>longhand</var> that <var>property</var> maps to, in canonical order, follow these substeps: <ol> <li>Let <var>longhand result</var> be the result of <a data-link-type="dfn" href="#set-a-css-declaration" id="ref-for-set-a-css-declaration">set the CSS declaration</a> <var>longhand</var> with the appropriate value(s) from <var>component value list</var>, with the <i>important</i> flag set if <var>priority</var> is not the empty string, and unset otherwise, and with the list of declarations being the <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations①⑥">declarations</a>. <li>If <var>longhand result</var> is true, let <var>updated</var> be true. </ol> <li>Otherwise, let <var>updated</var> be the result of <a data-link-type="dfn" href="#set-a-css-declaration" id="ref-for-set-a-css-declaration①">set the CSS declaration</a> <var>property</var> with value <var>component value list</var>, with the <i>important</i> flag set if <var>priority</var> is not the empty string, and unset otherwise, and with the list of declarations being the <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations①⑦">declarations</a>. <li>If <var>updated</var> is true, <a data-link-type="dfn" href="#update-style-attribute-for" id="ref-for-update-style-attribute-for①">update style attribute for</a> the <a data-link-type="dfn" href="#css-declaration-block" id="ref-for-css-declaration-block⑨">CSS declaration block</a>. </ol> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="set-a-css-declaration">set a CSS declaration</dfn> <var>property</var> with a value <var>component value list</var> and optionally with an <i>important</i> flag set, in a list of declarations <var>declarations</var>, the user agent must ensure the following constraints hold after its steps:</p> <ul> <li> Exactly one <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration①⑥">CSS declaration</a> whose <a data-link-type="dfn" href="#css-declaration-property-name" id="ref-for-css-declaration-property-name⑧">property name</a> is a <a data-link-type="dfn">case-sensitive</a> match of <var>property</var> must exist in <var>declarations</var>. Such declaration is referenced as the <var>target declaration</var> below. <li> The <var>target declaration</var> must have value being <var>component value list</var>, and <var>target declaration</var>’s <a data-link-type="dfn" href="#css-declaration-important-flag" id="ref-for-css-declaration-important-flag⑤">important flag</a> must be <a data-link-type="dfn" href="#set" id="ref-for-set">set</a> if <i>important</i> flag is set, and <a data-link-type="dfn" href="#unset" id="ref-for-unset">unset</a> otherwise. <li> Any <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration①⑦">CSS declaration</a> which is not the <var>target declaration</var> must not be changed, inserted, or removed from <var>declarations</var>. <li> If there are <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration①⑧">CSS declarations</a> in <var>declarations</var> whose <a data-link-type="dfn" href="#css-declaration-property-name" id="ref-for-css-declaration-property-name⑨">property name</a> is in the same <a data-link-type="dfn" href="https://drafts.csswg.org/css-logical-1/#logical-property-group" id="ref-for-logical-property-group①">logical property group</a> as <var>property</var>, but has a different <a data-link-type="dfn" href="https://drafts.csswg.org/css-logical-1/#mapping-logic" id="ref-for-mapping-logic①">mapping logic</a>, <var>target declaration</var> must be at an index after all of those <span id="ref-for-css-declaration①⑨">CSS declarations</span>. <li> The steps must return true if the serialization of <var>declarations</var> was changed as result of the steps. It may return false otherwise. </ul> <p class="issue" id="issue-aaf411cc"><a class="self-link" href="#issue-aaf411cc"></a> Should we add something like "Any observable side effect must not be made outside <var>declarations</var>"? The current constraints sound like a hole for undefined behavior.</p> <p class="note" role="note"><span class="marker">Note:</span> The steps of <a data-link-type="dfn" href="#set-a-css-declaration" id="ref-for-set-a-css-declaration②">set a CSS declaration</a> are not defined in this level of CSSOM. User agents may use different algorithms as long as the constraints above hold.</p> <div class="example" id="example-a40690cb"> <a class="self-link" href="#example-a40690cb"></a> The simplest way to conform with the constraints would be to always remove any existing declaration matching <var>property</var>, and append the new declaration to the end. But based on implementation feedback, this approach would likely regress performance. <p>Another possible algorithm is:</p> <ol> <li> If <var>property</var> is a <a data-link-type="dfn">case-sensitive</a> match for a <a data-link-type="dfn" href="#css-declaration-property-name" id="ref-for-css-declaration-property-name①⓪">property name</a> of a <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration②⓪">CSS declaration</a> in <var>declarations</var>, follow these substeps: <ol> <li>Let <var>target declaration</var> be such <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration②①">CSS declaration</a>. <li>Let <var>needs append</var> be false. <li> <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#list-iterate" id="ref-for-list-iterate">For each</a> <var>declaration</var> in <var>declarations</var> after <var>target declaration</var>: <ol> <li>If <var>declaration</var>’s <a data-link-type="dfn" href="#css-declaration-property-name" id="ref-for-css-declaration-property-name①①">property name</a> is not in the same <a data-link-type="dfn" href="https://drafts.csswg.org/css-logical-1/#logical-property-group" id="ref-for-logical-property-group②">logical property group</a> as <var>property</var>, then <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#iteration-continue" id="ref-for-iteration-continue">continue</a>. <li>If <var>declaration</var>’ <a data-link-type="dfn" href="#css-declaration-property-name" id="ref-for-css-declaration-property-name①②">property name</a> has the same <a data-link-type="dfn" href="https://drafts.csswg.org/css-logical-1/#mapping-logic" id="ref-for-mapping-logic②">mapping logic</a> as <var>property</var>, then <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#iteration-continue" id="ref-for-iteration-continue①">continue</a>. <li>Let <var>needs append</var> be true. <li><a data-link-type="dfn" href="https://infra.spec.whatwg.org/#iteration-break" id="ref-for-iteration-break">Break</a>. </ol> <li> If <var>needs append</var> is false, then: <ol> <li>Let <var>needs update</var> be false. <li>If <var>target declaration</var>’s <a data-link-type="dfn" href="#css-declaration-value" id="ref-for-css-declaration-value">value</a> is not equal to <var>component value list</var>, then let <var>needs update</var> be true. <li>If <var>target declaration</var>’s <a data-link-type="dfn" href="#css-declaration-important-flag" id="ref-for-css-declaration-important-flag⑥">important flag</a> is not equal to whether <i>important</i> flag is set, then let <var>needs update</var> be true. <li>If <var>needs update</var> is false, then return false. <li>Set <var>target declaration</var>’s <a data-link-type="dfn" href="#css-declaration-value" id="ref-for-css-declaration-value①">value</a> to <var>component value list</var>. <li>If <i>important</i> flag is set, then set <var>target declaration</var>’s <a data-link-type="dfn" href="#css-declaration-important-flag" id="ref-for-css-declaration-important-flag⑦">important flag</a>, otherwise unset it. <li>Return true. </ol> <li>Otherwise, remove <var>target declaration</var> from <var>declarations</var>. </ol> <li>Append a new <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration②②">CSS declaration</a> with <a data-link-type="dfn" href="#css-declaration-property-name" id="ref-for-css-declaration-property-name①③">property name</a> <var>property</var>, <a data-link-type="dfn" href="#css-declaration-value" id="ref-for-css-declaration-value②">value</a> <var>component value list</var>, and <a data-link-type="dfn" href="#css-declaration-important-flag" id="ref-for-css-declaration-important-flag⑧">important flag</a> set if <i>important</i> flag is set to <var>declarations</var>. <li>Return true. </ol> </div> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleDeclaration" data-dfn-type="method" data-export id="dom-cssstyledeclaration-removeproperty"><code>removeProperty(<var>property</var>)</code></dfn> method must run these steps:</p> <ol> <li>If the <a data-link-type="dfn" href="#cssstyledeclaration-readonly-flag" id="ref-for-cssstyledeclaration-readonly-flag⑤">readonly flag</a> is set, then <a data-link-type="dfn" href="http://heycam.github.io/webidl/#dfn-throw" id="ref-for-dfn-throw①③">throw</a> a <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#nomodificationallowederror" id="ref-for-nomodificationallowederror②">NoModificationAllowedError</a></code> exception. <li>If <var>property</var> is not a <a data-link-type="dfn" href="https://drafts.csswg.org/css-variables-1/#custom-property" id="ref-for-custom-property④">custom property</a>, let <var>property</var> be <var>property</var> <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#ascii-lowercase" id="ref-for-ascii-lowercase⑤">converted to ASCII lowercase</a>. <li>Let <var>value</var> be the return value of invoking <code class="idl"><a data-link-type="idl" href="#dom-cssstyledeclaration-getpropertyvalue" id="ref-for-dom-cssstyledeclaration-getpropertyvalue①">getPropertyValue()</a></code> with <var>property</var> as argument. <li>Let <var>removed</var> be false. <li> If <var>property</var> is a shorthand property, for each longhand property <var>longhand</var> that <var>property</var> maps to: <ol> <li>If <var>longhand</var> is not a <a data-link-type="dfn" href="#css-declaration-property-name" id="ref-for-css-declaration-property-name①④">property name</a> of a <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration②③">CSS declaration</a> in the <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations①⑧">declarations</a>, <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#iteration-continue" id="ref-for-iteration-continue②">continue</a>. <li>Remove that <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration②④">CSS declaration</a> and let <var>removed</var> be true. </ol> <li>Otherwise, if <var>property</var> is a <a data-link-type="dfn">case-sensitive</a> match for a <a data-link-type="dfn" href="#css-declaration-property-name" id="ref-for-css-declaration-property-name①⑤">property name</a> of a <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration②⑤">CSS declaration</a> in the <a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations①⑨">declarations</a>, remove that <span id="ref-for-css-declaration②⑥">CSS declaration</span> and let <var>removed</var> be true. <li>If <var>removed</var> is true, <a data-link-type="dfn" href="#update-style-attribute-for" id="ref-for-update-style-attribute-for②">Update style attribute for</a> the <a data-link-type="dfn" href="#css-declaration-block" id="ref-for-css-declaration-block①⓪">CSS declaration block</a>. <li>Return <var>value</var>. </ol> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleDeclaration" data-dfn-type="attribute" data-export id="dom-cssstyledeclaration-parentrule"><code>parentRule</code></dfn> attribute must return the <a data-link-type="dfn" href="#cssstyledeclaration-parent-css-rule" id="ref-for-cssstyledeclaration-parent-css-rule③">parent CSS rule</a>.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleProperties" data-dfn-type="attribute" data-export id="dom-cssstyleproperties-cssfloat"><code>cssFloat</code></dfn> attribute, on getting, must return the result of invoking <code class="idl"><a data-link-type="idl" href="#dom-cssstyledeclaration-getpropertyvalue" id="ref-for-dom-cssstyledeclaration-getpropertyvalue②">getPropertyValue()</a></code> with <code>float</code> as argument. On setting, the attribute must invoke <code class="idl"><a data-link-type="idl" href="#dom-cssstyledeclaration-setproperty" id="ref-for-dom-cssstyledeclaration-setproperty①">setProperty()</a></code> with <code>float</code> as first argument, as second argument the given value, and no third argument. Any exceptions thrown must be re-thrown.</p> <p>For each CSS property <var>property</var> that is a <a data-link-type="dfn" href="#supported-css-property" id="ref-for-supported-css-property②">supported CSS property</a>, the following partial interface applies where <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleDeclaration" data-dfn-type="attribute" data-export id="dom-cssstyledeclaration-camel-cased-attribute"><code>camel-cased attribute</code></dfn> is obtained by running the <a data-link-type="dfn" href="#css-property-to-idl-attribute" id="ref-for-css-property-to-idl-attribute">CSS property to IDL attribute</a> algorithm for <var>property</var>.</p> <pre class="extract idl highlight def"><c- b>partial</c-> <c- b>interface</c-> <a class="idl-code" data-link-type="interface" href="#cssstyleproperties" id="ref-for-cssstyleproperties①"><c- g>CSSStyleProperties</c-></a> { [<a class="idl-code" data-link-type="extended-attribute" href="https://html.spec.whatwg.org/multipage/custom-elements.html#cereactions" id="ref-for-cereactions④"><c- g>CEReactions</c-></a>] <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString①⑧"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring④①"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleProperties" data-dfn-type="attribute" data-export data-lt="camel_cased_attribute" data-type="CSSOMString" id="dom-cssstyleproperties-camel_cased_attribute"><code><c- g>_camel_cased_attribute</c-></code></dfn>; }; </pre> <p>The <a class="idl-code" data-link-type="attribute"><var>camel-cased attribute</var></a> attribute, on getting, must return the result of invoking <code class="idl"><a data-link-type="idl" href="#dom-cssstyledeclaration-getpropertyvalue" id="ref-for-dom-cssstyledeclaration-getpropertyvalue③">getPropertyValue()</a></code> with the argument being the result of running the <a data-link-type="dfn" href="#idl-attribute-to-css-property" id="ref-for-idl-attribute-to-css-property">IDL attribute to CSS property</a> algorithm for <var>camel-cased attribute</var>.</p> <p>Setting the <a class="idl-code" data-link-type="attribute"><var>camel-cased attribute</var></a> attribute must invoke <code class="idl"><a data-link-type="idl" href="#dom-cssstyledeclaration-setproperty" id="ref-for-dom-cssstyledeclaration-setproperty②">setProperty()</a></code> with the first argument being the result of running the <a data-link-type="dfn" href="#idl-attribute-to-css-property" id="ref-for-idl-attribute-to-css-property①">IDL attribute to CSS property</a> algorithm for <var>camel-cased attribute</var>, as second argument the given value, and no third argument. Any exceptions thrown must be re-thrown.</p> <div class="example" id="example-5f92c57f"><a class="self-link" href="#example-5f92c57f"></a>For example, for the <a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-fonts-4/#propdef-font-size" id="ref-for-propdef-font-size">font-size</a> property there would be a <code>fontSize</code> IDL attribute.</div> <p>For each CSS property <var>property</var> that is a <a data-link-type="dfn" href="#supported-css-property" id="ref-for-supported-css-property③">supported CSS property</a> and that begins with the string <code>-webkit-</code>, the following partial interface applies where <var>webkit-cased attribute</var> is obtained by running the <a data-link-type="dfn" href="#css-property-to-idl-attribute" id="ref-for-css-property-to-idl-attribute①">CSS property to IDL attribute</a> algorithm for <var>property</var>, with the <i>lowercase first</i> flag set.</p> <pre class="extract idl highlight def"><c- b>partial</c-> <c- b>interface</c-> <a class="idl-code" data-link-type="interface" href="#cssstyleproperties" id="ref-for-cssstyleproperties②"><c- g>CSSStyleProperties</c-></a> { [<a class="idl-code" data-link-type="extended-attribute" href="https://html.spec.whatwg.org/multipage/custom-elements.html#cereactions" id="ref-for-cereactions⑤"><c- g>CEReactions</c-></a>] <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString①⑨"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring④②"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleProperties" data-dfn-type="attribute" data-export data-lt="webkit_cased_attribute" data-type="CSSOMString" id="dom-cssstyleproperties-webkit_cased_attribute"><code><c- g>_webkit_cased_attribute</c-></code></dfn>; }; </pre> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleProperties" data-dfn-type="attribute" data-export id="dom-cssstyleproperties-webkit-cased-attribute"><code><var>webkit-cased attribute</var></code></dfn> attribute, on getting, must return the result of invoking <code class="idl"><a data-link-type="idl" href="#dom-cssstyledeclaration-getpropertyvalue" id="ref-for-dom-cssstyledeclaration-getpropertyvalue④">getPropertyValue()</a></code> with the argument being the result of running the <a data-link-type="dfn" href="#idl-attribute-to-css-property" id="ref-for-idl-attribute-to-css-property②">IDL attribute to CSS property</a> algorithm for <var>webkit-cased attribute</var>, with the <i>dash prefix</i> flag set.</p> <p>Setting the <a class="idl-code" data-link-type="attribute" href="https://www.w3.org/TR/cssom-1/#dom-cssstyledeclaration-webkit-cased-attribute" id="ref-for-dom-cssstyledeclaration-webkit-cased-attribute"><var>webkit-cased attribute</var></a> attribute must invoke <code class="idl"><a data-link-type="idl" href="#dom-cssstyledeclaration-setproperty" id="ref-for-dom-cssstyledeclaration-setproperty③">setProperty()</a></code> with the first argument being the result of running the <a data-link-type="dfn" href="#idl-attribute-to-css-property" id="ref-for-idl-attribute-to-css-property③">IDL attribute to CSS property</a> algorithm for <var>webkit-cased attribute</var>, with the <i>dash prefix</i> flag set, as second argument the given value, and no third argument. Any exceptions thrown must be re-thrown.</p> <div class="example" id="example-9b35d744"><a class="self-link" href="#example-9b35d744"></a>For example, if the user agent supports the <a class="property css" data-link-type="property" href="https://compat.spec.whatwg.org/#propdef--webkit-transform" id="ref-for-propdef--webkit-transform">-webkit-transform</a> property, there would be a <code>webkitTransform</code> IDL attribute. There would also be a <code>WebkitTransform</code> IDL attribute because of the rules for camel-cased attributes.</div> <p>For each CSS property <var>property</var> that is a <a data-link-type="dfn" href="#supported-css-property" id="ref-for-supported-css-property④">supported CSS property</a>, except for properties that have no "<code>-</code>" (U+002D) in the property name, the following partial interface applies where <var>dashed attribute</var> is <var>property</var>.</p> <pre class="extract idl highlight def"><c- b>partial</c-> <c- b>interface</c-> <a class="idl-code" data-link-type="interface" href="#cssstyleproperties" id="ref-for-cssstyleproperties③"><c- g>CSSStyleProperties</c-></a> { [<a class="idl-code" data-link-type="extended-attribute" href="https://html.spec.whatwg.org/multipage/custom-elements.html#cereactions" id="ref-for-cereactions⑥"><c- g>CEReactions</c-></a>] <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString" id="ref-for-LegacyNullToEmptyString②⓪"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring④③"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleProperties" data-dfn-type="attribute" data-export data-lt="dashed_attribute" data-type="CSSOMString" id="dom-cssstyleproperties-dashed_attribute"><code><c- g>_dashed_attribute</c-></code></dfn>; }; </pre> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSSStyleProperties" data-dfn-type="attribute" data-export id="dom-cssstyleproperties-dashed-attribute"><code><var>dashed attribute</var></code></dfn> attribute, on getting, must return the result of invoking <code class="idl"><a data-link-type="idl" href="#dom-cssstyledeclaration-getpropertyvalue" id="ref-for-dom-cssstyledeclaration-getpropertyvalue⑤">getPropertyValue()</a></code> with the argument being <var>dashed attribute</var>.</p> <p>Setting the <a class="idl-code" data-link-type="attribute" href="#dom-cssstyleproperties-dashed-attribute" id="ref-for-dom-cssstyleproperties-dashed-attribute"><var>dashed attribute</var></a> attribute must invoke <code class="idl"><a data-link-type="idl" href="#dom-cssstyledeclaration-setproperty" id="ref-for-dom-cssstyledeclaration-setproperty④">setProperty()</a></code> with the first argument being <var>dashed attribute</var>, as second argument the given value, and no third argument. Any exceptions thrown must be re-thrown.</p> <div class="example" id="example-5db10c4f"> <a class="self-link" href="#example-5db10c4f"></a> For example, for the <a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-fonts-4/#propdef-font-size" id="ref-for-propdef-font-size①">font-size</a> property there would be a <code>font-size</code> IDL attribute. In JavaScript, the property can be accessed as follows, assuming <var>element</var> is an <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/infrastructure.html#html-elements" id="ref-for-html-elements">HTML element</a>: <pre><var>element</var>.style['font-size'];</pre> </div> <p>The <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="css-property-to-idl-attribute">CSS property to IDL attribute</dfn> algorithm for <var>property</var>, optionally with a <i>lowercase first</i> flag set, is as follows:</p> <ol> <li>Let <var>output</var> be the empty string. <li>Let <var>uppercase next</var> be unset. <li>If the <i>lowercase first</i> flag is set, remove the first character from <var>property</var>. <li> For each character <var>c</var> in <var>property</var>: <ol> <li>If <var>c</var> is "<code>-</code>" (U+002D), let <var>uppercase next</var> be set. <li>Otherwise, if <var>uppercase next</var> is set, let <var>uppercase next</var> be unset and append <var>c</var> <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#ascii-uppercase" id="ref-for-ascii-uppercase">converted to ASCII uppercase</a> to <var>output</var>. <li>Otherwise, append <var>c</var> to <var>output</var>. </ol> <li>Return <var>output</var>. </ol> <p>The <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="idl-attribute-to-css-property">IDL attribute to CSS property</dfn> algorithm for <var>attribute</var>, optionally with a <i>dash prefix</i> flag set, is as follows:</p> <ol> <li>Let <var>output</var> be the empty string. <li>If the <i>dash prefix</i> flag is set, append "<code>-</code>" (U+002D) to <var>output</var>. <li> For each character <var>c</var> in <var>attribute</var>: <ol> <li>If <var>c</var> is in the range U+0041 to U+005A (ASCII uppercase), append "<code>-</code>" (U+002D) followed by <var>c</var> <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#ascii-lowercase" id="ref-for-ascii-lowercase⑥">converted to ASCII lowercase</a> to <var>output</var>. <li>Otherwise, append <var>c</var> to <var>output</var>. </ol> <li>Return <var>output</var>. </ol> <h3 class="heading settled" data-level="6.7" id="css-values"><span class="secno">6.7. </span><span class="content">CSS Values</span><a class="self-link" href="#css-values"></a></h3> <h4 class="heading settled" data-level="6.7.1" id="parsing-css-values"><span class="secno">6.7.1. </span><span class="content">Parsing CSS Values</span><a class="self-link" href="#parsing-css-values"></a></h4> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="parse-a-css-value">parse a CSS value</dfn> <var>value</var> for a given <var>property</var> means to follow these steps:</p> <ol> <li>Let <var>list</var> be the value returned by invoking <a data-link-type="dfn" href="https://drafts.csswg.org/css-syntax-3/#parse-a-list-of-component-values" id="ref-for-parse-a-list-of-component-values">parse a list of component values</a> from <var>value</var>. <li>Match <var>list</var> against the grammar for the property <var>property</var> in the CSS specification. <li>If the above step failed, return null. <li>Return <var>list</var>. </ol> <p class="note" role="note"><span class="marker">Note:</span> "<code>!important</code>" declarations are not part of the property value space and will therefore cause <a data-link-type="dfn" href="#parse-a-css-value" id="ref-for-parse-a-css-value①">parse a CSS value</a> to return null.</p> <h4 class="heading settled" data-level="6.7.2" id="serializing-css-values"><span class="secno">6.7.2. </span><span class="content">Serializing CSS Values</span><a class="self-link" href="#serializing-css-values"></a></h4> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-css-value">serialize a CSS value</dfn> of a <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration②⑦">CSS declaration</a> <var>declaration</var> or a list of longhand <span id="ref-for-css-declaration②⑧">CSS declarations</span> <var>list</var>, follow these rules:</p> <ol> <li data-md> <p>If this algorithm is invoked with a <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#list" id="ref-for-list">list</a> <var>list</var>:</p> <ol> <li data-md> <p>Let <var>shorthand</var> be the first shorthand property, in <a data-link-type="dfn" href="#concept-shorthands-preferred-order" id="ref-for-concept-shorthands-preferred-order①">preferred order</a>, that exactly maps to all of the longhand properties in <var>list</var>.</p> <li data-md> <p>If there is no such shorthand or <var>shorthand</var> cannot exactly represent the values of all the properties in <var>list</var>, return the empty string.</p> <li data-md> <p>Otherwise, <a data-link-type="dfn" href="#serialize-a-css-value" id="ref-for-serialize-a-css-value④">serialize a CSS value</a> from a hypothetical declaration of the property <var>shorthand</var> with its value representing the combined values of the declarations in <var>list</var>.</p> </ol> <li data-md> <p>Represent the value of the <var>declaration</var> as a <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#list" id="ref-for-list①">list</a> of CSS component values <var>components</var> that, when <a data-link-type="dfn" href="https://drafts.csswg.org/css-syntax-3/#css-parse-something-according-to-a-css-grammar" id="ref-for-css-parse-something-according-to-a-css-grammar">parsed</a> according to the property’s grammar, would represent that value. Additionally, unless otherwise specified:</p> <ul> <li data-md> <p>If certain component values can appear in any order without changing the meaning of the value (a pattern typically represented by a double bar <a data-link-type="grammar" href="https://drafts.csswg.org/css-values-4/#comb-any" id="ref-for-comb-any">||</a> in the value syntax), reorder the component values to use the canonical order of component values as given in the property definition table.</p> <li data-md> <p>If component values can be omitted or replaced with a shorter representation without changing the meaning of the value, omit/replace them.</p> <li data-md> <p>If either of the above syntactic translations would be less backwards-compatible, do not perform them.</p> </ul> <p class="note" role="note"><span class="marker">Note:</span> The rules described here outlines the <em>general principles</em> of serialization. For legacy reasons, some properties serialize in a different manner, which is intentionally undefined here due to lack of resources. Please consult that property’s specification and/or your local reverse-engineer for details.</p> <li data-md> <p>Remove any <a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-syntax-3/#typedef-whitespace-token" id="ref-for-typedef-whitespace-token"><whitespace-token></a>s from <var>components</var>.</p> <li data-md> <p>Replace each component value in <var>components</var> with the result of invoking <a data-link-type="dfn" href="#serialize-a-css-component-value" id="ref-for-serialize-a-css-component-value">serialize a CSS component value</a>.</p> <li data-md> <p>Join the items of <var>components</var> into a single string, inserting " " (U+0020 SPACE) between each pair of items unless the second item is a "," (U+002C COMMA) Return the result.</p> </ol> <p>To <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="serialize-a-css-component-value">serialize a CSS component value</dfn> depends on the component, as follows:</p> <dl class="switch"> <dt><a data-link-type="dfn" href="https://drafts.csswg.org/css-values-4/#css-keyword" id="ref-for-css-keyword">keyword</a> <dd>The keyword <a data-link-type="dfn" href="https://infra.spec.whatwg.org/#ascii-lowercase" id="ref-for-ascii-lowercase⑦">converted to ASCII lowercase</a>. <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-4/#angle-value" id="ref-for-angle-value"><angle></a> <dd> The <number> component serialized as per <number> followed by the unit in canonical form as defined in its respective specification. <p class="issue" id="issue-87977b18"><a class="self-link" href="#issue-87977b18"></a> Probably should distinguish between declared and computed / resolved values.</p> <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-color-5/#typedef-color" id="ref-for-typedef-color"><color></a> <dd> If <color> is a component of a resolved value, see <a href="https://drafts.csswg.org/css-color-4/#resolving-color-values"><cite>CSS Color 4</cite> § 14. Resolving <color> Values</a>. <p>If <color> is a component of a computed value, see <a href="https://drafts.csswg.org/css-color-4/#serializing-color-values"><cite>CSS Color 4</cite> § 15. Serializing <color> Values</a>.</p> <p>If <a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-color-5/#typedef-color" id="ref-for-typedef-color①"><color></a> is a component of a declared value, then for sRGB values, see <a href="https://drafts.csswg.org/css-color-4/#resolving-sRGB-values"><cite>CSS Color 4</cite> § 14.1 Resolving sRGB values</a>. For other color functions, see <a href="https://drafts.csswg.org/css-color-4/#resolving-color-values"><cite>CSS Color 4</cite> § 14. Resolving <color> Values</a>.</p> <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-color-4/#typedef-color-alpha-value" id="ref-for-typedef-color-alpha-value"><alpha-value></a> <dd> See <a href="https://drafts.csswg.org/css-color-4/#serializing-alpha-values"><cite>CSS Color 4</cite> § 15.1 Serializing alpha values</a>. <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-lists-3/#typedef-counter" id="ref-for-typedef-counter"><counter></a> <dd> The return value of the following algorithm: <ol> <li>Let <var>s</var> be the empty string. <li>If <counter> has three CSS component values append the string "<code>counters(</code>" to <var>s</var>. <li>If <counter> has two CSS component values append the string "<code>counter(</code>" to <var>s</var>. <li>Let <var>list</var> be a list of CSS component values belonging to <counter>, omitting the last CSS component value if it is "decimal". <li>Let each item in <var>list</var> be the result of invoking <a data-link-type="dfn" href="#serialize-a-css-component-value" id="ref-for-serialize-a-css-component-value①">serialize a CSS component value</a> on that item. <li>Append the result of invoking <a data-link-type="dfn" href="#serialize-a-comma-separated-list" id="ref-for-serialize-a-comma-separated-list④">serialize a comma-separated list</a> on <var>list</var> to <var>s</var>. <li>Append "<code>)</code>" (U+0029) to <var>s</var>. <li>Return <var>s</var>. </ol> <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-4/#frequency-value" id="ref-for-frequency-value"><frequency></a> <dd> The <number> component serialized as per <number> followed by the unit in its canonical form as defined in its respective specification. <p class="issue" id="issue-87977b18①"><a class="self-link" href="#issue-87977b18①"></a> Probably should distinguish between declared and computed / resolved values.</p> <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css2/#value-def-identifier" id="ref-for-value-def-identifier"><identifier></a> <dd>The identifier <a data-link-type="dfn" href="#serialize-an-identifier" id="ref-for-serialize-an-identifier⑨">serialized as an identifier</a>. <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-4/#integer-value" id="ref-for-integer-value"><integer></a> <dd>A base-ten integer using digits 0-9 (U+0030 to U+0039) in the shortest form possible, preceded by "<code>-</code>" (U+002D) if it is negative. <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-4/#length-value" id="ref-for-length-value"><length></a> <dd> The <number> component serialized as per <number> followed by the unit in its canonical form as defined in its respective specification. <p class="issue" id="issue-87977b18②"><a class="self-link" href="#issue-87977b18②"></a> Probably should distinguish between declared and computed / resolved values.</p> <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-4/#number-value" id="ref-for-number-value"><number></a> <dd> A base-ten number using digits 0-9 (U+0030 to U+0039) in the shortest form possible, using "<code>.</code>" to separate decimals (if any), rounding the value if necessary to not produce more than 6 decimals, preceded by "<code>-</code>" (U+002D) if it is negative. <p class="note" role="note"><span class="marker">Note:</span> scientific notation is not used.</p> <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-4/#percentage-value" id="ref-for-percentage-value"><percentage></a> <dd>The <number> component serialized as per <number> followed by the literal string "<code>%</code>" (U+0025). <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-4/#resolution-value" id="ref-for-resolution-value"><resolution></a> <dd>The resolution in dots per <a class="css" data-link-type="value" href="https://drafts.csswg.org/css-values-4/#px" id="ref-for-px">CSS pixel</a> serialized as per <number> followed by the literal string "<code>dppx</code>". <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-4/#ratio-value" id="ref-for-ratio-value"><ratio></a> <dd>The numerator serialized as per <number> followed by the literal string "<code> / </code>", followed by the denominator serialized as per <number>. <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css2/#value-def-shape" id="ref-for-value-def-shape"><shape></a> <dd> The return value of the following algorithm: <ol> <li>Let <var>s</var> be the string "<code>rect(</code>". <li>Let <var>list</var> be a list of the CSS component values belonging to <shape>. <li>Let each item in <var>list</var> be the result of invoking <a data-link-type="dfn" href="#serialize-a-css-component-value" id="ref-for-serialize-a-css-component-value②">serialize a CSS component value</a> of that item. <li>Append the result of invoking <a data-link-type="dfn" href="#serialize-a-comma-separated-list" id="ref-for-serialize-a-comma-separated-list⑤">serialize a comma-separated list</a> on <var>list</var> to <var>s</var>. <li>Append "<code>)</code>" (U+0029) to <var>s</var>. <li>Return <var>s</var>. </ol> <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-4/#string-value" id="ref-for-string-value"><string></a> <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-fonts-4/#family-name-value" id="ref-for-family-name-value"><family-name></a> <dt><a class="production css" data-link-type="type"><specific-voice></a> <dd>The string <a data-link-type="dfn" href="#serialize-a-string" id="ref-for-serialize-a-string⑥">serialized as a string</a>. <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-4/#time-value" id="ref-for-time-value"><time></a> <dd>The time in seconds serialized as per <number> followed by the literal string "<code>s</code>". <dt><a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-4/#url-value" id="ref-for-url-value"><url></a> <dd> The <a data-link-type="dfn" href="https://url.spec.whatwg.org/#absolute-url-string" id="ref-for-absolute-url-string①">absolute-URL string</a> <a data-link-type="dfn" href="#serialize-a-url" id="ref-for-serialize-a-url③">serialized as URL</a>. <p class="issue" id="issue-c9f9e4e6"><a class="self-link" href="#issue-c9f9e4e6"></a> This should differentiate declared and computed <a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-4/#url-value" id="ref-for-url-value①"><url></a> values, see <a href="https://github.com/w3c/csswg-drafts/issues/3195">#3195</a>.</p> </dl> <p><absolute-size>, <border-width>, <border-style>, <bottom>, <generic-family>, <generic-voice>, <left>, <margin-width>, <padding-width>, <relative-size>, <right>, and <top>, are considered macros by this specification. They all represent instances of components outlined above.</p> <p class="issue" id="issue-08e9ac89"><a class="self-link" href="#issue-08e9ac89"></a> One idea is that we can remove this section somewhere in the CSS3/CSS4 timeline by moving the above definitions to the drafts that define the CSS components.</p> <h5 class="heading settled" data-level="6.7.2.1" id="serializing-css-values-examples"><span class="secno">6.7.2.1. </span><span class="content">Examples</span><a class="self-link" href="#serializing-css-values-examples"></a></h5> <p>Here are some examples of before and after results on declared values. The before column could be what the author wrote in a style sheet, while the after column shows what querying the DOM would return.</p> <div class="example" id="example-9eae7eae"> <a class="self-link" href="#example-9eae7eae"></a> <table class="complex data"> <thead> <tr> <th>Before <th>After <tbody> <tr> <td><code>background: none</code> <td><code>background: rgba(0, 0, 0, 0)</code> <tr> <td><code>outline: none</code> <td><code>outline: invert</code> <tr> <td><code>border: none</code> <td><code>border: medium</code> <tr> <td><code>list-style: none</code> <td><code>list-style: disc</code> <tr> <td><code>margin: 0 1px 1px 1px</code> <td><code>margin: 0px 1px 1px</code> <tr> <td><code>azimuth: behind left</code> <td><code>azimuth: 220deg</code> <tr> <td><code>font-family: a, 'b"', serif</code> <td><code>font-family: "a", "b\"", serif</code> <tr> <td><code>content: url('h)i') '\[\]'</code> <td><code>content: url("h)i") "[]"</code> <tr> <td><code>azimuth: leftwards</code> <td><code>azimuth: leftwards</code> <tr> <td><code>color: rgb(18, 52, 86)</code> <td><code>color: #123456</code> <tr> <td><code>color: rgba(000001, 0, 0, 1)</code> <td><code>color: #000000</code> </table> <p class="issue" id="issue-3a42ec46"><a class="self-link" href="#issue-3a42ec46"></a> Some of these need to be updated per the new rules.</p> </div> <h2 class="heading settled" data-level="7" id="dom-access-to-css-declaration-blocks"><span class="secno">7. </span><span class="content">DOM Access to CSS Declaration Blocks</span><a class="self-link" href="#dom-access-to-css-declaration-blocks"></a></h2> <h3 class="heading settled" data-level="7.1" id="the-elementcssinlinestyle-mixin"><span class="secno">7.1. </span><span class="content"> The <code class="idl"><a data-link-type="idl" href="#elementcssinlinestyle" id="ref-for-elementcssinlinestyle">ElementCSSInlineStyle</a></code> Mixin</span><span id="the-elementcssinlinestyle-interface"></span><a class="self-link" href="#the-elementcssinlinestyle-mixin"></a></h3> <p>The <code>ElementCSSInlineStyle</code> mixin provides access to inline style properties of an element.</p> <pre class="idl highlight def"><c- b>interface</c-> <c- b>mixin</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="interface" data-export id="elementcssinlinestyle"><code><c- g>ElementCSSInlineStyle</c-></code></dfn> { [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject" id="ref-for-SameObject①⓪"><c- g>SameObject</c-></a>, <a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#PutForwards" id="ref-for-PutForwards⑤"><c- g>PutForwards</c-></a>=<a class="idl-code" data-link-type="attribute" href="#dom-cssstyledeclaration-csstext" id="ref-for-dom-cssstyledeclaration-csstext②"><c- n>cssText</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssstyledeclaration" id="ref-for-cssstyledeclaration③"><c- n>CSSStyleDeclaration</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSStyleDeclaration" href="#dom-elementcssinlinestyle-style" id="ref-for-dom-elementcssinlinestyle-style"><c- g>style</c-></a>; }; </pre> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="ElementCSSInlineStyle" data-dfn-type="attribute" data-export id="dom-elementcssinlinestyle-style"><code>style</code></dfn> attribute must return a <a data-link-type="dfn" href="#css-declaration-block" id="ref-for-css-declaration-block①①">CSS declaration block</a> object whose <a data-link-type="dfn" href="#cssstyledeclaration-readonly-flag" id="ref-for-cssstyledeclaration-readonly-flag⑥">readonly flag</a> is unset, whose <a data-link-type="dfn" href="#cssstyledeclaration-parent-css-rule" id="ref-for-cssstyledeclaration-parent-css-rule④">parent CSS rule</a> is null, and whose <a data-link-type="dfn" href="#cssstyledeclaration-owner-node" id="ref-for-cssstyledeclaration-owner-node⑦">owner node</a> is the <a data-link-type="dfn">context object</a>.</p> <p>If the user agent supports HTML, the following IDL applies: <a data-link-type="biblio" href="#biblio-html" title="HTML Standard">[HTML]</a></p> <pre class="idl highlight def"><a data-link-type="idl-name" href="https://html.spec.whatwg.org/multipage/dom.html#htmlelement" id="ref-for-htmlelement"><c- n>HTMLElement</c-></a> <c- b>includes</c-> <a data-link-type="idl-name" href="#elementcssinlinestyle" id="ref-for-elementcssinlinestyle①"><c- n>ElementCSSInlineStyle</c-></a>; </pre> <p>If the user agent supports SVG, the following IDL applies: <a data-link-type="biblio" href="#biblio-svg11" title="Scalable Vector Graphics (SVG) 1.1 (Second Edition)">[SVG11]</a></p> <pre class="idl highlight def"><a data-link-type="idl-name" href="https://svgwg.org/svg2-draft/types.html#InterfaceSVGElement" id="ref-for-InterfaceSVGElement"><c- n>SVGElement</c-></a> <c- b>includes</c-> <a data-link-type="idl-name" href="#elementcssinlinestyle" id="ref-for-elementcssinlinestyle②"><c- n>ElementCSSInlineStyle</c-></a>; </pre> <p>If the user agent supports MathML, the following IDL applies: <a data-link-type="biblio" href="#biblio-mathml-core" title="MathML Core">[MathML-Core]</a></p> <pre class="idl highlight def"><a data-link-type="idl-name" href="https://w3c.github.io/mathml-core/#dom-mathmlelement" id="ref-for-dom-mathmlelement"><c- n>MathMLElement</c-></a> <c- b>includes</c-> <a data-link-type="idl-name" href="#elementcssinlinestyle" id="ref-for-elementcssinlinestyle③"><c- n>ElementCSSInlineStyle</c-></a>; </pre> <h3 class="heading settled" data-level="7.2" id="extensions-to-the-window-interface"><span class="secno">7.2. </span><span class="content">Extensions to the <code class="idl"><a data-link-type="idl" href="https://html.spec.whatwg.org/multipage/nav-history-apis.html#window" id="ref-for-window">Window</a></code> Interface</span><a class="self-link" href="#extensions-to-the-window-interface"></a></h3> <pre class="idl highlight def"><c- b>partial</c-> <c- b>interface</c-> <a class="idl-code" data-link-type="interface" href="https://html.spec.whatwg.org/multipage/nav-history-apis.html#window" id="ref-for-window①"><c- g>Window</c-></a> { [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#NewObject" id="ref-for-NewObject"><c- g>NewObject</c-></a>] <a data-link-type="idl-name" href="#cssstyledeclaration" id="ref-for-cssstyledeclaration④"><c- n>CSSStyleDeclaration</c-></a> <a class="idl-code" data-link-type="method" href="#dom-window-getcomputedstyle" id="ref-for-dom-window-getcomputedstyle"><c- g>getComputedStyle</c-></a>(<a data-link-type="idl-name" href="https://dom.spec.whatwg.org/#element" id="ref-for-element③"><c- n>Element</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="Window/getComputedStyle(elt, pseudoElt), Window/getComputedStyle(elt)" data-dfn-type="argument" data-export id="dom-window-getcomputedstyle-elt-pseudoelt-elt"><code><c- g>elt</c-></code></dfn>, <c- b>optional</c-> <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring④④"><c- n>CSSOMString</c-></a>? <dfn class="dfn-paneled idl-code" data-dfn-for="Window/getComputedStyle(elt, pseudoElt), Window/getComputedStyle(elt)" data-dfn-type="argument" data-export id="dom-window-getcomputedstyle-elt-pseudoelt-pseudoelt"><code><c- g>pseudoElt</c-></code></dfn>); }; </pre> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="Window" data-dfn-type="method" data-export data-lt="getComputedStyle(elt, pseudoElt)|getComputedStyle(elt)" id="dom-window-getcomputedstyle"><code>getComputedStyle(<var>elt</var>, <var>pseudoElt</var>)</code></dfn> method must run these steps:</p> <ol> <li>Let <var>doc</var> be <var>elt</var>’s <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-node-document" id="ref-for-concept-node-document③">node document</a>. <li>Let <var>obj</var> be <var>elt</var>. <li> If <var>pseudoElt</var> is provided, is not the empty string, and starts with a colon, then: <ol> <li><a data-link-type="dfn" href="https://drafts.csswg.org/css-syntax-3/#css-parse-something-according-to-a-css-grammar" id="ref-for-css-parse-something-according-to-a-css-grammar①">Parse</a> <var>pseudoElt</var> as a <a class="production css" data-link-type="type" href="https://drafts.csswg.org/selectors-4/#typedef-pseudo-element-selector" id="ref-for-typedef-pseudo-element-selector"><pseudo-element-selector></a>, and let <var>type</var> be the result. <li>If <var>type</var> is failure, or is an <a class="css" data-link-type="maybe" href="https://drafts.csswg.org/css-scoping-1/#selectordef-slotted" id="ref-for-selectordef-slotted">::slotted()</a> or <a class="css" data-link-type="maybe" href="https://drafts.csswg.org/css-shadow-parts-1/#selectordef-part" id="ref-for-selectordef-part">::part()</a> pseudo-element, let <var>obj</var> be null. <li>Otherwise let <var>obj</var> be the given pseudo-element of <var>elt</var>. </ol> <p class="note" role="note"><span class="marker">Note:</span> CSS2 pseudo-elements should match both the double and single-colon versions. That is, both <code>:before</code> and <code>::before</code> should match above.</p> <li>Let <var>decls</var> be an empty list of <a data-link-type="dfn" href="#css-declaration" id="ref-for-css-declaration②⑨">CSS declarations</a>. <li> If <var>obj</var> is not null, and <var>elt</var> is <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#connected" id="ref-for-connected">connected</a>, part of the <a data-link-type="dfn" href="https://drafts.csswg.org/css-scoping-1/#flat-tree" id="ref-for-flat-tree">flat tree</a>, and its <a data-link-type="dfn" href="https://dom.spec.whatwg.org/#concept-shadow-including-root" id="ref-for-concept-shadow-including-root">shadow-including root</a> has a <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/browsers.html#browsing-context" id="ref-for-browsing-context">browsing context</a> which either doesn’t have a <a data-link-type="dfn">browsing context container</a>, or whose <span>browsing context container</span> is <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/rendering.html#being-rendered" id="ref-for-being-rendered">being rendered</a>, set <var>decls</var> to a list of all longhand properties that are <a data-link-type="dfn" href="#supported-css-property" id="ref-for-supported-css-property⑤">supported CSS properties</a>, in lexicographical order, with the value being the <a data-link-type="dfn" href="#resolved-value" id="ref-for-resolved-value">resolved value</a> computed for <var>obj</var> using the style rules associated with <var>doc</var>. Additionally, append to <var>decls</var> all the <a data-link-type="dfn" href="https://drafts.csswg.org/css-variables-1/#custom-property" id="ref-for-custom-property⑤">custom properties</a> whose <a data-link-type="dfn" href="https://drafts.csswg.org/css-cascade-5/#computed-value" id="ref-for-computed-value">computed value</a> for <var>obj</var> is not the <a data-link-type="dfn" href="https://drafts.csswg.org/css-variables-2/#guaranteed-invalid-value" id="ref-for-guaranteed-invalid-value">guaranteed-invalid value</a>. <p class="issue" id="issue-28428295"><a class="self-link" href="#issue-28428295"></a> There are UAs that handle shorthands, and all UAs handle shorthands that used to be longhands like <a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-overflow-3/#propdef-overflow" id="ref-for-propdef-overflow">overflow</a>, see <a href="https://github.com/w3c/csswg-drafts/issues/2529">#2529</a>.</p> <p class="issue" id="issue-0b704bc1"><a class="self-link" href="#issue-0b704bc1"></a> Order of custom properties is currently undefined, see <a href="https://github.com/w3c/csswg-drafts/issues/4947">#4947</a>.</p> <li> Return a live <a data-link-type="dfn">CSSStyleProperties</a> object with the following properties: <dl> <dt><a data-link-type="dfn" href="#cssstyledeclaration-computed-flag" id="ref-for-cssstyledeclaration-computed-flag⑦">computed flag</a> <dd>Set. <dt><a data-link-type="dfn" href="#cssstyledeclaration-readonly-flag" id="ref-for-cssstyledeclaration-readonly-flag⑦">readonly flag</a> <dd>Set. <dt><a data-link-type="dfn" href="#cssstyledeclaration-declarations" id="ref-for-cssstyledeclaration-declarations②⓪">declarations</a> <dd><var>decls</var>. <dt><a data-link-type="dfn" href="#cssstyledeclaration-parent-css-rule" id="ref-for-cssstyledeclaration-parent-css-rule⑤">parent CSS rule</a> <dd>Null. <dt><a data-link-type="dfn" href="#cssstyledeclaration-owner-node" id="ref-for-cssstyledeclaration-owner-node⑧">owner node</a> <dd><var>obj</var>. </dl> </ol> <p class="warning">The <code class="idl"><a data-link-type="idl" href="#dom-window-getcomputedstyle" id="ref-for-dom-window-getcomputedstyle①">getComputedStyle()</a></code> method exposes information from <a data-link-type="dfn" href="#css-style-sheet" id="ref-for-css-style-sheet④⑧">CSS style sheets</a> with the <a data-link-type="dfn" href="#concept-css-style-sheet-origin-clean-flag" id="ref-for-concept-css-style-sheet-origin-clean-flag⑦">origin-clean flag</a> unset. </p> <p class="issue" id="issue-854608f5"><a class="self-link" href="#issue-854608f5"></a> Should getComputedStyle() provide a useful serialization? See <a href="https://github.com/w3c/csswg-drafts/issues/1033">#1033</a></p> <h2 class="heading settled" data-level="8" id="utility-apis"><span class="secno">8. </span><span class="content">Utility APIs</span><a class="self-link" href="#utility-apis"></a></h2> <h3 class="heading settled" data-level="8.1" id="the-css.escape()-method"><span class="secno">8.1. </span><span class="content">The <code>CSS.escape()</code> Method</span><a class="self-link" href="#the-css.escape()-method"></a></h3> <p>The <code>CSS</code> namespace holds useful CSS-related functions that do not belong elsewhere.</p> <pre class="idl highlight def">[<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed" id="ref-for-Exposed①⑤"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>namespace</c-> <dfn class="dfn-paneled idl-code" data-dfn-type="namespace" data-export id="namespacedef-css"><code><c- g>CSS</c-></code></dfn> { <a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring④⑤"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="method" href="#dom-css-escape" id="ref-for-dom-css-escape"><c- g>escape</c-></a>(<a data-link-type="idl-name" href="#cssomstring" id="ref-for-cssomstring④⑥"><c- n>CSSOMString</c-></a> <dfn class="dfn-paneled idl-code" data-dfn-for="CSS/escape(ident)" data-dfn-type="argument" data-export id="dom-css-escape-ident-ident"><code><c- g>ident</c-></code></dfn>); }; </pre> <p class="issue" id="issue-24739c22"><a class="self-link" href="#issue-24739c22"></a> This was previously specified as an IDL interface that only held static methods. Switching to an IDL namespace is *nearly* identical, so it’s expected that there won’t be any compat concerns. If any are discovered, please report so we can consider reverting this change.</p> <p>The <dfn class="dfn-paneled idl-code" data-dfn-for="CSS" data-dfn-type="method" data-export id="dom-css-escape"><code>escape(<var>ident</var>)</code></dfn> operation must return the result of invoking <a data-link-type="dfn" href="#serialize-an-identifier" id="ref-for-serialize-an-identifier①⓪">serialize an identifier</a> of <var>ident</var>.</p> <div class="example" id="example-c8dd1300"> <a class="self-link" href="#example-c8dd1300"></a> For example, to serialize a string for use as part of a selector, the <code class="idl"><a data-link-type="idl" href="#dom-css-escape" id="ref-for-dom-css-escape①">escape()</a></code> method can be used: <pre>var element = document.querySelector('#' + CSS.escape(id) + ' > img');</pre> </div> <div class="example" id="example-6c87326f"> <a class="self-link" href="#example-6c87326f"></a> The <code class="idl"><a data-link-type="idl" href="#dom-css-escape" id="ref-for-dom-css-escape②">escape()</a></code> method can also be used for escaping strings, although it escapes characters that don’t strictly need to be escaped: <pre>var element = document.querySelector('a[href="#' + CSS.escape(fragment) + '"]');</pre> </div> <p>Specifications that define operations on the <code class="idl"><a data-link-type="idl" href="#namespacedef-css" id="ref-for-namespacedef-css">CSS</a></code> namespace and want to store some state should store the state on the <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/webappapis.html#current-global-object" id="ref-for-current-global-object②">current global object</a>’s <a data-link-type="dfn" href="https://html.spec.whatwg.org/multipage/nav-history-apis.html#concept-document-window" id="ref-for-concept-document-window②">associated <code>Document</code></a>.</p> <h2 class="heading settled" data-level="9" id="resolved-values"><span class="secno">9. </span><span class="content">Resolved Values</span><a class="self-link" href="#resolved-values"></a></h2> <p><code class="idl"><a data-link-type="idl" href="#dom-window-getcomputedstyle" id="ref-for-dom-window-getcomputedstyle②">getComputedStyle()</a></code> was historically defined to return the "computed value" of an element or pseudo-element. However, the concept of "computed value" changed between revisions of CSS while the implementation of <code class="idl"><a data-link-type="idl" href="#dom-window-getcomputedstyle" id="ref-for-dom-window-getcomputedstyle③">getComputedStyle()</a></code> had to remain the same for compatibility with deployed scripts. To address this issue this specification introduces the concept of a <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="resolved-value">resolved value</dfn>.</p> <p>The <a data-link-type="dfn" href="#resolved-value" id="ref-for-resolved-value①">resolved value</a> for a given longhand property can be determined as follows:</p> <dl class="switch"> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-backgrounds-3/#propdef-background-color" id="ref-for-propdef-background-color">background-color</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-borders-4/#propdef-border-block-end-color" id="ref-for-propdef-border-block-end-color">border-block-end-color</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-borders-4/#propdef-border-block-start-color" id="ref-for-propdef-border-block-start-color">border-block-start-color</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-backgrounds-3/#propdef-border-bottom-color" id="ref-for-propdef-border-bottom-color">border-bottom-color</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-borders-4/#propdef-border-inline-end-color" id="ref-for-propdef-border-inline-end-color">border-inline-end-color</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-borders-4/#propdef-border-inline-start-color" id="ref-for-propdef-border-inline-start-color">border-inline-start-color</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-backgrounds-3/#propdef-border-left-color" id="ref-for-propdef-border-left-color">border-left-color</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-backgrounds-3/#propdef-border-right-color" id="ref-for-propdef-border-right-color">border-right-color</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-backgrounds-3/#propdef-border-top-color" id="ref-for-propdef-border-top-color">border-top-color</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-backgrounds-3/#propdef-box-shadow" id="ref-for-propdef-box-shadow">box-shadow</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-ui-4/#propdef-caret-color" id="ref-for-propdef-caret-color">caret-color</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-color-4/#propdef-color" id="ref-for-propdef-color">color</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-ui-4/#propdef-outline-color" id="ref-for-propdef-outline-color">outline-color</a> <dt>A <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="resolved-value-special-case-property-like-color">resolved value special case property like <a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-color-4/#propdef-color" id="ref-for-propdef-color①">color</a></dfn> defined in another specification <dd>The <a data-link-type="dfn" href="#resolved-value" id="ref-for-resolved-value②">resolved value</a> is the <a data-link-type="dfn" href="https://drafts.csswg.org/css-cascade-5/#used-value" id="ref-for-used-value">used value</a>. <dt><a class="property css" data-link-type="property">line-height</a> <dd>The <a data-link-type="dfn" href="#resolved-value" id="ref-for-resolved-value③">resolved value</a> is <a class="property css" data-link-type="property">normal</a> if the <a data-link-type="dfn" href="https://drafts.csswg.org/css-cascade-5/#computed-value" id="ref-for-computed-value①">computed value</a> is <span class="property">normal</span>, or the <a data-link-type="dfn" href="https://drafts.csswg.org/css-cascade-5/#used-value" id="ref-for-used-value①">used value</a> otherwise. <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-logical-1/#propdef-block-size" id="ref-for-propdef-block-size">block-size</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-sizing-3/#propdef-height" id="ref-for-propdef-height">height</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-logical-1/#propdef-inline-size" id="ref-for-propdef-inline-size">inline-size</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-logical-1/#propdef-margin-block-end" id="ref-for-propdef-margin-block-end">margin-block-end</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-logical-1/#propdef-margin-block-start" id="ref-for-propdef-margin-block-start">margin-block-start</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-box-4/#propdef-margin-bottom" id="ref-for-propdef-margin-bottom">margin-bottom</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-logical-1/#propdef-margin-inline-end" id="ref-for-propdef-margin-inline-end">margin-inline-end</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-logical-1/#propdef-margin-inline-start" id="ref-for-propdef-margin-inline-start">margin-inline-start</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-box-4/#propdef-margin-left" id="ref-for-propdef-margin-left">margin-left</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-box-4/#propdef-margin-right" id="ref-for-propdef-margin-right">margin-right</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-box-4/#propdef-margin-top" id="ref-for-propdef-margin-top">margin-top</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-logical-1/#propdef-padding-block-end" id="ref-for-propdef-padding-block-end">padding-block-end</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-logical-1/#propdef-padding-block-start" id="ref-for-propdef-padding-block-start">padding-block-start</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-box-4/#propdef-padding-bottom" id="ref-for-propdef-padding-bottom">padding-bottom</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-logical-1/#propdef-padding-inline-end" id="ref-for-propdef-padding-inline-end">padding-inline-end</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-logical-1/#propdef-padding-inline-start" id="ref-for-propdef-padding-inline-start">padding-inline-start</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-box-4/#propdef-padding-left" id="ref-for-propdef-padding-left">padding-left</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-box-4/#propdef-padding-right" id="ref-for-propdef-padding-right">padding-right</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-box-4/#propdef-padding-top" id="ref-for-propdef-padding-top">padding-top</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-sizing-3/#propdef-width" id="ref-for-propdef-width">width</a> <dt>A <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="resolved-value-special-case-property-like-height">resolved value special case property like <a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-sizing-3/#propdef-height" id="ref-for-propdef-height①">height</a></dfn> defined in another specification <dd>If the property applies to the element or pseudo-element and the <a data-link-type="dfn" href="#resolved-value" id="ref-for-resolved-value④">resolved value</a> of the <a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-display-4/#propdef-display" id="ref-for-propdef-display">display</a> property is not <a class="css" data-link-type="maybe" href="https://drafts.csswg.org/css-display-4/#valdef-display-none" id="ref-for-valdef-display-none">none</a> or <a class="css" data-link-type="maybe" href="https://drafts.csswg.org/css-display-4/#valdef-display-contents" id="ref-for-valdef-display-contents">contents</a>, then the <span id="ref-for-resolved-value⑤">resolved value</span> is the <a data-link-type="dfn" href="https://drafts.csswg.org/css-cascade-5/#used-value" id="ref-for-used-value②">used value</a>. Otherwise the <span id="ref-for-resolved-value⑥">resolved value</span> is the <a data-link-type="dfn" href="https://drafts.csswg.org/css-cascade-5/#computed-value" id="ref-for-computed-value②">computed value</a>. <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-position-3/#propdef-bottom" id="ref-for-propdef-bottom">bottom</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-position-3/#propdef-left" id="ref-for-propdef-left">left</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-position-3/#propdef-inset-block-end" id="ref-for-propdef-inset-block-end">inset-block-end</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-position-3/#propdef-inset-block-start" id="ref-for-propdef-inset-block-start">inset-block-start</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-position-3/#propdef-inset-inline-end" id="ref-for-propdef-inset-inline-end">inset-inline-end</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-position-3/#propdef-inset-inline-start" id="ref-for-propdef-inset-inline-start">inset-inline-start</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-position-3/#propdef-right" id="ref-for-propdef-right">right</a> <dt><a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-position-3/#propdef-top" id="ref-for-propdef-top">top</a> <dt>A <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="resolved-value-special-case-property-like-top">resolved value special case property like <a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-position-3/#propdef-top" id="ref-for-propdef-top①">top</a></dfn> defined in another specification <dd>If the property applies to a positioned element and the <a data-link-type="dfn" href="#resolved-value" id="ref-for-resolved-value⑦">resolved value</a> of the <a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-display-4/#propdef-display" id="ref-for-propdef-display①">display</a> property is not <a class="css" data-link-type="maybe" href="https://drafts.csswg.org/css-display-4/#valdef-display-none" id="ref-for-valdef-display-none①">none</a> or <a class="css" data-link-type="maybe" href="https://drafts.csswg.org/css-display-4/#valdef-display-contents" id="ref-for-valdef-display-contents①">contents</a>, and the property is not over-constrained, then the <span id="ref-for-resolved-value⑧">resolved value</span> is the <a data-link-type="dfn" href="https://drafts.csswg.org/css-cascade-5/#used-value" id="ref-for-used-value③">used value</a>. Otherwise the <span id="ref-for-resolved-value⑨">resolved value</span> is the <a data-link-type="dfn" href="https://drafts.csswg.org/css-cascade-5/#computed-value" id="ref-for-computed-value③">computed value</a>. <dt>A <dfn class="dfn-paneled" data-dfn-type="dfn" data-export id="resolved-value-special-case-property">resolved value special case property</dfn> defined in another specification <dd>As defined in the relevant specification. <dt>Any other property <dd>The <a data-link-type="dfn" href="#resolved-value" id="ref-for-resolved-value①⓪">resolved value</a> is the <a data-link-type="dfn" href="https://drafts.csswg.org/css-cascade-5/#computed-value" id="ref-for-computed-value④">computed value</a>. </dl> <h2 class="heading settled" data-level="10" id="iana-considerations"><span class="secno">10. </span><span class="content">IANA Considerations</span><a class="self-link" href="#iana-considerations"></a></h2> <h3 class="heading settled" data-level="10.1" id="default-style"><span class="secno">10.1. </span><span class="content">Default-Style</span><a class="self-link" href="#default-style"></a></h3> <p>This section describes a header field for registration in the Permanent Message Header Field Registry.</p> <dl> <dt>Header field name <dd><dfn class="dfn-paneled" data-dfn-type="dfn" data-lt="http-default-style" data-noexport id="http-default-style">Default-Style</dfn> <dt>Applicable protocol <dd>http <dt>Status <dd>standard <dt>Author/Change controller <dd>W3C <dt>Specification document(s) <dd>This document is the relevant specification. <dt>Related information <dd>None. </dl> <h2 class="heading settled" data-level="11" id="change-history"><span class="secno">11. </span><span class="content">Change History</span><a class="self-link" href="#change-history"></a></h2> <p>This section documents some of the changes between publications of this specification. This section is not exhaustive. Bug fixes and editorial changes are generally not listed.</p> <h3 class="heading settled" data-level="11.1" id="changes-from-17-march-2016"><span class="secno">11.1. </span><span class="content">Changes From 17 March 2016</span><a class="self-link" href="#changes-from-17-march-2016"></a></h3> <ul> <li data-md> <p>Serialization of <a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-4/#resolution-value" id="ref-for-resolution-value①"><resolution></a> is changed.</p> <li data-md> <p><code>[CEReactions]</code> IDL extended attributes are added.</p> <li data-md> <p>Resolved value for logical properties are added.</p> <li data-md> <p><code>getComputedStyle</code> for <a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-display-4/#propdef-display" id="ref-for-propdef-display②">display</a>: <a class="css" data-link-type="maybe" href="https://drafts.csswg.org/css-display-4/#valdef-display-contents" id="ref-for-valdef-display-contents②">contents</a> is changed.</p> <li data-md> <p><code>MediaList.item</code> now returns serialization.</p> <li data-md> <p><code>MediaList.item</code> does not serialize shorthand if importance differs.</p> <li data-md> <p>Other specifications are allowed to specify resolved value.</p> <li data-md> <p><code>index</code> argument in <code>insertRule</code> is now optional.</p> <li data-md> <p><code>href</code> attribute of <code>Stylesheet</code> and <code>CSSImportRule</code> now uses <code>USVString</code>.</p> <li data-md> <p><code>CSSOMString</code> is introduced.</p> <li data-md> <p>Serialization of <code>CSSMediaRule</code> and <code>CSSFontFaceRule</code> is added.</p> <li data-md> <p><a data-link-type="dfn" href="#cssstyledeclaration-updating-flag" id="ref-for-cssstyledeclaration-updating-flag③">Updating flag</a> is added to CSS declaration block to avoid serialize-and-reparse on style attribute.</p> <li data-md> <p>Serialization of a declaration value is now properly defined.</p> <li data-md> <p><code>getComputedStyle</code> now returns the style rules of the node’s document.</p> <li data-md> <p>A <code class="idl"><a data-link-type="idl" href="https://webidl.spec.whatwg.org/#exceptiondef-typeerror" id="ref-for-exceptiondef-typeerror">TypeError</a></code> is thrown when the pseudo-element passed to <code>getComputedStyle</code> is unknown or <a class="css" data-link-type="maybe" href="https://drafts.csswg.org/css-scoping-1/#selectordef-slotted" id="ref-for-selectordef-slotted①">::slotted()</a>.</p> <li data-md> <p><code class="idl"><a data-link-type="idl" href="#namespacedef-css" id="ref-for-namespacedef-css①">CSS</a></code> is switched from interface to namespace.</p> <li data-md> <p><code>setPropertyValue</code> and <code>setPropertyPriority</code> are removed from <code class="idl"><a data-link-type="idl" href="#cssstyledeclaration" id="ref-for-cssstyledeclaration⑤">CSSStyleDeclaration</a></code> due to lack of interest from implementations.</p> <li data-md> <p>The <code>styleSheets</code> IDL attribute is moved from <code class="idl"><a data-link-type="idl" href="https://dom.spec.whatwg.org/#document" id="ref-for-document②">Document</a></code> to <code class="idl"><a data-link-type="idl" href="https://dom.spec.whatwg.org/#documentorshadowroot" id="ref-for-documentorshadowroot⑧">DocumentOrShadowRoot</a></code>.</p> <li data-md> <p>LinkStyle.sheet now returns <code>CSSStyleSheet</code> instead of <code>StyleSheet</code></p> <li data-md> <p>Deprecated CSSStyleSheet members are defined.</p> <li data-md> <p>The <code>CSSRule.type</code> attribute is deprecated.</p> <li data-md> <p>Serialization of <a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-4/#ratio-value" id="ref-for-ratio-value①"><ratio></a> is added.</p> <li data-md> <p><code>CSSStyleDeclaration.cssText</code> now returns the empty string for computed style.</p> <li data-md> <p><a data-link-type="dfn" href="https://drafts.csswg.org/css-variables-1/#custom-property" id="ref-for-custom-property⑥">Custom properties</a> are included in <code>getComputedStyle</code>.</p> <li data-md> <p>MathML IDL is introduced.</p> <li data-md> <p>Serialization of <code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-animations-1/#csskeyframesrule" id="ref-for-csskeyframesrule②">CSSKeyframesRule</a></code> and <code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-animations-1/#csskeyframerule" id="ref-for-csskeyframerule②">CSSKeyframeRule</a></code> is added.</p> <li data-md> <p>Serialization of media query is changed.</p> <li data-md> <p>A shorthand is not serialized if there are longhands with other property group / mapping logic in between the longhands of that shorthand.</p> <li data-md> <p><code class="idl"><a data-link-type="idl" href="#cssstylerule" id="ref-for-cssstylerule③">CSSStyleRule</a></code> serialization is aware of nesting now.</p> <li data-md> <p>Constructable stylesheets is introduced.</p> </ul> <h3 class="heading settled" data-level="11.2" id="changes-from-5-december-2013"><span class="secno">11.2. </span><span class="content">Changes From 5 December 2013</span><a class="self-link" href="#changes-from-5-december-2013"></a></h3> <ul> <li data-md> <p>API for alternative stylesheets is removed: <code>selectedStyleSheetSet</code>, <code>lastStyleSheetSet</code>, <code>preferredStyleSheetSet</code>, <code>styleSheetSets</code>, <code>enableStyleSheetsForSet()</code> on <code class="idl"><a data-link-type="idl" href="https://dom.spec.whatwg.org/#document" id="ref-for-document③">Document</a></code>.</p> <li data-md> <p>The <code>pseudo()</code> method on <code class="idl"><a data-link-type="idl" href="https://dom.spec.whatwg.org/#element" id="ref-for-element④">Element</a></code> and the <code>PseudoElement</code> interface is removed.</p> <li data-md> <p>The <code>cascadedStyle</code>, <code>defaultStyle</code>, <code>rawComputedStyle</code> and <code>usedStyle</code> IDL attributes on <code class="idl"><a data-link-type="idl" href="https://dom.spec.whatwg.org/#element" id="ref-for-element⑤">Element</a></code> are removed.</p> <li data-md> <p>The <code class="idl"><a data-link-type="idl" href="#dom-cssrule-csstext" id="ref-for-dom-cssrule-csstext②">cssText</a></code> IDL attribute’s setter on <code class="idl"><a data-link-type="idl" href="#cssrule" id="ref-for-cssrule①⑤">CSSRule</a></code> is changed to do nothing.</p> <li data-md> <p>IDL attributes of the form <code>webkitFoo</code> (with lowercase <code>w</code>) on <code class="idl"><a data-link-type="idl" href="#cssstyledeclaration" id="ref-for-cssstyledeclaration⑥">CSSStyleDeclaration</a></code> are added.</p> <li data-md> <p><code class="idl"><a data-link-type="idl" href="#cssnamespacerule" id="ref-for-cssnamespacerule③">CSSNamespaceRule</a></code> is changed back to readonly.</p> <li data-md> <p>Handling of <code>@charset</code> in <code class="idl"><a data-link-type="idl" href="#dom-cssstylesheet-insertrule" id="ref-for-dom-cssstylesheet-insertrule③">insertRule()</a></code> is removed.</p> <li data-md> <p><code>CSSCharsetRule</code> is removed again.</p> <li data-md> <p>Serialization of identifiers and strings is changed.</p> <li data-md> <p>Serialization of selectors now supports combinators ">>" and "||" and the "i" flag in attribute selectors.</p> <li data-md> <p>Serialization of :lang() is changed.</p> <li data-md> <p>Serialization of <a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-color-5/#typedef-color" id="ref-for-typedef-color②"><color></a> and <a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-4/#number-value" id="ref-for-number-value①"><number></a> is changed.</p> <li data-md> <p><code class="idl"><a data-link-type="idl" href="#dom-cssstyledeclaration-setproperty" id="ref-for-dom-cssstyledeclaration-setproperty⑤">setProperty()</a></code> on <code class="idl"><a data-link-type="idl" href="#cssstyledeclaration" id="ref-for-cssstyledeclaration⑦">CSSStyleDeclaration</a></code> is changed.</p> </ul> <h3 class="heading settled" data-level="11.3" id="changes-from-12-july-2011-to-5-december-2013"><span class="secno">11.3. </span><span class="content">Changes From 12 July 2011 To 5 December 2013</span><a class="self-link" href="#changes-from-12-july-2011-to-5-december-2013"></a></h3> <ul> <li>Cross-origin stylesheets are not allowed to be read or changed. <li><code>CSSCharsetRule</code> is re-introduced. <li><code>CSSGroupingRule</code> and <code>CSSMarginRule</code> are introduced. <li><code>CSSNamespaceRule</code> is now mutable. <li><a data-link-type="dfn" href="#parse-a-css-declaration-block" id="ref-for-parse-a-css-declaration-block④">Parse</a> and <a data-link-type="dfn" href="#serialize-a-css-declaration-block" id="ref-for-serialize-a-css-declaration-block④">serialize</a> a CSS declaration block is now defined. <li>Shorthands are now supported in <code class="idl"><a data-link-type="idl" href="#dom-cssstyledeclaration-setproperty" id="ref-for-dom-cssstyledeclaration-setproperty⑥">setProperty()</a></code>, <code class="idl"><a data-link-type="idl" href="#dom-cssstyledeclaration-getpropertyvalue" id="ref-for-dom-cssstyledeclaration-getpropertyvalue⑥">getPropertyValue()</a></code>, et al. <li><code>setPropertyValue</code> and <code>setPropertyPriority</code> are added to <code class="idl"><a data-link-type="idl" href="#cssstyledeclaration" id="ref-for-cssstyledeclaration⑧">CSSStyleDeclaration</a></code>. <li>The <code>style</code> and <code>media</code> attributes of various interfaces are annotated with the <code>[PutForwards]</code> WebIDL extended attribute. <li>The <code>pseudo()</code> method on <code>Element</code> is introduced. <li>The <code>PseudoElement</code> interface is introduced. <li>The <code>cascadedStyle</code>, <code>rawComputedStyle</code> and <code>usedStyle</code> attributes on <code>Element</code> and <code>PseudoElement</code> are introduced. <li>The <a class="idl-code" data-link-type="method" href="#dom-css-escape" id="ref-for-dom-css-escape③">CSS.escape()</a> static method is introduced. </ul> <h2 class="heading settled" data-level="12" id="security-and-privacy-considerations"><span class="secno">12. </span><span class="content">Security and Privacy Considerations</span><a class="self-link" href="#security-and-privacy-considerations"></a></h2> <p>No new security or privacy considerations have been reported on this specification.</p> <h2 class="heading settled" data-level="13" id="acknowledgments"><span class="secno">13. </span><span class="content">Acknowledgments</span><a class="self-link" href="#acknowledgments"></a></h2> <p>The editors would like to thank Alexey Feldgendler, Benjamin Poulain, Björn Höhrmann, Boris Zbasky, Brian Kardell, Chris Dumez, Christian Krebs, Daniel Glazman, David Baron, Domenic Denicola, Dominique Hazael-Massieux, <i>fantasai</i>, Hallvord R. M. Steen, Ian Hickson, John Daggett, Lachlan Hunt, Mike Sherov, Myles C. Maxfield, Morten Stenshorne, Ms2ger, Nazım Can Altınova, Øyvind Stenhaug, Peter Sloetjes, Philip Jägenstedt, Philip Taylor, Richard Gibson, Robert O’Callahan, Simon Sapin, Sjoerd Visscher, Sylvain Galineau, Tarquin Wilton-Jones, Xidorn Quan, and Zack Weinberg for contributing to this specification.</p> <p>Additional thanks to Ian Hickson for writing the initial version of the alternative style sheets API and canonicalization (now serialization) rules for CSS values.</p> </main> <h2 class="no-ref no-num heading settled" id="w3c-conformance"><span class="content"> Conformance</span><a class="self-link" href="#w3c-conformance"></a></h2> <h3 class="no-ref heading settled" id="w3c-conventions"><span class="content"> Document conventions</span><a class="self-link" href="#w3c-conventions"></a></h3> <p>Conformance requirements are expressed with a combination of descriptive assertions and RFC 2119 terminology. The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in the normative parts of this document are to be interpreted as described in RFC 2119. However, for readability, these words do not appear in all uppercase letters in this specification. </p> <p>All of the text of this specification is normative except sections explicitly marked as non-normative, examples, and notes. <a data-link-type="biblio" href="#biblio-rfc2119" title="Key words for use in RFCs to Indicate Requirement Levels">[RFC2119]</a></p> <p>Examples in this specification are introduced with the words “for example” or are set apart from the normative text with <code>class="example"</code>, like this: </p> <div class="example" id="w3c-example"> <a class="self-link" href="#w3c-example"></a> <p>This is an example of an informative example.</p> </div> <p>Informative notes begin with the word “Note” and are set apart from the normative text with <code>class="note"</code>, like this: </p> <p class="note" role="note">Note, this is an informative note.</p> <p>Advisements are normative sections styled to evoke special attention and are set apart from other normative text with <code><strong class="advisement"></code>, like this: <strong class="advisement"> UAs MUST provide an accessible alternative. </strong></p> <details class="wpt-tests-block" dir="ltr" lang="en" open> <summary>Tests</summary> <p>Tests relating to the content of this specification may be documented in “Tests” blocks like this one. Any such block is non-normative.</p> <ul class="wpt-tests-list"></ul> <hr> </details> <h3 class="no-ref heading settled" id="w3c-conformance-classes"><span class="content"> Conformance classes</span><a class="self-link" href="#w3c-conformance-classes"></a></h3> <p>Conformance to this specification is defined for three conformance classes: </p> <dl> <dt>style sheet <dd>A <a href="http://www.w3.org/TR/CSS21/conform.html#style-sheet">CSS style sheet</a>. <dt>renderer <dd>A <a href="http://www.w3.org/TR/CSS21/conform.html#user-agent">UA</a> that interprets the semantics of a style sheet and renders documents that use them. <dt>authoring tool <dd>A <a href="http://www.w3.org/TR/CSS21/conform.html#user-agent">UA</a> that writes a style sheet. </dl> <p>A style sheet is conformant to this specification if all of its statements that use syntax defined in this module are valid according to the generic CSS grammar and the individual grammars of each feature defined in this module. </p> <p>A renderer is conformant to this specification if, in addition to interpreting the style sheet as defined by the appropriate specifications, it supports all the features defined by this specification by parsing them correctly and rendering the document accordingly. However, the inability of a UA to correctly render a document due to limitations of the device does not make the UA non-conformant. (For example, a UA is not required to render color on a monochrome monitor.) </p> <p>An authoring tool is conformant to this specification if it writes style sheets that are syntactically correct according to the generic CSS grammar and the individual grammars of each feature in this module, and meet all other conformance requirements of style sheets as described in this module. </p> <h3 class="no-ref heading settled" id="w3c-partial"><span class="content"> Partial implementations</span><a class="self-link" href="#w3c-partial"></a></h3> <p>So that authors can exploit the forward-compatible parsing rules to assign fallback values, CSS renderers <strong>must</strong> treat as invalid (and <a href="http://www.w3.org/TR/CSS21/conform.html#ignore">ignore as appropriate</a>) any at-rules, properties, property values, keywords, and other syntactic constructs for which they have no usable level of support. In particular, user agents <strong>must not</strong> selectively ignore unsupported component values and honor supported values in a single multi-value property declaration: if any value is considered invalid (as unsupported values must be), CSS requires that the entire declaration be ignored.</p> <h4 class="heading settled" id="w3c-conform-future-proofing"><span class="content"> Implementations of Unstable and Proprietary Features</span><a class="self-link" href="#w3c-conform-future-proofing"></a></h4> <p>To avoid clashes with future stable CSS features, the CSSWG recommends <a href="http://www.w3.org/TR/CSS/#future-proofing">following best practices</a> for the implementation of <a href="http://www.w3.org/TR/CSS/#unstable">unstable</a> features and <a href="http://www.w3.org/TR/CSS/#proprietary-extension">proprietary extensions</a> to CSS. </p> <h3 class="no-ref heading settled" id="w3c-testing"><span class="content"> Non-experimental implementations</span><a class="self-link" href="#w3c-testing"></a></h3> <p>Once a specification reaches the Candidate Recommendation stage, non-experimental implementations are possible, and implementors should release an unprefixed implementation of any CR-level feature they can demonstrate to be correctly implemented according to spec. </p> <p>To establish and maintain the interoperability of CSS across implementations, the CSS Working Group requests that non-experimental CSS renderers submit an implementation report (and, if necessary, the testcases used for that implementation report) to the W3C before releasing an unprefixed implementation of any CSS features. Testcases submitted to W3C are subject to review and correction by the CSS Working Group. </p> <p>Further information on submitting testcases and implementation reports can be found from on the CSS Working Group’s website at <a href="http://www.w3.org/Style/CSS/Test/">http://www.w3.org/Style/CSS/Test/</a>. Questions should be directed to the <a href="http://lists.w3.org/Archives/Public/public-css-testsuite">public-css-testsuite@w3.org</a> mailing list.</p> <script src="https://www.w3.org/scripts/TR/2021/fixup.js"></script> <h2 class="no-num no-ref heading settled" id="index"><span class="content">Index</span><a class="self-link" href="#index"></a></h2> <h3 class="no-num no-ref heading settled" id="index-defined-here"><span class="content">Terms defined by this specification</span><a class="self-link" href="#index-defined-here"></a></h3> <ul class="index"> <li><a href="#add-a-css-style-sheet">add a CSS style sheet</a><span>, in § 6.2</span> <li><a href="#dom-cssstylesheet-addrule">addRule()</a><span>, in § 6.1.2.1</span> <li><a href="#dom-cssstylesheet-addrule">addRule(selector)</a><span>, in § 6.1.2.1</span> <li><a href="#dom-cssstylesheet-addrule">addRule(selector, block, optionalIndex)</a><span>, in § 6.1.2.1</span> <li><a href="#dom-cssstylesheet-addrule">addRule(selector, style)</a><span>, in § 6.1.2.1</span> <li><a href="#dom-cssstylesheet-addrule">addRule(selector, style, index)</a><span>, in § 6.1.2.1</span> <li><a href="#dom-documentorshadowroot-adoptedstylesheets">adoptedStyleSheets</a><span>, in § 6.2.3</span> <li><a href="#concept-css-style-sheet-alternate-flag">alternate flag</a><span>, in § 6.1</span> <li><a href="#dom-medialist-appendmedium">appendMedium(medium)</a><span>, in § 4.4</span> <li><a href="#associated-css-style-sheet">associated CSS style sheet</a><span>, in § 6.3.2</span> <li><a href="#dom-cssstylesheetinit-baseurl">baseURL</a><span>, in § 6.1.2</span> <li><a href="#dom-csspagedescriptors-bleed">bleed</a><span>, in § 6.4.7</span> <li><a href="#dom-cssstyledeclaration-camel-cased-attribute">camel-cased attribute</a><span>, in § 6.6.1</span> <li><a href="#dom-cssstyleproperties-camel_cased_attribute">camel_cased_attribute</a><span>, in § 6.6.1</span> <li><a href="#css-declaration-case-sensitive-flag">case-sensitive flag</a><span>, in § 6.5</span> <li><a href="#change-the-preferred-css-style-sheet-set-name">change the preferred CSS style sheet set name</a><span>, in § 6.2</span> <li><a href="#dom-cssrule-charset_rule">CHARSET_RULE</a><span>, in § 6.4.2</span> <li><a href="#concept-css-rule-child-css-rules">child CSS rules</a><span>, in § 6.4</span> <li><a href="#medialist-collection-of-media-queries">collection of media queries</a><span>, in § 4.4</span> <li><a href="#compare-media-queries">compare media queries</a><span>, in § 4.3</span> <li><a href="#cssstyledeclaration-computed-flag">computed flag</a><span>, in § 6.6</span> <li><a href="#concept-css-style-sheet-constructed-flag">constructed flag</a><span>, in § 6.1</span> <li><a href="#dom-cssstylesheet-cssstylesheet">constructor()</a><span>, in § 6.1</span> <li><a href="#concept-css-style-sheet-constructor-document">constructor document</a><span>, in § 6.1</span> <li><a href="#dom-cssstylesheet-cssstylesheet">constructor(options)</a><span>, in § 6.1</span> <li><a href="#create-a-constructed-cssstylesheet">create a constructed CSSStyleSheet</a><span>, in § 6.1</span> <li><a href="#create-a-css-style-sheet">create a CSS style sheet</a><span>, in § 6.2</span> <li><a href="#create-a-medialist-object">create a MediaList object</a><span>, in § 4.4</span> <li><a href="#namespacedef-css">CSS</a><span>, in § 8.1</span> <li><a href="#css-declaration">CSS declaration</a><span>, in § 6.5</span> <li><a href="#css-declaration-block">CSS declaration block</a><span>, in § 6.6</span> <li><a href="#dom-cssstyleproperties-cssfloat">cssFloat</a><span>, in § 6.6.1</span> <li><a href="#cssgroupingrule">CSSGroupingRule</a><span>, in § 6.4.5</span> <li><a href="#cssimportrule">CSSImportRule</a><span>, in § 6.4.4</span> <li><a href="#cssmarginrule">CSSMarginRule</a><span>, in § 6.4.8</span> <li><a href="#cssnamespacerule">CSSNamespaceRule</a><span>, in § 6.4.9</span> <li><a href="#cssomstring">CSSOMString</a><span>, in § 3</span> <li><a href="#csspagedescriptors">CSSPageDescriptors</a><span>, in § 6.4.7</span> <li><a href="#csspagerule">CSSPageRule</a><span>, in § 6.4.7</span> <li><a href="#css-property-to-idl-attribute">CSS property to IDL attribute</a><span>, in § 6.6.1</span> <li><a href="#css-rule">CSS rule</a><span>, in § 6.4</span> <li><a href="#cssrule">CSSRule</a><span>, in § 6.4.2</span> <li><a href="#cssrulelist">CSSRuleList</a><span>, in § 6.4.1</span> <li><a href="#concept-css-style-sheet-css-rules">CSS rules</a><span>, in § 6.1</span> <li> cssRules <ul> <li><a href="#dom-cssgroupingrule-cssrules">attribute for CSSGroupingRule</a><span>, in § 6.4.5</span> <li><a href="#dom-cssstylesheet-cssrules">attribute for CSSStyleSheet</a><span>, in § 6.1.2</span> </ul> <li><a href="#cssstyledeclaration">CSSStyleDeclaration</a><span>, in § 6.6.1</span> <li><a href="#cssstyleproperties">CSSStyleProperties</a><span>, in § 6.6.1</span> <li><a href="#cssstylerule">CSSStyleRule</a><span>, in § 6.4.3</span> <li><a href="#css-style-sheet">CSS style sheet</a><span>, in § 6.1</span> <li><a href="#cssstylesheet">CSSStyleSheet</a><span>, in § 6.1.2</span> <li><a href="#dom-cssstylesheet-cssstylesheet">CSSStyleSheet()</a><span>, in § 6.1</span> <li><a href="#dictdef-cssstylesheetinit">CSSStyleSheetInit</a><span>, in § 6.1.2</span> <li><a href="#dom-cssstylesheet-cssstylesheet">CSSStyleSheet(options)</a><span>, in § 6.1</span> <li><a href="#css-style-sheet-set">CSS style sheet set</a><span>, in § 6.2</span> <li><a href="#css-style-sheet-set-name">CSS style sheet set name</a><span>, in § 6.2</span> <li> cssText <ul> <li><a href="#dom-cssrule-csstext">attribute for CSSRule</a><span>, in § 6.4.2</span> <li><a href="#dom-cssstyledeclaration-csstext">attribute for CSSStyleDeclaration</a><span>, in § 6.6.1</span> </ul> <li><a href="#dom-cssstyleproperties-dashed-attribute">dashed attribute</a><span>, in § 6.6.1</span> <li><a href="#dom-cssstyleproperties-dashed_attribute">dashed_attribute</a><span>, in § 6.6.1</span> <li><a href="#cssstyledeclaration-declarations">declarations</a><span>, in § 6.6</span> <li><a href="#dom-medialist-deletemedium">deleteMedium(medium)</a><span>, in § 4.4</span> <li> deleteRule(index) <ul> <li><a href="#dom-cssgroupingrule-deleterule">method for CSSGroupingRule</a><span>, in § 6.4.5</span> <li><a href="#dom-cssstylesheet-deleterule">method for CSSStyleSheet</a><span>, in § 6.1.2</span> </ul> <li> disabled <ul> <li><a href="#dom-stylesheet-disabled">attribute for StyleSheet</a><span>, in § 6.1.1</span> <li><a href="#dom-cssstylesheetinit-disabled">dict-member for CSSStyleSheetInit</a><span>, in § 6.1.2</span> </ul> <li><a href="#concept-css-style-sheet-disabled-flag">disabled flag</a><span>, in § 6.1</span> <li><a href="#concept-css-style-sheet-disallow-modification-flag">disallow modification flag</a><span>, in § 6.1</span> <li><a href="#documentorshadowroot-document-or-shadow-root-css-style-sheets">document or shadow root CSS style sheets</a><span>, in § 6.2</span> <li><a href="#elementcssinlinestyle">ElementCSSInlineStyle</a><span>, in § 7.1</span> <li><a href="#enable-a-css-style-sheet-set">enable a CSS style sheet set</a><span>, in § 6.2</span> <li><a href="#enabled-css-style-sheet-set">enabled CSS style sheet set</a><span>, in § 6.2</span> <li><a href="#escape-a-character">escape a character</a><span>, in § 2.1</span> <li><a href="#escape-a-character-as-code-point">escape a character as code point</a><span>, in § 2.1</span> <li><a href="#escape-a-character-as-code-point">escaped as code point</a><span>, in § 2.1</span> <li><a href="#dom-css-escape">escape(ident)</a><span>, in § 8.1</span> <li><a href="#fetch-a-css-style-sheet">fetch a CSS style sheet</a><span>, in § 6.3.1</span> <li><a href="#documentorshadowroot-final-css-style-sheets">final CSS style sheets</a><span>, in § 6.2</span> <li><a href="#dom-cssrule-font_face_rule">FONT_FACE_RULE</a><span>, in § 6.4.2</span> <li><a href="#dom-window-getcomputedstyle">getComputedStyle(elt)</a><span>, in § 7.2</span> <li><a href="#dom-window-getcomputedstyle">getComputedStyle(elt, pseudoElt)</a><span>, in § 7.2</span> <li><a href="#dom-cssstyledeclaration-getpropertypriority">getPropertyPriority(property)</a><span>, in § 6.6.1</span> <li><a href="#dom-cssstyledeclaration-getpropertyvalue">getPropertyValue(property)</a><span>, in § 6.6.1</span> <li> href <ul> <li><a href="#dom-cssimportrule-href">attribute for CSSImportRule</a><span>, in § 6.4.4</span> <li><a href="#dom-stylesheet-href">attribute for StyleSheet</a><span>, in § 6.1.1</span> </ul> <li><a href="#http-default-style">http-default-style</a><span>, in § 10.1</span> <li><a href="#idl-attribute-to-css-property">IDL attribute to CSS property</a><span>, in § 6.6.1</span> <li><a href="#css-declaration-important-flag">important flag</a><span>, in § 6.5</span> <li><a href="#dom-cssrule-import_rule">IMPORT_RULE</a><span>, in § 6.4.2</span> <li><a href="#insert-a-css-rule">insert a CSS rule</a><span>, in § 6.4</span> <li> insertRule(rule) <ul> <li><a href="#dom-cssgroupingrule-insertrule">method for CSSGroupingRule</a><span>, in § 6.4.5</span> <li><a href="#dom-cssstylesheet-insertrule">method for CSSStyleSheet</a><span>, in § 6.1.2</span> </ul> <li> insertRule(rule, index) <ul> <li><a href="#dom-cssgroupingrule-insertrule">method for CSSGroupingRule</a><span>, in § 6.4.5</span> <li><a href="#dom-cssstylesheet-insertrule">method for CSSStyleSheet</a><span>, in § 6.1.2</span> </ul> <li> item(index) <ul> <li><a href="#dom-cssrulelist-item">method for CSSRuleList</a><span>, in § 6.4.1</span> <li><a href="#dom-cssstyledeclaration-item">method for CSSStyleDeclaration</a><span>, in § 6.6.1</span> <li><a href="#dom-medialist-item">method for MediaList</a><span>, in § 4.4</span> <li><a href="#dom-stylesheetlist-item">method for StyleSheetList</a><span>, in § 6.2.2</span> </ul> <li><a href="#last-css-style-sheet-set-name">last CSS style sheet set name</a><span>, in § 6.2</span> <li><a href="#dom-cssimportrule-layername">layerName</a><span>, in § 6.4.4</span> <li> length <ul> <li><a href="#dom-cssrulelist-length">attribute for CSSRuleList</a><span>, in § 6.4.1</span> <li><a href="#dom-cssstyledeclaration-length">attribute for CSSStyleDeclaration</a><span>, in § 6.6.1</span> <li><a href="#dom-medialist-length">attribute for MediaList</a><span>, in § 4.4</span> <li><a href="#dom-stylesheetlist-length">attribute for StyleSheetList</a><span>, in § 6.2.2</span> </ul> <li><a href="#linkstyle">LinkStyle</a><span>, in § 6.3.2</span> <li><a href="#concept-css-style-sheet-location">location</a><span>, in § 6.1</span> <li><a href="#dom-csspagedescriptors-margin">margin</a><span>, in § 6.4.7</span> <li><a href="#dom-csspagedescriptors-margin-bottom">margin-bottom</a><span>, in § 6.4.7</span> <li><a href="#dom-csspagedescriptors-marginbottom">marginBottom</a><span>, in § 6.4.7</span> <li><a href="#dom-csspagedescriptors-margin-left">margin-left</a><span>, in § 6.4.7</span> <li><a href="#dom-csspagedescriptors-marginleft">marginLeft</a><span>, in § 6.4.7</span> <li><a href="#dom-csspagedescriptors-margin-right">margin-right</a><span>, in § 6.4.7</span> <li><a href="#dom-csspagedescriptors-marginright">marginRight</a><span>, in § 6.4.7</span> <li><a href="#dom-cssrule-margin_rule">MARGIN_RULE</a><span>, in § 6.4.2</span> <li><a href="#dom-csspagedescriptors-margin-top">margin-top</a><span>, in § 6.4.7</span> <li><a href="#dom-csspagedescriptors-margintop">marginTop</a><span>, in § 6.4.7</span> <li><a href="#dom-csspagedescriptors-marks">marks</a><span>, in § 6.4.7</span> <li> media <ul> <li><a href="#dom-cssimportrule-media">attribute for CSSImportRule</a><span>, in § 6.4.4</span> <li><a href="#dom-stylesheet-media">attribute for StyleSheet</a><span>, in § 6.1.1</span> <li><a href="#concept-css-style-sheet-media">dfn for CSSStyleSheet</a><span>, in § 6.1</span> <li><a href="#dom-cssstylesheetinit-media">dict-member for CSSStyleSheetInit</a><span>, in § 6.1.2</span> </ul> <li><a href="#medialist">MediaList</a><span>, in § 4.4</span> <li><a href="#dom-cssrule-media_rule">MEDIA_RULE</a><span>, in § 6.4.2</span> <li><a href="#dom-medialist-mediatext">mediaText</a><span>, in § 4.4</span> <li><a href="#dom-cssmarginrule-name">name</a><span>, in § 6.4.8</span> <li><a href="#dom-cssrule-namespace_rule">NAMESPACE_RULE</a><span>, in § 6.4.2</span> <li><a href="#dom-cssnamespacerule-namespaceuri">namespaceURI</a><span>, in § 6.4.9</span> <li><a href="#concept-css-style-sheet-origin-clean-flag">origin-clean flag</a><span>, in § 6.1</span> <li><a href="#concept-css-style-sheet-owner-css-rule">owner CSS rule</a><span>, in § 6.1</span> <li> owner node <ul> <li><a href="#cssstyledeclaration-owner-node">dfn for CSSStyleDeclaration</a><span>, in § 6.6</span> <li><a href="#concept-css-style-sheet-owner-node">dfn for CSSStyleSheet</a><span>, in § 6.1</span> </ul> <li><a href="#dom-stylesheet-ownernode">ownerNode</a><span>, in § 6.1.1</span> <li><a href="#dom-cssstylesheet-ownerrule">ownerRule</a><span>, in § 6.1.2</span> <li><a href="#dom-csspagedescriptors-page-orientation">page-orientation</a><span>, in § 6.4.7</span> <li><a href="#dom-csspagedescriptors-pageorientation">pageOrientation</a><span>, in § 6.4.7</span> <li><a href="#dom-cssrule-page_rule">PAGE_RULE</a><span>, in § 6.4.2</span> <li> parent CSS rule <ul> <li><a href="#concept-css-rule-parent-css-rule">dfn for CSSRule</a><span>, in § 6.4</span> <li><a href="#cssstyledeclaration-parent-css-rule">dfn for CSSStyleDeclaration</a><span>, in § 6.6</span> </ul> <li> parent CSS style sheet <ul> <li><a href="#concept-css-rule-parent-css-style-sheet">dfn for CSSRule</a><span>, in § 6.4</span> <li><a href="#concept-css-style-sheet-parent-css-style-sheet">dfn for CSSStyleSheet</a><span>, in § 6.1</span> </ul> <li> parentRule <ul> <li><a href="#dom-cssrule-parentrule">attribute for CSSRule</a><span>, in § 6.4.2</span> <li><a href="#dom-cssstyledeclaration-parentrule">attribute for CSSStyleDeclaration</a><span>, in § 6.6.1</span> </ul> <li> parentStyleSheet <ul> <li><a href="#dom-cssrule-parentstylesheet">attribute for CSSRule</a><span>, in § 6.4.2</span> <li><a href="#dom-stylesheet-parentstylesheet">attribute for StyleSheet</a><span>, in § 6.1.1</span> </ul> <li><a href="#parse-a-css-declaration-block">parse a CSS declaration block</a><span>, in § 6.6</span> <li><a href="#parse-a-css-rule">parse a CSS rule</a><span>, in § 6.4</span> <li><a href="#parse-a-css-value">parse a CSS value</a><span>, in § 6.7.1</span> <li><a href="#parse-a-group-of-selectors">parse a group of selectors</a><span>, in § 5.1</span> <li><a href="#parse-a-list-of-css-page-selectors">parse a list of CSS page selectors</a><span>, in § 6.4.7</span> <li><a href="#parse-a-media-query">parse a media query</a><span>, in § 4.1</span> <li><a href="#parse-a-media-query-list">parse a media query list</a><span>, in § 4.1</span> <li><a href="#persistent-css-style-sheet">persistent CSS style sheet</a><span>, in § 6.2</span> <li><a href="#preferred-css-style-sheet-set-name">preferred CSS style sheet set name</a><span>, in § 6.2</span> <li><a href="#concept-shorthands-preferred-order">preferred order</a><span>, in § 6.6</span> <li><a href="#dom-cssnamespacerule-prefix">prefix</a><span>, in § 6.4.9</span> <li><a href="#prolog">prolog</a><span>, in § 6.3.4</span> <li><a href="#css-declaration-property-name">property name</a><span>, in § 6.5</span> <li><a href="#cssstyledeclaration-readonly-flag">readonly flag</a><span>, in § 6.6</span> <li><a href="#remove-a-css-rule">remove a CSS rule</a><span>, in § 6.4</span> <li><a href="#remove-a-css-style-sheet">remove a CSS style sheet</a><span>, in § 6.2</span> <li><a href="#dom-cssstyledeclaration-removeproperty">removeProperty(property)</a><span>, in § 6.6.1</span> <li><a href="#dom-cssstylesheet-removerule">removeRule()</a><span>, in § 6.1.2.1</span> <li><a href="#dom-cssstylesheet-removerule">removeRule(index)</a><span>, in § 6.1.2.1</span> <li><a href="#dom-cssstylesheet-replacesync">replaceSync(text)</a><span>, in § 6.1.2</span> <li><a href="#dom-cssstylesheet-replace">replace(text)</a><span>, in § 6.1.2</span> <li><a href="#resolved-value">resolved value</a><span>, in § 9</span> <li><a href="#resolved-value-special-case-property">resolved value special case property</a><span>, in § 9</span> <li><a href="#resolved-value-special-case-property-like-color">resolved value special case property like color</a><span>, in § 9</span> <li><a href="#resolved-value-special-case-property-like-height">resolved value special case property like height</a><span>, in § 9</span> <li><a href="#resolved-value-special-case-property-like-top">resolved value special case property like top</a><span>, in § 9</span> <li><a href="#dom-cssstylesheet-rules">rules</a><span>, in § 6.1.2.1</span> <li><a href="#select-a-css-style-sheet-set">select a CSS style sheet set</a><span>, in § 6.2</span> <li> selectorText <ul> <li><a href="#dom-csspagerule-selectortext">attribute for CSSPageRule</a><span>, in § 6.4.7</span> <li><a href="#dom-cssstylerule-selectortext">attribute for CSSStyleRule</a><span>, in § 6.4.3</span> </ul> <li><a href="#serialize-a-comma-separated-list">serialize a comma-separated list</a><span>, in § 2.1</span> <li><a href="#serialize-a-css-component-value">serialize a CSS component value</a><span>, in § 6.7.2</span> <li><a href="#serialize-a-css-declaration">serialize a CSS declaration</a><span>, in § 6.6</span> <li><a href="#serialize-a-css-declaration-block">serialize a CSS declaration block</a><span>, in § 6.6</span> <li><a href="#serialize-a-css-rule">serialize a CSS rule</a><span>, in § 6.4</span> <li><a href="#serialize-a-css-value">serialize a CSS value</a><span>, in § 6.7.2</span> <li><a href="#serialize-a-group-of-selectors">serialize a group of selectors</a><span>, in § 5.2</span> <li><a href="#serialize-a-list-of-css-page-selectors">serialize a list of CSS page selectors</a><span>, in § 6.4.7</span> <li><a href="#serialize-a-local">serialize a LOCAL</a><span>, in § 2.1</span> <li><a href="#serialize-a-media-feature-value">serialize a media feature value</a><span>, in § 4.2.1</span> <li><a href="#serialize-a-media-query">serialize a media query</a><span>, in § 4.2</span> <li><a href="#serialize-a-media-query-list">serialize a media query list</a><span>, in § 4.2</span> <li><a href="#serialize-an-identifier">serialize an identifier</a><span>, in § 2.1</span> <li><a href="#serialize-a-selector">serialize a selector</a><span>, in § 5.2</span> <li><a href="#serialize-a-simple-selector">serialize a simple selector</a><span>, in § 5.2</span> <li><a href="#serialize-a-string">serialize a string</a><span>, in § 2.1</span> <li><a href="#serialize-a-url">serialize a URL</a><span>, in § 2.1</span> <li><a href="#serialize-a-whitespace-separated-list">serialize a whitespace-separated list</a><span>, in § 2.1</span> <li><a href="#set">set</a><span>, in § 2</span> <li><a href="#set-a-css-declaration">set a CSS declaration</a><span>, in § 6.6.1</span> <li><a href="#dom-cssstyledeclaration-setproperty">setProperty(property, value)</a><span>, in § 6.6.1</span> <li><a href="#dom-cssstyledeclaration-setproperty">setProperty(property, value, priority)</a><span>, in § 6.6.1</span> <li><a href="#dom-linkstyle-sheet">sheet</a><span>, in § 6.3.2</span> <li><a href="#dom-csspagedescriptors-size">size</a><span>, in § 6.4.7</span> <li><a href="#concept-declarations-specified-order">specified order</a><span>, in § 6.4.3</span> <li><a href="#MediaList-stringification-behavior">stringification behavior</a><span>, in § 4.4</span> <li> style <ul> <li><a href="#dom-cssmarginrule-style">attribute for CSSMarginRule</a><span>, in § 6.4.8</span> <li><a href="#dom-csspagerule-style">attribute for CSSPageRule</a><span>, in § 6.4.7</span> <li><a href="#dom-cssstylerule-style">attribute for CSSStyleRule</a><span>, in § 6.4.3</span> <li><a href="#dom-elementcssinlinestyle-style">attribute for ElementCSSInlineStyle</a><span>, in § 7.1</span> </ul> <li><a href="#dom-cssrule-style_rule">STYLE_RULE</a><span>, in § 6.4.2</span> <li><a href="#stylesheet">StyleSheet</a><span>, in § 6.1.1</span> <li><a href="#dom-cssimportrule-stylesheet">styleSheet</a><span>, in § 6.4.4</span> <li><a href="#concept-css-style-sheet-stylesheet-base-url">stylesheet base URL</a><span>, in § 6.1</span> <li><a href="#stylesheetlist">StyleSheetList</a><span>, in § 6.2.2</span> <li><a href="#dom-documentorshadowroot-stylesheets">styleSheets</a><span>, in § 6.2.3</span> <li><a href="#supported-css-property">supported CSS property</a><span>, in § 2</span> <li><a href="#supported-styling-language">supported styling language</a><span>, in § 2</span> <li><a href="#dom-cssimportrule-supportstext">supportsText</a><span>, in § 6.4.4</span> <li><a href="#synchronously-replace-the-rules-of-a-cssstylesheet">synchronously replace the rules of a CSSStyleSheet</a><span>, in § 6.1.2</span> <li><a href="#concept-css-rule-text">text</a><span>, in § 6.4</span> <li> title <ul> <li><a href="#dom-stylesheet-title">attribute for StyleSheet</a><span>, in § 6.1.1</span> <li><a href="#concept-css-style-sheet-title">dfn for CSSStyleSheet</a><span>, in § 6.1</span> </ul> <li> type <ul> <li><a href="#dom-cssrule-type">attribute for CSSRule</a><span>, in § 6.4.2</span> <li><a href="#dom-stylesheet-type">attribute for StyleSheet</a><span>, in § 6.1.1</span> <li><a href="#concept-css-rule-type">dfn for CSSRule</a><span>, in § 6.4</span> <li><a href="#concept-css-style-sheet-type">dfn for CSSStyleSheet</a><span>, in § 6.1</span> </ul> <li><a href="#unset">unset</a><span>, in § 2</span> <li><a href="#update-style-attribute-for">update style attribute for</a><span>, in § 6.6</span> <li><a href="#cssstyledeclaration-updating-flag">updating flag</a><span>, in § 6.6</span> <li><a href="#css-declaration-value">value</a><span>, in § 6.5</span> <li><a href="#dom-cssstyleproperties-webkit-cased-attribute">webkit-cased attribute</a><span>, in § 6.6.1</span> <li><a href="#dom-cssstyleproperties-webkit_cased_attribute">webkit_cased_attribute</a><span>, in § 6.6.1</span> </ul> <h3 class="no-num no-ref heading settled" id="index-defined-elsewhere"><span class="content">Terms defined by reference</span><a class="self-link" href="#index-defined-elsewhere"></a></h3> <ul class="index"> <li> <a data-link-type="biblio">[]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="cea6420e">a style sheet that is blocking scripts</span> <li><span class="dfn-paneled" id="f8434dee">being rendered</span> <li><span class="dfn-paneled" id="faf954d6">browsing context</span> <li><span class="dfn-paneled" id="9e81ae64">content-type metadata</span> <li><span class="dfn-paneled" id="5003dc6f">contributes a script-blocking style sheet</span> <li><span class="dfn-paneled" id="6eb8a5d8">document base url</span> <li><span class="dfn-paneled" id="74c04a49">document url</span> <li><span class="dfn-paneled" id="a33db89a">fetch</span> <li><span class="dfn-paneled" id="49a64d88">html elements</span> <li><span class="dfn-paneled" id="003ea2bc">long</span> <li><span class="dfn-paneled" id="eb1b1af3">network error</span> <li><span class="dfn-paneled" id="5216e1a0">node document</span> <li><span class="dfn-paneled" id="f78d5b5c">origin</span> <li><span class="dfn-paneled" id="5f7259bd">pseudo-attribute</span> <li><span class="dfn-paneled" id="fd11cdcd">quirks mode</span> <li><span class="dfn-paneled" id="358f1dbd">referrer</span> <li><span class="dfn-paneled" id="55213b5b">request</span> <li><span class="dfn-paneled" id="dbbfc660">script-blocking style sheet set</span> <li><span class="dfn-paneled" id="1d670c56">supported property indices</span> <li><span class="dfn-paneled" id="1a4bc525">throw</span> <li><span class="dfn-paneled" id="d1fe35a8">tree order</span> <li><span class="dfn-paneled" id="dcffbccd">URL</span> <li><span class="dfn-paneled" id="dc1cd39b">url <small>(for request)</small></span> <li><span class="dfn-paneled" id="ca3ca4ae">URL parser</span> <li><span class="dfn-paneled" id="5442ea33">URL serializer</span> <li><span class="dfn-paneled" id="6f0eb5e7">xml-stylesheet processing instruction</span> </ul> <li> <a data-link-type="biblio">[COMPAT]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="e652d1b9">-webkit-transform</span> </ul> <li> <a data-link-type="biblio">[CSS-ANCHOR-POSITION-1]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="9470c703">none</span> </ul> <li> <a data-link-type="biblio">[CSS-ANIMATIONS-1]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="68164446">CSSKeyframeRule</span> <li><span class="dfn-paneled" id="83120856">CSSKeyframesRule</span> <li><span class="dfn-paneled" id="9af0059d">cssRules</span> <li><span class="dfn-paneled" id="09633b18">keyText</span> <li><span class="dfn-paneled" id="5c59509c">name</span> </ul> <li> <a data-link-type="biblio">[CSS-BACKGROUNDS-3]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="11fb4d5b">background-color</span> <li><span class="dfn-paneled" id="5c4b7db5">border-bottom-color</span> <li><span class="dfn-paneled" id="9112c920">border-left-color</span> <li><span class="dfn-paneled" id="9d7987cb">border-right-color</span> <li><span class="dfn-paneled" id="500f2c1d">border-top-color</span> <li><span class="dfn-paneled" id="6916104d">box-shadow</span> </ul> <li> <a data-link-type="biblio">[CSS-BORDERS-4]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="26b72b18">border-block-end-color</span> <li><span class="dfn-paneled" id="7b5a0ddb">border-block-start-color</span> <li><span class="dfn-paneled" id="60e9c55d">border-inline-end-color</span> <li><span class="dfn-paneled" id="635a5b71">border-inline-start-color</span> </ul> <li> <a data-link-type="biblio">[CSS-BOX-4]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="cbfeec00">margin-bottom</span> <li><span class="dfn-paneled" id="aaf6abed">margin-left</span> <li><span class="dfn-paneled" id="ad065a5c">margin-right</span> <li><span class="dfn-paneled" id="00140718">margin-top</span> <li><span class="dfn-paneled" id="ca62982f">padding-bottom</span> <li><span class="dfn-paneled" id="76207212">padding-left</span> <li><span class="dfn-paneled" id="37c6bd4e">padding-right</span> <li><span class="dfn-paneled" id="49a5f65f">padding-top</span> </ul> <li> <a data-link-type="biblio">[CSS-CASCADE-5]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="4e55d7fb">@import</span> <li><span class="dfn-paneled" id="9cd25054">computed value</span> <li><span class="dfn-paneled" id="a4eb3c57">used value</span> </ul> <li> <a data-link-type="biblio">[CSS-COLOR-4]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="79663d83"><alpha-value></span> <li><span class="dfn-paneled" id="73ea1d43">color</span> </ul> <li> <a data-link-type="biblio">[CSS-COLOR-5]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="1548047a"><color></span> </ul> <li> <a data-link-type="biblio">[CSS-COUNTER-STYLES-3]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="975ace19">CSSCounterStyleRule</span> </ul> <li> <a data-link-type="biblio">[CSS-DISPLAY-4]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="9ee4a8b2">contents</span> <li><span class="dfn-paneled" id="e7f0dd6c">display</span> <li><span class="dfn-paneled" id="55e8f5de">none</span> </ul> <li> <a data-link-type="biblio">[CSS-FONTS-4]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="ba80b0b1"><family-name></span> <li><span class="dfn-paneled" id="e383a138">CSSFontFeatureValuesRule</span> <li><span class="dfn-paneled" id="00d808eb">font-feature-settings</span> <li><span class="dfn-paneled" id="fdf6efd5">font-size</span> <li><span class="dfn-paneled" id="e7cd6f5a">font-stretch</span> <li><span class="dfn-paneled" id="d45afbab">font-style</span> <li><span class="dfn-paneled" id="fb7153bd">font-variant</span> <li><span class="dfn-paneled" id="a8fe91d7">font-weight</span> </ul> <li> <a data-link-type="biblio">[CSS-FONTS-5]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="3ca20be2">CSSFontFaceRule</span> </ul> <li> <a data-link-type="biblio">[CSS-LISTS-3]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="64fba2c3"><counter></span> </ul> <li> <a data-link-type="biblio">[CSS-LOGICAL-1]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="f0c46389">block-size</span> <li><span class="dfn-paneled" id="0fffddd1">inline-size</span> <li><span class="dfn-paneled" id="eb3aa672">logical property group</span> <li><span class="dfn-paneled" id="8ca0e73e">mapping logic</span> <li><span class="dfn-paneled" id="052c1740">margin-block-end</span> <li><span class="dfn-paneled" id="12629b81">margin-block-start</span> <li><span class="dfn-paneled" id="11c5a02b">margin-inline-end</span> <li><span class="dfn-paneled" id="a6e20c61">margin-inline-start</span> <li><span class="dfn-paneled" id="3bdfd276">padding-block-end</span> <li><span class="dfn-paneled" id="5348b29d">padding-block-start</span> <li><span class="dfn-paneled" id="8a0619b3">padding-inline-end</span> <li><span class="dfn-paneled" id="002a383d">padding-inline-start</span> </ul> <li> <a data-link-type="biblio">[CSS-NAMESPACES-3]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="de39d615">default namespace</span> <li><span class="dfn-paneled" id="5ec1baf3">namespace prefix</span> </ul> <li> <a data-link-type="biblio">[CSS-NESTING-1]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="d5dfc6b9">cssRules</span> <li><span class="dfn-paneled" id="f8cc2828">nested declarations rule</span> </ul> <li> <a data-link-type="biblio">[CSS-OVERFLOW-3]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="86928bde">overflow</span> </ul> <li> <a data-link-type="biblio">[CSS-POSITION-3]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="a58a3cd8">bottom</span> <li><span class="dfn-paneled" id="14b92907">inset-block-end</span> <li><span class="dfn-paneled" id="ad49d317">inset-block-start</span> <li><span class="dfn-paneled" id="8c3a081a">inset-inline-end</span> <li><span class="dfn-paneled" id="e9c7fbb8">inset-inline-start</span> <li><span class="dfn-paneled" id="dde41168">left</span> <li><span class="dfn-paneled" id="b0b8d8c0">right</span> <li><span class="dfn-paneled" id="e1483d91">top</span> </ul> <li> <a data-link-type="biblio">[CSS-SCOPING-1]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="c90d9be6">::slotted()</span> <li><span class="dfn-paneled" id="22109b0e">flat tree</span> </ul> <li> <a data-link-type="biblio">[CSS-SHADOW-PARTS-1]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="2988c385">::part()</span> </ul> <li> <a data-link-type="biblio">[CSS-SIZING-3]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="68019d7a">height</span> <li><span class="dfn-paneled" id="88643fe0">width</span> </ul> <li> <a data-link-type="biblio">[CSS-UI-4]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="8e0f26cc">caret-color</span> <li><span class="dfn-paneled" id="7397920e">default</span> <li><span class="dfn-paneled" id="1ee7f091">outline-color</span> </ul> <li> <a data-link-type="biblio">[CSS-VALUES-4]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="3559c926"><angle></span> <li><span class="dfn-paneled" id="29a4aea4"><frequency></span> <li><span class="dfn-paneled" id="70c9f859"><integer></span> <li><span class="dfn-paneled" id="fb030e6c"><length></span> <li><span class="dfn-paneled" id="16310992"><number></span> <li><span class="dfn-paneled" id="15f5b381"><percentage></span> <li><span class="dfn-paneled" id="2de81520"><ratio></span> <li><span class="dfn-paneled" id="1dc65563"><resolution></span> <li><span class="dfn-paneled" id="977d3003"><string></span> <li><span class="dfn-paneled" id="03570f9e"><time></span> <li><span class="dfn-paneled" id="fa293cdd"><url></span> <li><span class="dfn-paneled" id="c8dc22e7">keyword</span> <li><span class="dfn-paneled" id="9ddea951">px</span> <li><span class="dfn-paneled" id="8a82fda1">||</span> </ul> <li> <a data-link-type="biblio">[CSS-VARIABLES-1]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="b5447e8b">custom property</span> </ul> <li> <a data-link-type="biblio">[CSS-VARIABLES-2]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="eb7e3851">guaranteed-invalid value</span> </ul> <li> <a data-link-type="biblio">[CSS21]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="fe1e6dc9"><identifier></span> <li><span class="dfn-paneled" id="3f47ca4a"><shape></span> </ul> <li> <a data-link-type="biblio">[CSS3-CONDITIONAL]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="12432dcb"><supports-condition></span> <li><span class="dfn-paneled" id="cad868ce">CSSMediaRule</span> <li><span class="dfn-paneled" id="2e9d7788">CSSSupportsRule</span> </ul> <li> <a data-link-type="biblio">[CSS3SYN]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="a942934d"><whitespace-token></span> <li><span class="dfn-paneled" id="7e4aa58b">environment encoding</span> <li><span class="dfn-paneled" id="76c4403d">parse</span> <li><span class="dfn-paneled" id="93665f4c">parse a block's contents</span> <li><span class="dfn-paneled" id="569faf4d">parse a list of component values</span> <li><span class="dfn-paneled" id="9bf5ff7b">parse a rule</span> <li><span class="dfn-paneled" id="e92e094f">parse a stylesheet's contents</span> <li><span class="dfn-paneled" id="0f23e505">serialize an <an+b> value</span> </ul> <li> <a data-link-type="biblio">[CSSOM-1]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="7e107ca0">alternate flag</span> <li><span class="dfn-paneled" id="a1d979ac">disabled flag</span> <li><span class="dfn-paneled" id="bbc31c9d">location</span> <li><span class="dfn-paneled" id="512e0279">media</span> <li><span class="dfn-paneled" id="6b116b45">origin-clean flag</span> <li><span class="dfn-paneled" id="99e2a3d1">owner CSS rule</span> <li><span class="dfn-paneled" id="06f8d393">owner node</span> <li><span class="dfn-paneled" id="77d5a8bc">parent CSS style sheet</span> <li><span class="dfn-paneled" id="4c791d15">title</span> <li><span class="dfn-paneled" id="aa155dab">webkit-cased attribute</span> </ul> <li> <a data-link-type="biblio">[DOM]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="85394472">Document</span> <li><span class="dfn-paneled" id="9ac2aadf">DocumentOrShadowRoot</span> <li><span class="dfn-paneled" id="296f3551">Element</span> <li><span class="dfn-paneled" id="c095490e">ProcessingInstruction</span> <li><span class="dfn-paneled" id="d1a6c008">attribute change steps</span> <li><span class="dfn-paneled" id="9638f92b">connected</span> <li><span class="dfn-paneled" id="212ee1f7">data</span> <li><span class="dfn-paneled" id="a84c14c9">document</span> <li><span class="dfn-paneled" id="8d984e64">encoding</span> <li><span class="dfn-paneled" id="6fba6744">following</span> <li><span class="dfn-paneled" id="9bcac82c">get an attribute by namespace and local name</span> <li><span class="dfn-paneled" id="a50a11ab">in a document tree</span> <li><span class="dfn-paneled" id="d462b34f">node</span> <li><span class="dfn-paneled" id="2ef14d2e">nodes</span> <li><span class="dfn-paneled" id="8a3cbc07">set an attribute value</span> <li><span class="dfn-paneled" id="ea2049db">shadow-including root</span> </ul> <li> <a data-link-type="biblio">[ENCODING]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="4fdfba4e">get an encoding</span> </ul> <li> <a data-link-type="biblio">[HTML]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="402ed79d">CEReactions</span> <li><span class="dfn-paneled" id="b08d0bb2">HTMLElement</span> <li><span class="dfn-paneled" id="5d7209e9">Window</span> <li><span class="dfn-paneled" id="3349d69f">associated Document</span> <li><span class="dfn-paneled" id="95e60ae4">base URL</span> <li><span class="dfn-paneled" id="6a73137f">CORS-same-origin</span> <li><span class="dfn-paneled" id="ce3d2bbb">current global object</span> <li><span class="dfn-paneled" id="a72449dd">in parallel</span> <li><span class="dfn-paneled" id="086e3aff">origin</span> <li><span class="dfn-paneled" id="ba920583">style</span> </ul> <li> <a data-link-type="biblio">[INFRA]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="53275e46">append</span> <li><span class="dfn-paneled" id="6f2dfa22">ASCII lowercase</span> <li><span class="dfn-paneled" id="a527e9ca">ASCII uppercase</span> <li><span class="dfn-paneled" id="7b0d918d">break</span> <li><span class="dfn-paneled" id="59912c93">code unit</span> <li><span class="dfn-paneled" id="f937b7b6">continue</span> <li><span class="dfn-paneled" id="16d07e10">for each</span> <li><span class="dfn-paneled" id="649608b9">list</span> <li><span class="dfn-paneled" id="a3fb968a">surrogate</span> </ul> <li> <a data-link-type="biblio">[MathML-Core]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="57376736">MathMLElement</span> </ul> <li> <a data-link-type="biblio">[MEDIAQUERIES]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="333b65e3">color</span> <li><span class="dfn-paneled" id="88481cb9">interlace</span> <li><span class="dfn-paneled" id="45e31baf">landscape</span> <li><span class="dfn-paneled" id="2309227f">portrait</span> <li><span class="dfn-paneled" id="98beee05">progressive</span> </ul> <li> <a data-link-type="biblio">[MEDIAQUERIES-5]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="1fb62f09">media feature</span> <li><span class="dfn-paneled" id="bd3d9ccd">media query</span> <li><span class="dfn-paneled" id="cd31890e">media query list</span> <li><span class="dfn-paneled" id="c93b716b">media type</span> </ul> <li> <a data-link-type="biblio">[SELECTORS-3]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="14048e52">::after</span> <li><span class="dfn-paneled" id="bdad9fe9">::before</span> </ul> <li> <a data-link-type="biblio">[SELECTORS-4]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="ad337600"><pseudo-element-selector></span> <li><span class="dfn-paneled" id="24408a11">compound selector</span> <li><span class="dfn-paneled" id="2fd70eda">simple selector</span> <li><span class="dfn-paneled" id="84540613">universal selector</span> </ul> <li> <a data-link-type="biblio">[SVG2]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="93b034d7">SVGElement</span> </ul> <li> <a data-link-type="biblio">[URL]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="22ece843">absolute-URL string</span> </ul> <li> <a data-link-type="biblio">[WEBIDL]</a> defines the following terms: <ul> <li><span class="dfn-paneled" id="dca2de17">DOMException</span> <li><span class="dfn-paneled" id="8855a9aa">DOMString</span> <li><span class="dfn-paneled" id="889e932f">Exposed</span> <li><span class="dfn-paneled" id="4733bae2">HierarchyRequestError</span> <li><span class="dfn-paneled" id="c9dac9f9">IndexSizeError</span> <li><span class="dfn-paneled" id="797018a7">InvalidStateError</span> <li><span class="dfn-paneled" id="2c4af168">LegacyNullToEmptyString</span> <li><span class="dfn-paneled" id="c807e273">NewObject</span> <li><span class="dfn-paneled" id="45999d1c">NoModificationAllowedError</span> <li><span class="dfn-paneled" id="ba556545">NotAllowedError</span> <li><span class="dfn-paneled" id="9eda9b58">NotFoundError</span> <li><span class="dfn-paneled" id="fe15742e">ObservableArray</span> <li><span class="dfn-paneled" id="bdbd19d1">Promise</span> <li><span class="dfn-paneled" id="21ecf38f">PutForwards</span> <li><span class="dfn-paneled" id="a5c91173">SameObject</span> <li><span class="dfn-paneled" id="c3e881ef">SecurityError</span> <li><span class="dfn-paneled" id="be2d2b4c">SyntaxError</span> <li><span class="dfn-paneled" id="82ca3efc">TypeError</span> <li><span class="dfn-paneled" id="b0d7f3c3">USVString</span> <li><span class="dfn-paneled" id="811df97e">backing list</span> <li><span class="dfn-paneled" id="5372cca8">boolean</span> <li><span class="dfn-paneled" id="053b5fe6">set an indexed value</span> <li><span class="dfn-paneled" id="5f90bbfb">undefined</span> <li><span class="dfn-paneled" id="e97a9688">unsigned long</span> <li><span class="dfn-paneled" id="450958f7">unsigned short</span> </ul> </ul> <h2 class="no-num no-ref heading settled" id="references"><span class="content">References</span><a class="self-link" href="#references"></a></h2> <h3 class="no-num no-ref heading settled" id="normative"><span class="content">Normative References</span><a class="self-link" href="#normative"></a></h3> <dl> <dt id="biblio-css-anchor-position-1">[CSS-ANCHOR-POSITION-1] <dd>Tab Atkins Jr.; Elika Etemad; Ian Kilpatrick. <a href="https://drafts.csswg.org/css-anchor-position-1/"><cite>CSS Anchor Positioning</cite></a>. URL: <a href="https://drafts.csswg.org/css-anchor-position-1/">https://drafts.csswg.org/css-anchor-position-1/</a> <dt id="biblio-css-animations-1">[CSS-ANIMATIONS-1] <dd>David Baron; et al. <a href="https://drafts.csswg.org/css-animations/"><cite>CSS Animations Level 1</cite></a>. URL: <a href="https://drafts.csswg.org/css-animations/">https://drafts.csswg.org/css-animations/</a> <dt id="biblio-css-backgrounds-3">[CSS-BACKGROUNDS-3] <dd>Elika Etemad; Brad Kemper. <a href="https://drafts.csswg.org/css-backgrounds/"><cite>CSS Backgrounds and Borders Module Level 3</cite></a>. URL: <a href="https://drafts.csswg.org/css-backgrounds/">https://drafts.csswg.org/css-backgrounds/</a> <dt id="biblio-css-borders-4">[CSS-BORDERS-4] <dd><a href="https://drafts.csswg.org/css-borders-4/"><cite>CSS Borders and Box Decorations Module Level 4</cite></a>. Editor's Draft. URL: <a href="https://drafts.csswg.org/css-borders-4/">https://drafts.csswg.org/css-borders-4/</a> <dt id="biblio-css-box-4">[CSS-BOX-4] <dd>Elika Etemad. <a href="https://drafts.csswg.org/css-box-4/"><cite>CSS Box Model Module Level 4</cite></a>. URL: <a href="https://drafts.csswg.org/css-box-4/">https://drafts.csswg.org/css-box-4/</a> <dt id="biblio-css-cascade-5">[CSS-CASCADE-5] <dd>Elika Etemad; Miriam Suzanne; Tab Atkins Jr.. <a href="https://drafts.csswg.org/css-cascade-5/"><cite>CSS Cascading and Inheritance Level 5</cite></a>. URL: <a href="https://drafts.csswg.org/css-cascade-5/">https://drafts.csswg.org/css-cascade-5/</a> <dt id="biblio-css-color-4">[CSS-COLOR-4] <dd>Chris Lilley; Tab Atkins Jr.; Lea Verou. <a href="https://drafts.csswg.org/css-color-4/"><cite>CSS Color Module Level 4</cite></a>. URL: <a href="https://drafts.csswg.org/css-color-4/">https://drafts.csswg.org/css-color-4/</a> <dt id="biblio-css-color-5">[CSS-COLOR-5] <dd>Chris Lilley; et al. <a href="https://drafts.csswg.org/css-color-5/"><cite>CSS Color Module Level 5</cite></a>. URL: <a href="https://drafts.csswg.org/css-color-5/">https://drafts.csswg.org/css-color-5/</a> <dt id="biblio-css-counter-styles-3">[CSS-COUNTER-STYLES-3] <dd>Tab Atkins Jr.. <a href="https://drafts.csswg.org/css-counter-styles/"><cite>CSS Counter Styles Level 3</cite></a>. URL: <a href="https://drafts.csswg.org/css-counter-styles/">https://drafts.csswg.org/css-counter-styles/</a> <dt id="biblio-css-display-4">[CSS-DISPLAY-4] <dd>Elika Etemad; Tab Atkins Jr.. <a href="https://drafts.csswg.org/css-display/"><cite>CSS Display Module Level 4</cite></a>. URL: <a href="https://drafts.csswg.org/css-display/">https://drafts.csswg.org/css-display/</a> <dt id="biblio-css-fonts-4">[CSS-FONTS-4] <dd>Chris Lilley. <a href="https://drafts.csswg.org/css-fonts-4/"><cite>CSS Fonts Module Level 4</cite></a>. URL: <a href="https://drafts.csswg.org/css-fonts-4/">https://drafts.csswg.org/css-fonts-4/</a> <dt id="biblio-css-fonts-5">[CSS-FONTS-5] <dd>Chris Lilley. <a href="https://drafts.csswg.org/css-fonts-5/"><cite>CSS Fonts Module Level 5</cite></a>. URL: <a href="https://drafts.csswg.org/css-fonts-5/">https://drafts.csswg.org/css-fonts-5/</a> <dt id="biblio-css-lists-3">[CSS-LISTS-3] <dd>Elika Etemad; Tab Atkins Jr.. <a href="https://drafts.csswg.org/css-lists-3/"><cite>CSS Lists and Counters Module Level 3</cite></a>. URL: <a href="https://drafts.csswg.org/css-lists-3/">https://drafts.csswg.org/css-lists-3/</a> <dt id="biblio-css-logical-1">[CSS-LOGICAL-1] <dd>Rossen Atanassov; Elika Etemad. <a href="https://drafts.csswg.org/css-logical-1/"><cite>CSS Logical Properties and Values Level 1</cite></a>. URL: <a href="https://drafts.csswg.org/css-logical-1/">https://drafts.csswg.org/css-logical-1/</a> <dt id="biblio-css-namespaces-3">[CSS-NAMESPACES-3] <dd>Elika Etemad. <a href="https://drafts.csswg.org/css-namespaces/"><cite>CSS Namespaces Module Level 3</cite></a>. URL: <a href="https://drafts.csswg.org/css-namespaces/">https://drafts.csswg.org/css-namespaces/</a> <dt id="biblio-css-nesting-1">[CSS-NESTING-1] <dd>Tab Atkins Jr.; Adam Argyle. <a href="https://drafts.csswg.org/css-nesting/"><cite>CSS Nesting Module</cite></a>. URL: <a href="https://drafts.csswg.org/css-nesting/">https://drafts.csswg.org/css-nesting/</a> <dt id="biblio-css-overflow-3">[CSS-OVERFLOW-3] <dd>Elika Etemad; Florian Rivoal. <a href="https://drafts.csswg.org/css-overflow-3/"><cite>CSS Overflow Module Level 3</cite></a>. URL: <a href="https://drafts.csswg.org/css-overflow-3/">https://drafts.csswg.org/css-overflow-3/</a> <dt id="biblio-css-position-3">[CSS-POSITION-3] <dd>Elika Etemad; Tab Atkins Jr.. <a href="https://drafts.csswg.org/css-position-3/"><cite>CSS Positioned Layout Module Level 3</cite></a>. URL: <a href="https://drafts.csswg.org/css-position-3/">https://drafts.csswg.org/css-position-3/</a> <dt id="biblio-css-scoping-1">[CSS-SCOPING-1] <dd>Tab Atkins Jr.; Elika Etemad. <a href="https://drafts.csswg.org/css-scoping/"><cite>CSS Scoping Module Level 1</cite></a>. URL: <a href="https://drafts.csswg.org/css-scoping/">https://drafts.csswg.org/css-scoping/</a> <dt id="biblio-css-shadow-parts-1">[CSS-SHADOW-PARTS-1] <dd>Tab Atkins Jr.; Fergal Daly. <a href="https://drafts.csswg.org/css-shadow-parts/"><cite>CSS Shadow Parts</cite></a>. URL: <a href="https://drafts.csswg.org/css-shadow-parts/">https://drafts.csswg.org/css-shadow-parts/</a> <dt id="biblio-css-sizing-3">[CSS-SIZING-3] <dd>Tab Atkins Jr.; Elika Etemad. <a href="https://drafts.csswg.org/css-sizing-3/"><cite>CSS Box Sizing Module Level 3</cite></a>. URL: <a href="https://drafts.csswg.org/css-sizing-3/">https://drafts.csswg.org/css-sizing-3/</a> <dt id="biblio-css-ui-4">[CSS-UI-4] <dd>Florian Rivoal. <a href="https://drafts.csswg.org/css-ui-4/"><cite>CSS Basic User Interface Module Level 4</cite></a>. URL: <a href="https://drafts.csswg.org/css-ui-4/">https://drafts.csswg.org/css-ui-4/</a> <dt id="biblio-css-values-4">[CSS-VALUES-4] <dd>Tab Atkins Jr.; Elika Etemad. <a href="https://drafts.csswg.org/css-values-4/"><cite>CSS Values and Units Module Level 4</cite></a>. URL: <a href="https://drafts.csswg.org/css-values-4/">https://drafts.csswg.org/css-values-4/</a> <dt id="biblio-css-variables-1">[CSS-VARIABLES-1] <dd>Tab Atkins Jr.. <a href="https://drafts.csswg.org/css-variables/"><cite>CSS Custom Properties for Cascading Variables Module Level 1</cite></a>. URL: <a href="https://drafts.csswg.org/css-variables/">https://drafts.csswg.org/css-variables/</a> <dt id="biblio-css-variables-2">[CSS-VARIABLES-2] <dd><a href="https://drafts.csswg.org/css-variables-2/"><cite>CSS Custom Properties for Cascading Variables Module Level 2</cite></a>. Editor's Draft. URL: <a href="https://drafts.csswg.org/css-variables-2/">https://drafts.csswg.org/css-variables-2/</a> <dt id="biblio-css21">[CSS21] <dd>Bert Bos; et al. <a href="https://drafts.csswg.org/css2/"><cite>Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification</cite></a>. URL: <a href="https://drafts.csswg.org/css2/">https://drafts.csswg.org/css2/</a> <dt id="biblio-css3-conditional">[CSS3-CONDITIONAL] <dd>Chris Lilley; David Baron; Elika Etemad. <a href="https://drafts.csswg.org/css-conditional-3/"><cite>CSS Conditional Rules Module Level 3</cite></a>. URL: <a href="https://drafts.csswg.org/css-conditional-3/">https://drafts.csswg.org/css-conditional-3/</a> <dt id="biblio-css3cascade">[CSS3CASCADE] <dd>Elika Etemad; Tab Atkins Jr.. <a href="https://drafts.csswg.org/css-cascade-3/"><cite>CSS Cascading and Inheritance Level 3</cite></a>. URL: <a href="https://drafts.csswg.org/css-cascade-3/">https://drafts.csswg.org/css-cascade-3/</a> <dt id="biblio-css3page">[CSS3PAGE] <dd>Elika Etemad. <a href="https://drafts.csswg.org/css-page-3/"><cite>CSS Paged Media Module Level 3</cite></a>. URL: <a href="https://drafts.csswg.org/css-page-3/">https://drafts.csswg.org/css-page-3/</a> <dt id="biblio-css3syn">[CSS3SYN] <dd>Tab Atkins Jr.; Simon Sapin. <a href="https://drafts.csswg.org/css-syntax/"><cite>CSS Syntax Module Level 3</cite></a>. URL: <a href="https://drafts.csswg.org/css-syntax/">https://drafts.csswg.org/css-syntax/</a> <dt id="biblio-cssom-1">[CSSOM-1] <dd>Daniel Glazman; Emilio Cobos Álvarez. <a href="https://drafts.csswg.org/cssom/"><cite>CSS Object Model (CSSOM)</cite></a>. URL: <a href="https://drafts.csswg.org/cssom/">https://drafts.csswg.org/cssom/</a> <dt id="biblio-dom">[DOM] <dd>Anne van Kesteren. <a href="https://dom.spec.whatwg.org/"><cite>DOM Standard</cite></a>. Living Standard. URL: <a href="https://dom.spec.whatwg.org/">https://dom.spec.whatwg.org/</a> <dt id="biblio-encoding">[ENCODING] <dd>Anne van Kesteren. <a href="https://encoding.spec.whatwg.org/"><cite>Encoding Standard</cite></a>. Living Standard. URL: <a href="https://encoding.spec.whatwg.org/">https://encoding.spec.whatwg.org/</a> <dt id="biblio-fetch">[FETCH] <dd>Anne van Kesteren. <a href="https://fetch.spec.whatwg.org/"><cite>Fetch Standard</cite></a>. Living Standard. URL: <a href="https://fetch.spec.whatwg.org/">https://fetch.spec.whatwg.org/</a> <dt id="biblio-html">[HTML] <dd>Anne van Kesteren; et al. <a href="https://html.spec.whatwg.org/multipage/"><cite>HTML Standard</cite></a>. Living Standard. URL: <a href="https://html.spec.whatwg.org/multipage/">https://html.spec.whatwg.org/multipage/</a> <dt id="biblio-infra">[INFRA] <dd>Anne van Kesteren; Domenic Denicola. <a href="https://infra.spec.whatwg.org/"><cite>Infra Standard</cite></a>. Living Standard. URL: <a href="https://infra.spec.whatwg.org/">https://infra.spec.whatwg.org/</a> <dt id="biblio-mathml-core">[MathML-Core] <dd>David Carlisle; Frédéric Wang. <a href="https://w3c.github.io/mathml-core/"><cite>MathML Core</cite></a>. URL: <a href="https://w3c.github.io/mathml-core/">https://w3c.github.io/mathml-core/</a> <dt id="biblio-mediaqueries">[MEDIAQUERIES] <dd>Florian Rivoal; Tab Atkins Jr.. <a href="https://drafts.csswg.org/mediaqueries-4/"><cite>Media Queries Level 4</cite></a>. URL: <a href="https://drafts.csswg.org/mediaqueries-4/">https://drafts.csswg.org/mediaqueries-4/</a> <dt id="biblio-mediaqueries-5">[MEDIAQUERIES-5] <dd>Dean Jackson; et al. <a href="https://drafts.csswg.org/mediaqueries-5/"><cite>Media Queries Level 5</cite></a>. URL: <a href="https://drafts.csswg.org/mediaqueries-5/">https://drafts.csswg.org/mediaqueries-5/</a> <dt id="biblio-rfc2119">[RFC2119] <dd>S. Bradner. <a href="https://datatracker.ietf.org/doc/html/rfc2119"><cite>Key words for use in RFCs to Indicate Requirement Levels</cite></a>. March 1997. Best Current Practice. URL: <a href="https://datatracker.ietf.org/doc/html/rfc2119">https://datatracker.ietf.org/doc/html/rfc2119</a> <dt id="biblio-selectors-3">[SELECTORS-3] <dd>Tantek Çelik; et al. <a href="https://drafts.csswg.org/selectors-3/"><cite>Selectors Level 3</cite></a>. URL: <a href="https://drafts.csswg.org/selectors-3/">https://drafts.csswg.org/selectors-3/</a> <dt id="biblio-selectors-4">[SELECTORS-4] <dd>Elika Etemad; Tab Atkins Jr.. <a href="https://drafts.csswg.org/selectors/"><cite>Selectors Level 4</cite></a>. URL: <a href="https://drafts.csswg.org/selectors/">https://drafts.csswg.org/selectors/</a> <dt id="biblio-svg2">[SVG2] <dd>Amelia Bellamy-Royds; et al. <a href="https://svgwg.org/svg2-draft/"><cite>Scalable Vector Graphics (SVG) 2</cite></a>. URL: <a href="https://svgwg.org/svg2-draft/">https://svgwg.org/svg2-draft/</a> <dt id="biblio-url">[URL] <dd>Anne van Kesteren. <a href="https://url.spec.whatwg.org/"><cite>URL Standard</cite></a>. Living Standard. URL: <a href="https://url.spec.whatwg.org/">https://url.spec.whatwg.org/</a> <dt id="biblio-webidl">[WEBIDL] <dd>Edgar Chen; Timothy Gu. <a href="https://webidl.spec.whatwg.org/"><cite>Web IDL Standard</cite></a>. Living Standard. URL: <a href="https://webidl.spec.whatwg.org/">https://webidl.spec.whatwg.org/</a> <dt id="biblio-xml">[XML] <dd>Tim Bray; et al. <a href="https://www.w3.org/TR/xml/"><cite>Extensible Markup Language (XML) 1.0 (Fifth Edition)</cite></a>. 26 November 2008. REC. URL: <a href="https://www.w3.org/TR/xml/">https://www.w3.org/TR/xml/</a> <dt id="biblio-xml-stylesheet">[XML-STYLESHEET] <dd>James Clark; Simon Pieters; Henry Thompson. <a href="https://www.w3.org/TR/xml-stylesheet/"><cite>Associating Style Sheets with XML documents 1.0 (Second Edition)</cite></a>. 28 October 2010. REC. URL: <a href="https://www.w3.org/TR/xml-stylesheet/">https://www.w3.org/TR/xml-stylesheet/</a> </dl> <h3 class="no-num no-ref heading settled" id="informative"><span class="content">Informative References</span><a class="self-link" href="#informative"></a></h3> <dl> <dt id="biblio-compat">[COMPAT] <dd>Mike Taylor. <a href="https://compat.spec.whatwg.org/"><cite>Compatibility Standard</cite></a>. Living Standard. URL: <a href="https://compat.spec.whatwg.org/">https://compat.spec.whatwg.org/</a> <dt id="biblio-svg11">[SVG11] <dd>Erik Dahlström; et al. <a href="https://www.w3.org/TR/SVG11/"><cite>Scalable Vector Graphics (SVG) 1.1 (Second Edition)</cite></a>. 16 August 2011. REC. URL: <a href="https://www.w3.org/TR/SVG11/">https://www.w3.org/TR/SVG11/</a> </dl> <h2 class="no-num no-ref heading settled" id="idl-index"><span class="content">IDL Index</span><a class="self-link" href="#idl-index"></a></h2> <pre class="idl highlight def">[<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <a href="#medialist"><code><c- g>MediaList</c-></code></a> { <a href="#MediaList-stringification-behavior"><c- b>stringifier</c-></a> <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-type="CSSOMString" href="#dom-medialist-mediatext"><c- g>mediaText</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="unsigned long" href="#dom-medialist-length"><c- g>length</c-></a>; <c- b>getter</c-> <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a>? <a class="idl-code" data-link-type="method" href="#dom-medialist-item"><c- g>item</c-></a>(<a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a href="#dom-medialist-item-index-index"><code><c- g>index</c-></code></a>); <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-undefined"><c- b>undefined</c-></a> <a class="idl-code" data-link-type="method" href="#dom-medialist-appendmedium"><c- g>appendMedium</c-></a>(<a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a href="#dom-medialist-appendmedium-medium-medium"><code><c- g>medium</c-></code></a>); <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-undefined"><c- b>undefined</c-></a> <a class="idl-code" data-link-type="method" href="#dom-medialist-deletemedium"><c- g>deleteMedium</c-></a>(<a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a href="#dom-medialist-deletemedium-medium-medium"><code><c- g>medium</c-></code></a>); }; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <a href="#stylesheet"><code><c- g>StyleSheet</c-></code></a> { <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSOMString" href="#dom-stylesheet-type"><c- g>type</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-USVString"><c- b>USVString</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="USVString?" href="#dom-stylesheet-href"><c- g>href</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> (<a data-link-type="idl-name" href="https://dom.spec.whatwg.org/#element"><c- n>Element</c-></a> <c- b>or</c-> <a data-link-type="idl-name" href="https://dom.spec.whatwg.org/#processinginstruction"><c- n>ProcessingInstruction</c-></a>)? <a class="idl-code" data-link-type="attribute" data-readonly data-type="(Element or ProcessingInstruction)?" href="#dom-stylesheet-ownernode"><c- g>ownerNode</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssstylesheet"><c- n>CSSStyleSheet</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSStyleSheet?" href="#dom-stylesheet-parentstylesheet"><c- g>parentStyleSheet</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-DOMString"><c- b>DOMString</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="DOMString?" href="#dom-stylesheet-title"><c- g>title</c-></a>; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject"><c- g>SameObject</c-></a>, <a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#PutForwards"><c- g>PutForwards</c-></a>=<a class="idl-code" data-link-type="attribute" href="#dom-medialist-mediatext"><c- n>mediaText</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#medialist"><c- n>MediaList</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="MediaList" href="#dom-stylesheet-media"><c- g>media</c-></a>; <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-boolean"><c- b>boolean</c-></a> <a class="idl-code" data-link-type="attribute" data-type="boolean" href="#dom-stylesheet-disabled"><c- g>disabled</c-></a>; }; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <a href="#cssstylesheet"><code><c- g>CSSStyleSheet</c-></code></a> : <a data-link-type="idl-name" href="#stylesheet"><c- n>StyleSheet</c-></a> { <a class="idl-code" data-link-type="constructor" href="#dom-cssstylesheet-cssstylesheet"><c- g>constructor</c-></a>(<c- b>optional</c-> <a data-link-type="idl-name" href="#dictdef-cssstylesheetinit"><c- n>CSSStyleSheetInit</c-></a> <a href="#dom-cssstylesheet-cssstylesheet-options-options"><code><c- g>options</c-></code></a> = {}); <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssrule"><c- n>CSSRule</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSRule?" href="#dom-cssstylesheet-ownerrule"><c- g>ownerRule</c-></a>; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject"><c- g>SameObject</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssrulelist"><c- n>CSSRuleList</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSRuleList" href="#dom-cssstylesheet-cssrules"><c- g>cssRules</c-></a>; <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstylesheet-insertrule"><c- g>insertRule</c-></a>(<a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a href="#dom-cssstylesheet-insertrule-rule-index-rule"><code><c- g>rule</c-></code></a>, <c- b>optional</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a href="#dom-cssstylesheet-insertrule-rule-index-index"><code><c- g>index</c-></code></a> = 0); <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-undefined"><c- b>undefined</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstylesheet-deleterule"><c- g>deleteRule</c-></a>(<a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a href="#dom-cssstylesheet-deleterule-index-index"><code><c- g>index</c-></code></a>); <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-promise"><c- b>Promise</c-></a><<a data-link-type="idl-name" href="#cssstylesheet"><c- n>CSSStyleSheet</c-></a>> <a class="idl-code" data-link-type="method" href="#dom-cssstylesheet-replace"><c- g>replace</c-></a>(<a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-USVString"><c- b>USVString</c-></a> <a href="#dom-cssstylesheet-replace-text-text"><code><c- g>text</c-></code></a>); <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-undefined"><c- b>undefined</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstylesheet-replacesync"><c- g>replaceSync</c-></a>(<a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-USVString"><c- b>USVString</c-></a> <a href="#dom-cssstylesheet-replacesync-text-text"><code><c- g>text</c-></code></a>); }; <c- b>dictionary</c-> <a href="#dictdef-cssstylesheetinit"><code><c- g>CSSStyleSheetInit</c-></code></a> { <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-DOMString"><c- b>DOMString</c-></a> <a data-default="null" data-type="DOMString" href="#dom-cssstylesheetinit-baseurl"><code><c- g>baseURL</c-></code></a> = <c- b>null</c->; (<a data-link-type="idl-name" href="#medialist"><c- n>MediaList</c-></a> <c- b>or</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-DOMString"><c- b>DOMString</c-></a>) <a data-default="""" data-type="(MediaList or DOMString)" href="#dom-cssstylesheetinit-media"><code><c- g>media</c-></code></a> = ""; <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-boolean"><c- b>boolean</c-></a> <a data-default="false" data-type="boolean" href="#dom-cssstylesheetinit-disabled"><code><c- g>disabled</c-></code></a> = <c- b>false</c->; }; <c- b>partial</c-> <c- b>interface</c-> <a class="idl-code" data-link-type="interface" href="#cssstylesheet"><c- g>CSSStyleSheet</c-></a> { [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject"><c- g>SameObject</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssrulelist"><c- n>CSSRuleList</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSRuleList" href="#dom-cssstylesheet-rules"><c- g>rules</c-></a>; <a class="idl-code" data-link-type="interface" href="http://heycam.github.io/webidl/#idl-long"><c- b>long</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstylesheet-addrule"><c- g>addRule</c-></a>(<c- b>optional</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-DOMString"><c- b>DOMString</c-></a> <a href="#dom-cssstylesheet-addrule-selector-style-index-selector"><code><c- g>selector</c-></code></a> = "undefined", <c- b>optional</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-DOMString"><c- b>DOMString</c-></a> <a href="#dom-cssstylesheet-addrule-selector-style-index-style"><code><c- g>style</c-></code></a> = "undefined", <c- b>optional</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a href="#dom-cssstylesheet-addrule-selector-style-index-index"><code><c- g>index</c-></code></a>); <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-undefined"><c- b>undefined</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstylesheet-removerule"><c- g>removeRule</c-></a>(<c- b>optional</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a href="#dom-cssstylesheet-removerule-index-index"><code><c- g>index</c-></code></a> = 0); }; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <a href="#stylesheetlist"><code><c- g>StyleSheetList</c-></code></a> { <c- b>getter</c-> <a data-link-type="idl-name" href="#cssstylesheet"><c- n>CSSStyleSheet</c-></a>? <a class="idl-code" data-link-type="method" href="#dom-stylesheetlist-item"><c- g>item</c-></a>(<a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a href="#dom-stylesheetlist-item-index-index"><code><c- g>index</c-></code></a>); <c- b>readonly</c-> <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="unsigned long" href="#dom-stylesheetlist-length"><c- g>length</c-></a>; }; <c- b>partial</c-> <c- b>interface</c-> <c- b>mixin</c-> <a class="idl-code" data-link-type="interface" href="https://dom.spec.whatwg.org/#documentorshadowroot"><c- g>DocumentOrShadowRoot</c-></a> { [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject"><c- g>SameObject</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#stylesheetlist"><c- n>StyleSheetList</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="StyleSheetList" href="#dom-documentorshadowroot-stylesheets"><c- g>styleSheets</c-></a>; <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-observable-array"><c- b>ObservableArray</c-></a><<a data-link-type="idl-name" href="#cssstylesheet"><c- n>CSSStyleSheet</c-></a>> <a class="idl-code" data-link-type="attribute" data-type="ObservableArray<CSSStyleSheet>" href="#dom-documentorshadowroot-adoptedstylesheets"><c- g>adoptedStyleSheets</c-></a>; }; <c- b>interface</c-> <c- b>mixin</c-> <a href="#linkstyle"><code><c- g>LinkStyle</c-></code></a> { <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssstylesheet"><c- n>CSSStyleSheet</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSStyleSheet?" href="#dom-linkstyle-sheet"><c- g>sheet</c-></a>; }; <a data-link-type="idl-name" href="https://dom.spec.whatwg.org/#processinginstruction"><c- n>ProcessingInstruction</c-></a> <c- b>includes</c-> <a data-link-type="idl-name" href="#linkstyle"><c- n>LinkStyle</c-></a>; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <a href="#cssrulelist"><code><c- g>CSSRuleList</c-></code></a> { <c- b>getter</c-> <a data-link-type="idl-name" href="#cssrule"><c- n>CSSRule</c-></a>? <a class="idl-code" data-link-type="method" href="#dom-cssrulelist-item"><c- g>item</c-></a>(<a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a href="#dom-cssrulelist-item-index-index"><code><c- g>index</c-></code></a>); <c- b>readonly</c-> <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="unsigned long" href="#dom-cssrulelist-length"><c- g>length</c-></a>; }; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <a href="#cssrule"><code><c- g>CSSRule</c-></code></a> { <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-type="CSSOMString" href="#dom-cssrule-csstext"><c- g>cssText</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssrule"><c- n>CSSRule</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSRule?" href="#dom-cssrule-parentrule"><c- g>parentRule</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssstylesheet"><c- n>CSSStyleSheet</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSStyleSheet?" href="#dom-cssrule-parentstylesheet"><c- g>parentStyleSheet</c-></a>; // the following attribute and constants are historical <c- b>readonly</c-> <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short"><c- b>unsigned</c-> <c- b>short</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="unsigned short" href="#dom-cssrule-type"><c- g>type</c-></a>; <c- b>const</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short"><c- b>unsigned</c-> <c- b>short</c-></a> <a href="#dom-cssrule-style_rule"><code><c- g>STYLE_RULE</c-></code></a> = 1; <c- b>const</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short"><c- b>unsigned</c-> <c- b>short</c-></a> <a href="#dom-cssrule-charset_rule"><code><c- g>CHARSET_RULE</c-></code></a> = 2; <c- b>const</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short"><c- b>unsigned</c-> <c- b>short</c-></a> <a href="#dom-cssrule-import_rule"><code><c- g>IMPORT_RULE</c-></code></a> = 3; <c- b>const</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short"><c- b>unsigned</c-> <c- b>short</c-></a> <a href="#dom-cssrule-media_rule"><code><c- g>MEDIA_RULE</c-></code></a> = 4; <c- b>const</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short"><c- b>unsigned</c-> <c- b>short</c-></a> <a href="#dom-cssrule-font_face_rule"><code><c- g>FONT_FACE_RULE</c-></code></a> = 5; <c- b>const</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short"><c- b>unsigned</c-> <c- b>short</c-></a> <a href="#dom-cssrule-page_rule"><code><c- g>PAGE_RULE</c-></code></a> = 6; <c- b>const</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short"><c- b>unsigned</c-> <c- b>short</c-></a> <a href="#dom-cssrule-margin_rule"><code><c- g>MARGIN_RULE</c-></code></a> = 9; <c- b>const</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-short"><c- b>unsigned</c-> <c- b>short</c-></a> <a href="#dom-cssrule-namespace_rule"><code><c- g>NAMESPACE_RULE</c-></code></a> = 10; }; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <a href="#cssstylerule"><code><c- g>CSSStyleRule</c-></code></a> : <a data-link-type="idl-name" href="#cssgroupingrule"><c- n>CSSGroupingRule</c-></a> { <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-type="CSSOMString" href="#dom-cssstylerule-selectortext"><c- g>selectorText</c-></a>; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject"><c- g>SameObject</c-></a>, <a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#PutForwards"><c- g>PutForwards</c-></a>=<a class="idl-code" data-link-type="attribute"><c- n>cssText</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssstyleproperties"><c- n>CSSStyleProperties</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSStyleProperties" href="#dom-cssstylerule-style"><c- g>style</c-></a>; }; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <a href="#cssimportrule"><code><c- g>CSSImportRule</c-></code></a> : <a data-link-type="idl-name" href="#cssrule"><c- n>CSSRule</c-></a> { <c- b>readonly</c-> <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-USVString"><c- b>USVString</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="USVString" href="#dom-cssimportrule-href"><c- g>href</c-></a>; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject"><c- g>SameObject</c-></a>, <a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#PutForwards"><c- g>PutForwards</c-></a>=<a class="idl-code" data-link-type="attribute" href="#dom-medialist-mediatext"><c- n>mediaText</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#medialist"><c- n>MediaList</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="MediaList" href="#dom-cssimportrule-media"><c- g>media</c-></a>; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject"><c- g>SameObject</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssstylesheet"><c- n>CSSStyleSheet</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSStyleSheet?" href="#dom-cssimportrule-stylesheet"><c- g>styleSheet</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSOMString?" href="#dom-cssimportrule-layername"><c- g>layerName</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSOMString?" href="#dom-cssimportrule-supportstext"><c- g>supportsText</c-></a>; }; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <a href="#cssgroupingrule"><code><c- g>CSSGroupingRule</c-></code></a> : <a data-link-type="idl-name" href="#cssrule"><c- n>CSSRule</c-></a> { [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject"><c- g>SameObject</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssrulelist"><c- n>CSSRuleList</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSRuleList" href="#dom-cssgroupingrule-cssrules"><c- g>cssRules</c-></a>; <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssgroupingrule-insertrule"><c- g>insertRule</c-></a>(<a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a href="#dom-cssgroupingrule-insertrule-rule-index-rule"><code><c- g>rule</c-></code></a>, <c- b>optional</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a href="#dom-cssgroupingrule-insertrule-rule-index-index"><code><c- g>index</c-></code></a> = 0); <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-undefined"><c- b>undefined</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssgroupingrule-deleterule"><c- g>deleteRule</c-></a>(<a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a href="#dom-cssgroupingrule-deleterule-index-index"><code><c- g>index</c-></code></a>); }; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <a href="#csspagedescriptors"><code><c- g>CSSPageDescriptors</c-></code></a> : <a data-link-type="idl-name" href="#cssstyledeclaration"><c- n>CSSStyleDeclaration</c-></a> { <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a data-type="CSSOMString" href="#dom-csspagedescriptors-margin"><code><c- g>margin</c-></code></a>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a data-type="CSSOMString" href="#dom-csspagedescriptors-margintop"><code><c- g>marginTop</c-></code></a>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a data-type="CSSOMString" href="#dom-csspagedescriptors-marginright"><code><c- g>marginRight</c-></code></a>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a data-type="CSSOMString" href="#dom-csspagedescriptors-marginbottom"><code><c- g>marginBottom</c-></code></a>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a data-type="CSSOMString" href="#dom-csspagedescriptors-marginleft"><code><c- g>marginLeft</c-></code></a>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a data-type="CSSOMString" href="#dom-csspagedescriptors-margin-top"><code><c- g>margin-top</c-></code></a>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a data-type="CSSOMString" href="#dom-csspagedescriptors-margin-right"><code><c- g>margin-right</c-></code></a>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a data-type="CSSOMString" href="#dom-csspagedescriptors-margin-bottom"><code><c- g>margin-bottom</c-></code></a>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a data-type="CSSOMString" href="#dom-csspagedescriptors-margin-left"><code><c- g>margin-left</c-></code></a>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a data-type="CSSOMString" href="#dom-csspagedescriptors-size"><code><c- g>size</c-></code></a>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a data-type="CSSOMString" href="#dom-csspagedescriptors-pageorientation"><code><c- g>pageOrientation</c-></code></a>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a data-type="CSSOMString" href="#dom-csspagedescriptors-page-orientation"><code><c- g>page-orientation</c-></code></a>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a data-type="CSSOMString" href="#dom-csspagedescriptors-marks"><code><c- g>marks</c-></code></a>; <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a data-type="CSSOMString" href="#dom-csspagedescriptors-bleed"><code><c- g>bleed</c-></code></a>; }; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <a href="#csspagerule"><code><c- g>CSSPageRule</c-></code></a> : <a data-link-type="idl-name" href="#cssgroupingrule"><c- n>CSSGroupingRule</c-></a> { <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-type="CSSOMString" href="#dom-csspagerule-selectortext"><c- g>selectorText</c-></a>; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject"><c- g>SameObject</c-></a>, <a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#PutForwards"><c- g>PutForwards</c-></a>=<a class="idl-code" data-link-type="attribute"><c- n>cssText</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#csspagedescriptors"><c- n>CSSPageDescriptors</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSPageDescriptors" href="#dom-csspagerule-style"><c- g>style</c-></a>; }; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <a href="#cssmarginrule"><code><c- g>CSSMarginRule</c-></code></a> : <a data-link-type="idl-name" href="#cssrule"><c- n>CSSRule</c-></a> { <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSOMString" href="#dom-cssmarginrule-name"><c- g>name</c-></a>; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject"><c- g>SameObject</c-></a>, <a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#PutForwards"><c- g>PutForwards</c-></a>=<a class="idl-code" data-link-type="attribute"><c- n>cssText</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name"><c- n>CSSMarginDescriptors</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSMarginDescriptors" href="#dom-cssmarginrule-style"><c- g>style</c-></a>; }; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <a href="#cssnamespacerule"><code><c- g>CSSNamespaceRule</c-></code></a> : <a data-link-type="idl-name" href="#cssrule"><c- n>CSSRule</c-></a> { <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSOMString" href="#dom-cssnamespacerule-namespaceuri"><c- g>namespaceURI</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSOMString" href="#dom-cssnamespacerule-prefix"><c- g>prefix</c-></a>; }; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <a href="#cssstyledeclaration"><code><c- g>CSSStyleDeclaration</c-></code></a> { [<a class="idl-code" data-link-type="extended-attribute" href="https://html.spec.whatwg.org/multipage/custom-elements.html#cereactions"><c- g>CEReactions</c-></a>] <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-type="CSSOMString" href="#dom-cssstyledeclaration-csstext"><c- g>cssText</c-></a>; <c- b>readonly</c-> <c- b>attribute</c-> <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="unsigned long" href="#dom-cssstyledeclaration-length"><c- g>length</c-></a>; <c- b>getter</c-> <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstyledeclaration-item"><c- g>item</c-></a>(<a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-unsigned-long"><c- b>unsigned</c-> <c- b>long</c-></a> <a href="#dom-cssstyledeclaration-item-index-index"><code><c- g>index</c-></code></a>); <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstyledeclaration-getpropertyvalue"><c- g>getPropertyValue</c-></a>(<a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a href="#dom-cssstyledeclaration-getpropertyvalue-property-property"><code><c- g>property</c-></code></a>); <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstyledeclaration-getpropertypriority"><c- g>getPropertyPriority</c-></a>(<a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a href="#dom-cssstyledeclaration-getpropertypriority-property-property"><code><c- g>property</c-></code></a>); [<a class="idl-code" data-link-type="extended-attribute" href="https://html.spec.whatwg.org/multipage/custom-elements.html#cereactions"><c- g>CEReactions</c-></a>] <a class="idl-code" data-link-type="interface" href="https://webidl.spec.whatwg.org/#idl-undefined"><c- b>undefined</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstyledeclaration-setproperty"><c- g>setProperty</c-></a>(<a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a href="#dom-cssstyledeclaration-setproperty-property-value-priority-property"><code><c- g>property</c-></code></a>, [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a href="#dom-cssstyledeclaration-setproperty-property-value-priority-value"><code><c- g>value</c-></code></a>, <c- b>optional</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a href="#dom-cssstyledeclaration-setproperty-property-value-priority-priority"><code><c- g>priority</c-></code></a> = ""); [<a class="idl-code" data-link-type="extended-attribute" href="https://html.spec.whatwg.org/multipage/custom-elements.html#cereactions"><c- g>CEReactions</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="method" href="#dom-cssstyledeclaration-removeproperty"><c- g>removeProperty</c-></a>(<a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a href="#dom-cssstyledeclaration-removeproperty-property-property"><code><c- g>property</c-></code></a>); <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssrule"><c- n>CSSRule</c-></a>? <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSRule?" href="#dom-cssstyledeclaration-parentrule"><c- g>parentRule</c-></a>; }; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>interface</c-> <a href="#cssstyleproperties"><code><c- g>CSSStyleProperties</c-></code></a> : <a data-link-type="idl-name" href="#cssstyledeclaration"><c- n>CSSStyleDeclaration</c-></a> { [<a class="idl-code" data-link-type="extended-attribute" href="https://html.spec.whatwg.org/multipage/custom-elements.html#cereactions"><c- g>CEReactions</c-></a>] <c- b>attribute</c-> [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"><c- g>LegacyNullToEmptyString</c-></a>] <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="attribute" data-type="CSSOMString" href="#dom-cssstyleproperties-cssfloat"><c- g>cssFloat</c-></a>; }; <c- b>interface</c-> <c- b>mixin</c-> <a href="#elementcssinlinestyle"><code><c- g>ElementCSSInlineStyle</c-></code></a> { [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#SameObject"><c- g>SameObject</c-></a>, <a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#PutForwards"><c- g>PutForwards</c-></a>=<a class="idl-code" data-link-type="attribute" href="#dom-cssstyledeclaration-csstext"><c- n>cssText</c-></a>] <c- b>readonly</c-> <c- b>attribute</c-> <a data-link-type="idl-name" href="#cssstyledeclaration"><c- n>CSSStyleDeclaration</c-></a> <a class="idl-code" data-link-type="attribute" data-readonly data-type="CSSStyleDeclaration" href="#dom-elementcssinlinestyle-style"><c- g>style</c-></a>; }; <a data-link-type="idl-name" href="https://html.spec.whatwg.org/multipage/dom.html#htmlelement"><c- n>HTMLElement</c-></a> <c- b>includes</c-> <a data-link-type="idl-name" href="#elementcssinlinestyle"><c- n>ElementCSSInlineStyle</c-></a>; <a data-link-type="idl-name" href="https://svgwg.org/svg2-draft/types.html#InterfaceSVGElement"><c- n>SVGElement</c-></a> <c- b>includes</c-> <a data-link-type="idl-name" href="#elementcssinlinestyle"><c- n>ElementCSSInlineStyle</c-></a>; <a data-link-type="idl-name" href="https://w3c.github.io/mathml-core/#dom-mathmlelement"><c- n>MathMLElement</c-></a> <c- b>includes</c-> <a data-link-type="idl-name" href="#elementcssinlinestyle"><c- n>ElementCSSInlineStyle</c-></a>; <c- b>partial</c-> <c- b>interface</c-> <a class="idl-code" data-link-type="interface" href="https://html.spec.whatwg.org/multipage/nav-history-apis.html#window"><c- g>Window</c-></a> { [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#NewObject"><c- g>NewObject</c-></a>] <a data-link-type="idl-name" href="#cssstyledeclaration"><c- n>CSSStyleDeclaration</c-></a> <a class="idl-code" data-link-type="method" href="#dom-window-getcomputedstyle"><c- g>getComputedStyle</c-></a>(<a data-link-type="idl-name" href="https://dom.spec.whatwg.org/#element"><c- n>Element</c-></a> <a href="#dom-window-getcomputedstyle-elt-pseudoelt-elt"><code><c- g>elt</c-></code></a>, <c- b>optional</c-> <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a>? <a href="#dom-window-getcomputedstyle-elt-pseudoelt-pseudoelt"><code><c- g>pseudoElt</c-></code></a>); }; [<a class="idl-code" data-link-type="extended-attribute" href="https://webidl.spec.whatwg.org/#Exposed"><c- g>Exposed</c-></a>=<c- n>Window</c->] <c- b>namespace</c-> <a href="#namespacedef-css"><code><c- g>CSS</c-></code></a> { <a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a class="idl-code" data-link-type="method" href="#dom-css-escape"><c- g>escape</c-></a>(<a data-link-type="idl-name" href="#cssomstring"><c- n>CSSOMString</c-></a> <a href="#dom-css-escape-ident-ident"><code><c- g>ident</c-></code></a>); }; </pre> <h2 class="no-num no-ref heading settled" id="issues-index"><span class="content">Issues Index</span><a class="self-link" href="#issues-index"></a></h2> <div style="counter-reset:issue"> <div class="issue"> This should probably be done in terms of mapping it to serializing CSS values as media features are defined in terms of CSS values after all. <a class="issue-return" href="#issue-41128eee" title="Jump to section">↵</a></div> <div class="issue"> Be more specific <a class="issue-return" href="#issue-d4a93110" title="Jump to section">↵</a></div> <div class="issue"> Is there a document at this point? <a class="issue-return" href="#issue-af048285" title="Jump to section">↵</a></div> <div class="issue"> What if the HTML parser hasn’t decided on quirks/non-quirks yet? <a class="issue-return" href="#issue-45012e41" title="Jump to section">↵</a></div> <div class="issue"> Need to define how the <code class="idl"><a data-link-type="idl" href="https://drafts.csswg.org/css-fonts-5/#cssfontfacerule">CSSFontFaceRule</a></code> descriptors' values are serialized. <a class="issue-return" href="#issue-f92cf3b3" title="Jump to section">↵</a></div> <div class="issue"> Need to define how <code class="idl"><a data-link-type="idl" href="#csspagerule">CSSPageRule</a></code> is serialized. <a class="issue-return" href="#issue-be6dc86c" title="Jump to section">↵</a></div> <div class="issue"> The "indented by two spaces" bit matches browsers, but needs work, see <a href="https://github.com/w3c/csswg-drafts/issues/5494">#5494</a> <a class="issue-return" href="#issue-ca02cb3b" title="Jump to section">↵</a></div> <div class="issue"> Need to define the rules for <span>parse a list of CSS page selectors</span> and <span>serialize a list of CSS page selectors</span>. <a class="issue-return" href="#issue-ba9fab84" title="Jump to section">↵</a></div> <div class="issue"> Should we add something like "Any observable side effect must not be made outside <var>declarations</var>"? The current constraints sound like a hole for undefined behavior. <a class="issue-return" href="#issue-aaf411cc" title="Jump to section">↵</a></div> <div class="issue"> Probably should distinguish between declared and computed / resolved values. <a class="issue-return" href="#issue-87977b18" title="Jump to section">↵</a></div> <div class="issue"> Probably should distinguish between declared and computed / resolved values. <a class="issue-return" href="#issue-87977b18①" title="Jump to section">↵</a></div> <div class="issue"> Probably should distinguish between declared and computed / resolved values. <a class="issue-return" href="#issue-87977b18②" title="Jump to section">↵</a></div> <div class="issue"> This should differentiate declared and computed <a class="production css" data-link-type="type" href="https://drafts.csswg.org/css-values-4/#url-value"><url></a> values, see <a href="https://github.com/w3c/csswg-drafts/issues/3195">#3195</a>. <a class="issue-return" href="#issue-c9f9e4e6" title="Jump to section">↵</a></div> <div class="issue"> One idea is that we can remove this section somewhere in the CSS3/CSS4 timeline by moving the above definitions to the drafts that define the CSS components. <a class="issue-return" href="#issue-08e9ac89" title="Jump to section">↵</a></div> <div class="issue"> Some of these need to be updated per the new rules. <a class="issue-return" href="#issue-3a42ec46" title="Jump to section">↵</a></div> <div class="issue"> There are UAs that handle shorthands, and all UAs handle shorthands that used to be longhands like <a class="property css" data-link-type="property" href="https://drafts.csswg.org/css-overflow-3/#propdef-overflow">overflow</a>, see <a href="https://github.com/w3c/csswg-drafts/issues/2529">#2529</a>. <a class="issue-return" href="#issue-28428295" title="Jump to section">↵</a></div> <div class="issue"> Order of custom properties is currently undefined, see <a href="https://github.com/w3c/csswg-drafts/issues/4947">#4947</a>. <a class="issue-return" href="#issue-0b704bc1" title="Jump to section">↵</a></div> <div class="issue"> Should getComputedStyle() provide a useful serialization? See <a href="https://github.com/w3c/csswg-drafts/issues/1033">#1033</a> <a class="issue-return" href="#issue-854608f5" title="Jump to section">↵</a></div> <div class="issue"> This was previously specified as an IDL interface that only held static methods. Switching to an IDL namespace is *nearly* identical, so it’s expected that there won’t be any compat concerns. If any are discovered, please report so we can consider reverting this change. <a class="issue-return" href="#issue-24739c22" title="Jump to section">↵</a></div> </div> <details class="mdn-anno unpositioned" data-anno-for="the-css.escape()-method"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSS/escape_static" title="The CSS.escape() static method returns a string containing the escaped string passed as parameter, mostly for use as part of a CSS selector.">CSS/escape_static</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>31+</span></span><span class="safari yes"><span>Safari</span><span>10.1+</span></span><span class="chrome yes"><span>Chrome</span><span>46+</span></span> <hr> <span class="opera no"><span>Opera</span><span>?</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge no"><span>Edge (Legacy)</span><span>?</span></span><span class="ie no"><span>IE</span><span>None</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android no"><span>Opera Mobile</span><span>?</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="namespacedef-css"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSS" title="The CSS interface holds useful CSS-related methods. No objects with this interface are implemented: it contains only static methods and is therefore a utilitarian interface.">CSS</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>22+</span></span><span class="safari yes"><span>Safari</span><span>9+</span></span><span class="chrome yes"><span>Chrome</span><span>28+</span></span> <hr> <span class="opera no"><span>Opera</span><span>?</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie no"><span>IE</span><span>None</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android no"><span>Opera Mobile</span><span>?</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssgroupingrule-cssrules"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSGroupingRule/cssRules" title="The cssRules property of the CSSGroupingRule interface returns a CSSRuleList containing a collection of CSSRule objects.">CSSGroupingRule/cssRules</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>20+</span></span><span class="safari yes"><span>Safari</span><span>3+</span></span><span class="chrome yes"><span>Chrome</span><span>45+</span></span> <hr> <span class="opera no"><span>Opera</span><span>?</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie no"><span>IE</span><span>None</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android no"><span>Opera Mobile</span><span>?</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssgroupingrule-deleterule"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSGroupingRule/deleteRule" title="The deleteRule() method of the CSSGroupingRule interface removes a CSS rule from a list of child CSS rules.">CSSGroupingRule/deleteRule</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>20+</span></span><span class="safari yes"><span>Safari</span><span>3+</span></span><span class="chrome yes"><span>Chrome</span><span>45+</span></span> <hr> <span class="opera no"><span>Opera</span><span>?</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie no"><span>IE</span><span>None</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android no"><span>Opera Mobile</span><span>?</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssgroupingrule-insertrule"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSGroupingRule/insertRule" title="The insertRule() method of the CSSGroupingRule interface adds a new CSS rule to a list of CSS rules.">CSSGroupingRule/insertRule</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>20+</span></span><span class="safari yes"><span>Safari</span><span>3+</span></span><span class="chrome yes"><span>Chrome</span><span>45+</span></span> <hr> <span class="opera no"><span>Opera</span><span>?</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie no"><span>IE</span><span>None</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android no"><span>Opera Mobile</span><span>?</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="the-cssgroupingrule-interface"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSGroupingRule" title="The CSSGroupingRule interface of the CSS Object Model represents any CSS at-rule that contains other rules nested within it.">CSSGroupingRule</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>20+</span></span><span class="safari yes"><span>Safari</span><span>14.1+</span></span><span class="chrome yes"><span>Chrome</span><span>45+</span></span> <hr> <span class="opera no"><span>Opera</span><span>?</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie no"><span>IE</span><span>None</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android no"><span>Opera Mobile</span><span>?</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssimportrule-href"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSImportRule/href" title="The read-only href property of the CSSImportRule interface returns the URL specified by the @import at-rule.">CSSImportRule/href</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssimportrule-layername"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSImportRule/layerName" title="The read-only layerName property of the CSSImportRule interface returns the name of the cascade layer created by the @import at-rule.">CSSImportRule/layerName</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>97+</span></span><span class="safari yes"><span>Safari</span><span>15.4+</span></span><span class="chrome yes"><span>Chrome</span><span>99+</span></span> <hr> <span class="opera no"><span>Opera</span><span>?</span></span><span class="edge_blink yes"><span>Edge</span><span>99+</span></span> <hr> <span class="edge no"><span>Edge (Legacy)</span><span>?</span></span><span class="ie no"><span>IE</span><span>None</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android no"><span>Opera Mobile</span><span>?</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssimportrule-media"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSImportRule/media" title="The read-only media property of the CSSImportRule interface returns a MediaList object, containing the value of the media attribute of the associated stylesheet.">CSSImportRule/media</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssimportrule-stylesheet"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSImportRule/styleSheet" title="The read-only styleSheet property of the CSSImportRule interface returns the CSS Stylesheet specified by the @import at-rule. This will be in the form of a CSSStyleSheet object.">CSSImportRule/styleSheet</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssimportrule-supportstext"> <summary><b class="less-than-two-engines-flag" title="This feature is in less than two current engines.">⚠</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSImportRule/supportsText" title="The read-only supportsText property of the CSSImportRule interface returns the supports condition specified by the @import at-rule.">CSSImportRule/supportsText</a></p> <p class="less-than-two-engines-text">In only one current engine.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>114+</span></span><span class="safari no"><span>Safari</span><span>None</span></span><span class="chrome no"><span>Chrome</span><span>None</span></span> <hr> <span class="opera no"><span>Opera</span><span>None</span></span><span class="edge_blink no"><span>Edge</span><span>None</span></span> <hr> <span class="edge no"><span>Edge (Legacy)</span><span>None</span></span><span class="ie no"><span>IE</span><span>None</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android no"><span>Opera Mobile</span><span>None</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="the-cssimportrule-interface"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSImportRule" title="The CSSImportRule interface represents an @import at-rule.">CSSImportRule</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssnamespacerule-namespaceuri"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSNamespaceRule/namespaceURI" title="The read-only namespaceURI property of the CSSNamespaceRule returns a string containing the text of the URI of the given namespace.">CSSNamespaceRule/namespaceURI</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>59+</span></span><span class="safari yes"><span>Safari</span><span>10.1+</span></span><span class="chrome yes"><span>Chrome</span><span>47+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>36+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>36+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssnamespacerule-prefix"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSNamespaceRule/prefix" title="The read-only prefix property of the CSSNamespaceRule returns a string with the name of the prefix associated to this namespace. If there is no such prefix, it returns an empty string.">CSSNamespaceRule/prefix</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>59+</span></span><span class="safari yes"><span>Safari</span><span>10.1+</span></span><span class="chrome yes"><span>Chrome</span><span>47+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>36+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>36+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="the-cssnamespacerule-interface"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSNamespaceRule" title="The CSSNamespaceRule interface describes an object representing a single CSS @namespace at-rule.">CSSNamespaceRule</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>53+</span></span><span class="safari yes"><span>Safari</span><span>10.1+</span></span><span class="chrome yes"><span>Chrome</span><span>47+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>36+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>36+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="the-csspagerule-interface"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSPageRule" title="CSSPageRule represents a single CSS @page rule.">CSSPageRule</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>19+</span></span><span class="safari yes"><span>Safari</span><span>3+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios yes"><span>iOS Safari</span><span>1+</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssrule-csstext"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSRule/cssText" title="The cssText property of the CSSRule interface returns the actual text of a CSSStyleSheet style-rule.">CSSRule/cssText</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssrule-parentrule"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSRule/parentRule" title="The parentRule property of the CSSRule interface returns the containing rule of the current rule if this exists, or otherwise returns null.">CSSRule/parentRule</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssrule-parentstylesheet"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSRule/parentStyleSheet" title="The parentStyleSheet property of the CSSRule interface returns the StyleSheet object in which the current rule is defined.">CSSRule/parentStyleSheet</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="the-cssrule-interface"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSRule" title="The CSSRule interface represents a single CSS rule. There are several types of rules which inherit properties from CSSRule.">CSSRule</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssrulelist-item"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSRuleList/item" title="The item() method of the CSSRuleList interface returns the CSSRule object at the specified index or null if the specified index doesn't exist.">CSSRuleList/item</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssrulelist-length"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSRuleList/length" title="The length property of the CSSRuleList interface returns the number of CSSRule objects in the list.">CSSRuleList/length</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="the-cssrulelist-interface"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSRuleList" title="A CSSRuleList represents an ordered collection of read-only CSSRule objects.">CSSRuleList</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstyledeclaration-csstext"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleDeclaration/cssText" title="The cssText property of the CSSStyleDeclaration interface returns or sets the text of the element's inline style declaration only.">CSSStyleDeclaration/cssText</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>5+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstyledeclaration-getpropertypriority"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleDeclaration/getPropertyPriority" title="The CSSStyleDeclaration.getPropertyPriority() method interface returns a string that provides all explicitly set priorities on the CSS property.">CSSStyleDeclaration/getPropertyPriority</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstyledeclaration-getpropertyvalue"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleDeclaration/getPropertyValue" title="The CSSStyleDeclaration.getPropertyValue() method interface returns a string containing the value of a specified CSS property.">CSSStyleDeclaration/getPropertyValue</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstyledeclaration-item"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleDeclaration/item" title="The CSSStyleDeclaration.item() method interface returns a CSS property name from a CSSStyleDeclaration by index.">CSSStyleDeclaration/item</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>6+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstyledeclaration-length"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleDeclaration/length" title="The read-only property returns an integer that represents the number of style declarations in this CSS declaration block.">CSSStyleDeclaration/length</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>6+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstyledeclaration-parentrule"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleDeclaration/parentRule" title="The CSSStyleDeclaration.parentRule read-only property returns a CSSRule that is the parent of this style block, e.g. a CSSStyleRule representing the style for a CSS selector.">CSSStyleDeclaration/parentRule</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera no"><span>Opera</span><span>?</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android no"><span>Opera Mobile</span><span>?</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstyledeclaration-removeproperty"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleDeclaration/removeProperty" title="The CSSStyleDeclaration.removeProperty() method interface removes a property from a CSS style declaration object.">CSSStyleDeclaration/removeProperty</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstyledeclaration-setproperty"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleDeclaration/setProperty" title="The CSSStyleDeclaration.setProperty() method interface sets a new value for a property on a CSS style declaration object.">CSSStyleDeclaration/setProperty</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>6+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>9+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>10.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="the-cssstyledeclaration-interface"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleDeclaration" title="The CSSStyleDeclaration interface represents an object that is a CSS declaration block, and exposes style information and various style-related methods and properties.">CSSStyleDeclaration</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>5+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstylerule-selectortext"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleRule/selectorText" title="The selectorText property of the CSSStyleRule interface gets and sets the selectors associated with the CSSStyleRule.">CSSStyleRule/selectorText</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstylerule-style"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleRule/style" title="The read-only style property is the CSSStyleDeclaration interface for the declaration block of the CSSStyleRule.">CSSStyleRule/style</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="the-cssstylerule-interface"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleRule" title="The CSSStyleRule interface represents a single CSS style rule.">CSSStyleRule</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstylesheet-cssstylesheet"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet/CSSStyleSheet" title="The CSSStyleSheet() constructor creates a new CSSStyleSheet object which represents a single Stylesheet.">CSSStyleSheet/CSSStyleSheet</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>101+</span></span><span class="safari yes"><span>Safari</span><span>16.4+</span></span><span class="chrome yes"><span>Chrome</span><span>73+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>53+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge no"><span>Edge (Legacy)</span><span>?</span></span><span class="ie no"><span>IE</span><span>None</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android yes"><span>Samsung Internet</span><span>9.0+</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>47+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstylesheet-cssrules"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet/cssRules" title="The read-only CSSStyleSheet property cssRules returns a live CSSRuleList which provides a real-time, up-to-date list of every CSS rule which comprises the stylesheet. Each item in the list is a CSSRule defining a single rule.">CSSStyleSheet/cssRules</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstylesheet-deleterule"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet/deleteRule" title="The CSSStyleSheet method deleteRule() removes a rule from the stylesheet object.">CSSStyleSheet/deleteRule</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstylesheet-insertrule"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet/insertRule" title="The CSSStyleSheet.insertRule() method inserts a new CSS rule into the current style sheet.">CSSStyleSheet/insertRule</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstylesheet-ownerrule"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet/ownerRule" title="The read-only CSSStyleSheet property ownerRule returns the CSSImportRule corresponding to the @import at-rule which imported the stylesheet into the document. If the stylesheet wasn't imported into the document using @import, the returned value is null.">CSSStyleSheet/ownerRule</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstylesheet-replace"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet/replace" title="The replace() method of the CSSStyleSheet interface asynchronously replaces the content of the stylesheet with the content passed into it. The method returns a promise that resolves with the CSSStyleSheet object.">CSSStyleSheet/replace</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>101+</span></span><span class="safari yes"><span>Safari</span><span>16.4+</span></span><span class="chrome yes"><span>Chrome</span><span>73+</span></span> <hr> <span class="opera no"><span>Opera</span><span>?</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge no"><span>Edge (Legacy)</span><span>?</span></span><span class="ie no"><span>IE</span><span>None</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android no"><span>Opera Mobile</span><span>?</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-cssstylesheet-replacesync"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet/replaceSync" title="The replaceSync() method of the CSSStyleSheet interface synchronously replaces the content of the stylesheet with the content passed into it.">CSSStyleSheet/replaceSync</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>101+</span></span><span class="safari yes"><span>Safari</span><span>16.4+</span></span><span class="chrome yes"><span>Chrome</span><span>73+</span></span> <hr> <span class="opera no"><span>Opera</span><span>?</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge no"><span>Edge (Legacy)</span><span>?</span></span><span class="ie no"><span>IE</span><span>None</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android no"><span>Opera Mobile</span><span>?</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="the-cssstylesheet-interface"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/CSSStyleSheet" title="The CSSStyleSheet interface represents a single CSS stylesheet, and lets you inspect and modify the list of rules contained in the stylesheet. It inherits properties and methods from its parent, StyleSheet.">CSSStyleSheet</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-documentorshadowroot-adoptedstylesheets"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/Document/adoptedStyleSheets" title="The adoptedStyleSheets property of the Document interface is used for setting an array of constructed stylesheets to be used by the document.">Document/adoptedStyleSheets</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>101+</span></span><span class="safari yes"><span>Safari</span><span>16.4+</span></span><span class="chrome yes"><span>Chrome</span><span>73+</span></span> <hr> <span class="opera no"><span>Opera</span><span>?</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge no"><span>Edge (Legacy)</span><span>?</span></span><span class="ie no"><span>IE</span><span>None</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>50+</span></span> </div> </div> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/ShadowRoot/adoptedStyleSheets" title="The adoptedStyleSheets property of the ShadowRoot interface sets an array of constructed stylesheets to be used by the shadow DOM subtree.">ShadowRoot/adoptedStyleSheets</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>101+</span></span><span class="safari yes"><span>Safari</span><span>16.4+</span></span><span class="chrome yes"><span>Chrome</span><span>73+</span></span> <hr> <span class="opera no"><span>Opera</span><span>?</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge no"><span>Edge (Legacy)</span><span>?</span></span><span class="ie no"><span>IE</span><span>None</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>50+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-documentorshadowroot-stylesheets"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/Document/styleSheets" title="The styleSheets read-only property of the Document interface returns a StyleSheetList of CSSStyleSheet objects, for stylesheets explicitly linked into or embedded in a document.">Document/styleSheets</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>4+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>4+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/ShadowRoot/styleSheets" title="The styleSheets read-only property of the ShadowRoot interface returns a StyleSheetList of CSSStyleSheet objects, for stylesheets explicitly linked into or embedded in a shadow tree.">ShadowRoot/styleSheets</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>63+</span></span><span class="safari yes"><span>Safari</span><span>12.1+</span></span><span class="chrome yes"><span>Chrome</span><span>53+</span></span> <hr> <span class="opera no"><span>Opera</span><span>?</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge no"><span>Edge (Legacy)</span><span>?</span></span><span class="ie no"><span>IE</span><span>None</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android no"><span>Opera Mobile</span><span>?</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-elementcssinlinestyle-style"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/style" title="The read-only style property of the HTMLElement returns the inline style of an element in the form of a live CSSStyleDeclaration object that contains a list of all styles properties for that element with values assigned only for the attributes that are defined in the element's inline style attribute.">HTMLElement/style</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>3+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>8+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>5.5+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios yes"><span>iOS Safari</span><span>1+</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>10.1+</span></span> </div> </div> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/SVGElement/style" title="The read-only style property of the SVGElement returns the inline style of an element in the form of a live CSSStyleDeclaration object that contains a list of all styles properties for that element with values assigned only for the attributes that are defined in the element's inline style attribute.">SVGElement/style</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1.5+</span></span><span class="safari yes"><span>Safari</span><span>3+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios yes"><span>iOS Safari</span><span>1+</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-linkstyle-sheet"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLLinkElement/sheet" title="The read-only sheet property of the HTMLLinkElement interface contains the stylesheet associated with that element.">HTMLLinkElement/sheet</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera no"><span>Opera</span><span>?</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android no"><span>Opera Mobile</span><span>?</span></span> </div> </div> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/HTMLStyleElement/sheet" title="The read-only sheet property of the HTMLStyleElement interface contains the stylesheet associated with that element.">HTMLStyleElement/sheet</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/ProcessingInstruction/sheet" title="The read-only sheet property of the ProcessingInstruction interface contains the stylesheet associated to the ProcessingInstruction.">ProcessingInstruction/sheet</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera no"><span>Opera</span><span>?</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge no"><span>Edge (Legacy)</span><span>?</span></span><span class="ie no"><span>IE</span><span>None</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android no"><span>Opera Mobile</span><span>?</span></span> </div> </div> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/SVGStyleElement/sheet" title="The SVGStyleElement.sheet read-only property returns the CSSStyleSheet corresponding to the given SVG style element, or null if there is none.">SVGStyleElement/sheet</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1.5+</span></span><span class="safari yes"><span>Safari</span><span>16.4+</span></span><span class="chrome yes"><span>Chrome</span><span>38+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>25+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>25+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-medialist-appendmedium"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/MediaList/appendMedium" title="The appendMedium() method of the MediaList interface adds a media query to the list. If the media query is already in the collection, this method does nothing.">MediaList/appendMedium</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-medialist-deletemedium"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/MediaList/deleteMedium" title="The deleteMedium() method of the MediaList interface removes from this MediaList the given media query.">MediaList/deleteMedium</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-medialist-item"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/MediaList/item" title="The item() method of the MediaList interface returns the media query at the specified index, or null if the specified index doesn't exist.">MediaList/item</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-medialist-length"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/MediaList/length" title="The read-only length property of the MediaList interface returns the number of media queries in the list.">MediaList/length</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-medialist-mediatext"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/MediaList/mediaText" title="The mediaText property of the MediaList interface is a stringifier that returns a string representing the MediaList as text, and also allows you to set a new MediaList.">MediaList/mediaText</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="the-medialist-interface"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/MediaList" title="The MediaList interface represents the media queries of a stylesheet, e.g. those set using a <link> element's media attribute.">MediaList</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-stylesheet-disabled"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/StyleSheet/disabled" title="The disabled property of the StyleSheet interface determines whether the style sheet is prevented from applying to the document.">StyleSheet/disabled</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-stylesheet-href"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/StyleSheet/href" title="The href property of the StyleSheet interface returns the location of the style sheet.">StyleSheet/href</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-stylesheet-media"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/StyleSheet/media" title="The media property of the StyleSheet interface specifies the intended destination media for style information. It is a read-only, array-like MediaList object and can be removed with deleteMedium() and added with appendMedium().">StyleSheet/media</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-stylesheet-ownernode"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/StyleSheet/ownerNode" title="The ownerNode property of the StyleSheet interface returns the node that associates this style sheet with the document.">StyleSheet/ownerNode</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-stylesheet-parentstylesheet"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/StyleSheet/parentStyleSheet" title="The parentStyleSheet property of the StyleSheet interface returns the style sheet, if any, that is including the given style sheet.">StyleSheet/parentStyleSheet</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-stylesheet-title"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/StyleSheet/title" title="The title property of the StyleSheet interface returns the advisory title of the current style sheet.">StyleSheet/title</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-stylesheet-type"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/StyleSheet/type" title="The type property of the StyleSheet interface specifies the style sheet language for the given style sheet.">StyleSheet/type</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="the-stylesheet-interface"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/StyleSheet" title="An object implementing the StyleSheet interface represents a single style sheet. CSS style sheets will further implement the more specialized CSSStyleSheet interface.">StyleSheet</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-stylesheetlist-item"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/StyleSheetList/item" title="The item() method of the StyleSheetList interface returns a single CSSStyleSheet object.">StyleSheetList/item</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>4+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-stylesheetlist-length"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/StyleSheetList/length" title="The length read-only property of the StyleSheetList interface returns the number of CSSStyleSheet objects in the collection.">StyleSheetList/length</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>4+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="the-stylesheetlist-interface"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/StyleSheetList" title="The StyleSheetList interface represents a list of CSSStyleSheet objects. An instance of this object can be returned by Document.styleSheets.">StyleSheetList</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>1+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>12.1+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>4+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>12.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="dom-window-getcomputedstyle"> <summary><b class="all-engines-flag" title="This feature is in all current engines.">✔</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/API/Window/getComputedStyle" title="The Window.getComputedStyle() method returns an object containing the values of all CSS properties of an element, after applying active stylesheets and resolving any basic computation those values may contain.">Window/getComputedStyle</a></p> <p class="all-engines-text">In all current engines.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>1+</span></span><span class="safari yes"><span>Safari</span><span>3+</span></span><span class="chrome yes"><span>Chrome</span><span>1+</span></span> <hr> <span class="opera yes"><span>Opera</span><span>7.2+</span></span><span class="edge_blink yes"><span>Edge</span><span>79+</span></span> <hr> <span class="edge yes"><span>Edge (Legacy)</span><span>12+</span></span><span class="ie yes"><span>IE</span><span>9+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios yes"><span>iOS Safari</span><span>1+</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android yes"><span>Opera Mobile</span><span>10.1+</span></span> </div> </div> </details> <details class="mdn-anno unpositioned" data-anno-for="css-style-sheet-collections"> <summary><b class="less-than-two-engines-flag" title="This feature is in less than two current engines.">⚠</b><span>MDN</span></summary> <div class="feature"> <p><a href="https://developer.mozilla.org/en-US/docs/Web/CSS/Alternative_style_sheets" title="Specifying alternative style sheets in a web page provides a way for users to see multiple versions of a page, based on their needs or preferences.">Alternative_style_sheets</a></p> <p class="less-than-two-engines-text">In only one current engine.</p> <div class="support"> <span class="firefox yes"><span>Firefox</span><span>3+</span></span><span class="safari no"><span>Safari</span><span>?</span></span><span class="chrome no"><span>Chrome</span><span>1–48</span></span> <hr> <span class="opera yes"><span>Opera</span><span>Yes</span></span><span class="edge_blink no"><span>Edge</span><span>None</span></span> <hr> <span class="edge no"><span>Edge (Legacy)</span><span>?</span></span><span class="ie yes"><span>IE</span><span>8+</span></span> <hr> <span class="firefox_android no"><span>Firefox for Android</span><span>?</span></span><span class="safari_ios no"><span>iOS Safari</span><span>?</span></span><span class="chrome_android no"><span>Chrome for Android</span><span>?</span></span><span class="webview_android no"><span>Android WebView</span><span>?</span></span><span class="samsunginternet_android no"><span>Samsung Internet</span><span>?</span></span><span class="opera_android no"><span>Opera Mobile</span><span>?</span></span> </div> </div> </details> <script>/* Boilerplate: script-dom-helper */ "use strict"; function query(sel) { return document.querySelector(sel); } function queryAll(sel) { return [...document.querySelectorAll(sel)]; } function iter(obj) { if(!obj) return []; var it = obj[Symbol.iterator]; if(it) return it; return Object.entries(obj); } function mk(tagname, attrs, ...children) { const el = document.createElement(tagname); for(const [k,v] of iter(attrs)) { if(k.slice(0,3) == "_on") { const eventName = k.slice(3); el.addEventListener(eventName, v); } else if(k[0] == "_") { // property, not attribute el[k.slice(1)] = v; } else { if(v === false || v == null) { continue; } else if(v === true) { el.setAttribute(k, ""); continue; } else { el.setAttribute(k, v); } } } append(el, children); return el; } /* Create shortcuts for every known HTML element */ [ "a", "abbr", "acronym", "address", "applet", "area", "article", "aside", "audio", "b", "base", "basefont", "bdo", "big", "blockquote", "body", "br", "button", "canvas", "caption", "center", "cite", "code", "col", "colgroup", "datalist", "dd", "del", "details", "dfn", "dialog", "div", "dl", "dt", "em", "embed", "fieldset", "figcaption", "figure", "font", "footer", "form", "frame", "frameset", "head", "header", "h1", "h2", "h3", "h4", "h5", "h6", "hr", "html", "i", "iframe", "img", "input", "ins", "kbd", "label", "legend", "li", "link", "main", "map", "mark", "meta", "meter", "nav", "nobr", "noscript", "object", "ol", "optgroup", "option", "output", "p", "param", "pre", "progress", "q", "s", "samp", "script", "section", "select", "small", "source", "span", "strike", "strong", "style", "sub", "summary", "sup", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "title", "tr", "u", "ul", "var", "video", "wbr", "xmp", ].forEach(tagname=>{ mk[tagname] = (...args) => mk(tagname, ...args); }); function* nodesFromChildList(children) { for(const child of children.flat(Infinity)) { if(child instanceof Node) { yield child; } else { yield new Text(child); } } } function append(el, ...children) { for(const child of nodesFromChildList(children)) { if(el instanceof Node) el.appendChild(child); else el.push(child); } return el; } function insertAfter(el, ...children) { for(const child of nodesFromChildList(children)) { el.parentNode.insertBefore(child, el.nextSibling); } return el; } function clearContents(el) { el.innerHTML = ""; return el; } function parseHTML(markup) { if(markup.toLowerCase().trim().indexOf('<!doctype') === 0) { const doc = document.implementation.createHTMLDocument(""); doc.documentElement.innerHTML = markup; return doc; } else { const el = mk.template({}); el.innerHTML = markup; return el.content; } }</script> <script>/* Boilerplate: script-dfn-panel */ "use strict"; { let dfnPanelData = { "00140718": {"dfnID":"00140718","dfnText":"margin-top","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-margin-top"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-box-4/#propdef-margin-top"}, "002a383d": {"dfnID":"002a383d","dfnText":"padding-inline-start","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-padding-inline-start"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-logical-1/#propdef-padding-inline-start"}, "003ea2bc": {"dfnID":"003ea2bc","dfnText":"long","external":true,"refSections":[{"refs":[{"id":"ref-for-idl-long"}],"title":"6.1.2.1. Deprecated CSSStyleSheet members"}],"url":"http://heycam.github.io/webidl/#idl-long"}, "00d808eb": {"dfnID":"00d808eb","dfnText":"font-feature-settings","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-font-feature-settings"},{"id":"ref-for-propdef-font-feature-settings\u2460"}],"title":"6.4. CSS Rules"}],"url":"https://drafts.csswg.org/css-fonts-4/#propdef-font-feature-settings"}, "03570f9e": {"dfnID":"03570f9e","dfnText":"<time>","external":true,"refSections":[{"refs":[{"id":"ref-for-time-value"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css-values-4/#time-value"}, "052c1740": {"dfnID":"052c1740","dfnText":"margin-block-end","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-margin-block-end"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-logical-1/#propdef-margin-block-end"}, "053b5fe6": {"dfnID":"053b5fe6","dfnText":"set an indexed value","external":true,"refSections":[{"refs":[{"id":"ref-for-observable-array-attribute-set-an-indexed-value"}],"title":"6.2.3. Extensions to the DocumentOrShadowRoot Interface Mixin"}],"url":"https://webidl.spec.whatwg.org/#observable-array-attribute-set-an-indexed-value"}, "06f8d393": {"dfnID":"06f8d393","dfnText":"owner node","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-owner-node"}],"title":"6.1. CSS Style Sheets"}],"url":"https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-owner-node"}, "086e3aff": {"dfnID":"086e3aff","dfnText":"origin","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-origin"}],"title":"6.3.1. Fetching CSS style sheets"},{"refs":[{"id":"ref-for-concept-origin\u2460"}],"title":"6.3.5. Requirements on user agents Implementing the HTTP Link Header"}],"url":"https://html.spec.whatwg.org/multipage/browsers.html#concept-origin"}, "09633b18": {"dfnID":"09633b18","dfnText":"keyText","external":true,"refSections":[{"refs":[{"id":"ref-for-dom-csskeyframerule-keytext"}],"title":"6.4. CSS Rules"}],"url":"https://drafts.csswg.org/css-animations-1/#dom-csskeyframerule-keytext"}, "0f23e505": {"dfnID":"0f23e505","dfnText":"serialize an <an+b> value","external":true,"refSections":[{"refs":[{"id":"ref-for-serialize-an-anb-value"}],"title":"5.2. Serializing Selectors"}],"url":"https://drafts.csswg.org/css-syntax-3/#serialize-an-anb-value"}, "0fffddd1": {"dfnID":"0fffddd1","dfnText":"inline-size","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-inline-size"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-logical-1/#propdef-inline-size"}, "11c5a02b": {"dfnID":"11c5a02b","dfnText":"margin-inline-end","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-margin-inline-end"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-logical-1/#propdef-margin-inline-end"}, "11fb4d5b": {"dfnID":"11fb4d5b","dfnText":"background-color","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-background-color"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-backgrounds-3/#propdef-background-color"}, "12432dcb": {"dfnID":"12432dcb","dfnText":"<supports-condition>","external":true,"refSections":[{"refs":[{"id":"ref-for-typedef-supports-condition"}],"title":"6.4.4. The CSSImportRule Interface"}],"url":"https://drafts.csswg.org/css-conditional-3/#typedef-supports-condition"}, "12629b81": {"dfnID":"12629b81","dfnText":"margin-block-start","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-margin-block-start"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-logical-1/#propdef-margin-block-start"}, "14048e52": {"dfnID":"14048e52","dfnText":"::after","external":true,"refSections":[{"refs":[{"id":"ref-for-sel-after"}],"title":"2. Terminology"}],"url":"https://drafts.csswg.org/selectors-3/#sel-after"}, "14b92907": {"dfnID":"14b92907","dfnText":"inset-block-end","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-inset-block-end"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-position-3/#propdef-inset-block-end"}, "1548047a": {"dfnID":"1548047a","dfnText":"<color>","external":true,"refSections":[{"refs":[{"id":"ref-for-typedef-color"},{"id":"ref-for-typedef-color\u2460"}],"title":"6.7.2. Serializing CSS Values"},{"refs":[{"id":"ref-for-typedef-color\u2461"}],"title":"11.2. Changes From 5 December 2013"}],"url":"https://drafts.csswg.org/css-color-5/#typedef-color"}, "15f5b381": {"dfnID":"15f5b381","dfnText":"<percentage>","external":true,"refSections":[{"refs":[{"id":"ref-for-percentage-value"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css-values-4/#percentage-value"}, "16310992": {"dfnID":"16310992","dfnText":"<number>","external":true,"refSections":[{"refs":[{"id":"ref-for-number-value"}],"title":"6.7.2. Serializing CSS Values"},{"refs":[{"id":"ref-for-number-value\u2460"}],"title":"11.2. Changes From 5 December 2013"}],"url":"https://drafts.csswg.org/css-values-4/#number-value"}, "16d07e10": {"dfnID":"16d07e10","dfnText":"for each","external":true,"refSections":[{"refs":[{"id":"ref-for-list-iterate"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"https://infra.spec.whatwg.org/#list-iterate"}, "1a4bc525": {"dfnID":"1a4bc525","dfnText":"throw","external":true,"refSections":[{"refs":[{"id":"ref-for-dfn-throw"}],"title":"4.4. The MediaList Interface"},{"refs":[{"id":"ref-for-dfn-throw\u2460"},{"id":"ref-for-dfn-throw\u2461"},{"id":"ref-for-dfn-throw\u2462"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-dfn-throw\u2463"},{"id":"ref-for-dfn-throw\u2464"},{"id":"ref-for-dfn-throw\u2465"},{"id":"ref-for-dfn-throw\u2466"},{"id":"ref-for-dfn-throw\u2467"},{"id":"ref-for-dfn-throw\u2468"},{"id":"ref-for-dfn-throw\u2460\u24ea"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-dfn-throw\u2460\u2460"},{"id":"ref-for-dfn-throw\u2460\u2461"},{"id":"ref-for-dfn-throw\u2460\u2462"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"http://heycam.github.io/webidl/#dfn-throw"}, "1d670c56": {"dfnID":"1d670c56","dfnText":"supported property indices","external":true,"refSections":[{"refs":[{"id":"ref-for-dfn-supported-property-indices"},{"id":"ref-for-dfn-supported-property-indices\u2460"}],"title":"4.4. The MediaList Interface"},{"refs":[{"id":"ref-for-dfn-supported-property-indices\u2461"},{"id":"ref-for-dfn-supported-property-indices\u2462"}],"title":"6.2.2. The StyleSheetList Interface"},{"refs":[{"id":"ref-for-dfn-supported-property-indices\u2463"},{"id":"ref-for-dfn-supported-property-indices\u2464"}],"title":"6.4.1. The CSSRuleList Interface"},{"refs":[{"id":"ref-for-dfn-supported-property-indices\u2465"},{"id":"ref-for-dfn-supported-property-indices\u2466"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"http://heycam.github.io/webidl/#dfn-supported-property-indices"}, "1dc65563": {"dfnID":"1dc65563","dfnText":"<resolution>","external":true,"refSections":[{"refs":[{"id":"ref-for-resolution-value"}],"title":"6.7.2. Serializing CSS Values"},{"refs":[{"id":"ref-for-resolution-value\u2460"}],"title":"11.1. Changes From 17 March 2016"}],"url":"https://drafts.csswg.org/css-values-4/#resolution-value"}, "1ee7f091": {"dfnID":"1ee7f091","dfnText":"outline-color","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-outline-color"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-ui-4/#propdef-outline-color"}, "1fb62f09": {"dfnID":"1fb62f09","dfnText":"media feature","external":true,"refSections":[{"refs":[{"id":"ref-for-media-feature"},{"id":"ref-for-media-feature\u2460"},{"id":"ref-for-media-feature\u2461"},{"id":"ref-for-media-feature\u2462"}],"title":"4.2. Serializing Media Queries"}],"url":"https://drafts.csswg.org/mediaqueries-5/#media-feature"}, "212ee1f7": {"dfnID":"212ee1f7","dfnText":"data","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-cd-data"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"https://dom.spec.whatwg.org/#concept-cd-data"}, "21ecf38f": {"dfnID":"21ecf38f","dfnText":"PutForwards","external":true,"refSections":[{"refs":[{"id":"ref-for-PutForwards"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-PutForwards\u2460"}],"title":"6.4.3. The CSSStyleRule Interface"},{"refs":[{"id":"ref-for-PutForwards\u2461"}],"title":"6.4.4. The CSSImportRule Interface"},{"refs":[{"id":"ref-for-PutForwards\u2462"}],"title":"6.4.7. The CSSPageRule Interface"},{"refs":[{"id":"ref-for-PutForwards\u2463"}],"title":"6.4.8. The CSSMarginRule Interface"},{"refs":[{"id":"ref-for-PutForwards\u2464"}],"title":"7.1. \nThe ElementCSSInlineStyle Mixin"}],"url":"https://webidl.spec.whatwg.org/#PutForwards"}, "22109b0e": {"dfnID":"22109b0e","dfnText":"flat tree","external":true,"refSections":[{"refs":[{"id":"ref-for-flat-tree"}],"title":"7.2. Extensions to the Window Interface"}],"url":"https://drafts.csswg.org/css-scoping-1/#flat-tree"}, "22ece843": {"dfnID":"22ece843","dfnText":"absolute-URL string","external":true,"refSections":[{"refs":[{"id":"ref-for-absolute-url-string"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-absolute-url-string\u2460"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://url.spec.whatwg.org/#absolute-url-string"}, "2309227f": {"dfnID":"2309227f","dfnText":"portrait","external":true,"refSections":[{"refs":[{"id":"ref-for-valdef-media-orientation-portrait"}],"title":"4.2.1. Serializing Media Feature Values"}],"url":"https://drafts.csswg.org/mediaqueries-4/#valdef-media-orientation-portrait"}, "24408a11": {"dfnID":"24408a11","dfnText":"compound selector","external":true,"refSections":[{"refs":[{"id":"ref-for-compound"},{"id":"ref-for-compound\u2460"}],"title":"5.2. Serializing Selectors"}],"url":"https://drafts.csswg.org/selectors-4/#compound"}, "26b72b18": {"dfnID":"26b72b18","dfnText":"border-block-end-color","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-border-block-end-color"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-borders-4/#propdef-border-block-end-color"}, "296f3551": {"dfnID":"296f3551","dfnText":"Element","external":true,"refSections":[{"refs":[{"id":"ref-for-element"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-element\u2460"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"},{"refs":[{"id":"ref-for-element\u2461"}],"title":"6.6. CSS Declaration Blocks"},{"refs":[{"id":"ref-for-element\u2462"}],"title":"7.2. Extensions to the Window Interface"},{"refs":[{"id":"ref-for-element\u2463"},{"id":"ref-for-element\u2464"}],"title":"11.2. Changes From 5 December 2013"}],"url":"https://dom.spec.whatwg.org/#element"}, "2988c385": {"dfnID":"2988c385","dfnText":"::part()","external":true,"refSections":[{"refs":[{"id":"ref-for-selectordef-part"}],"title":"7.2. Extensions to the Window Interface"}],"url":"https://drafts.csswg.org/css-shadow-parts-1/#selectordef-part"}, "29a4aea4": {"dfnID":"29a4aea4","dfnText":"<frequency>","external":true,"refSections":[{"refs":[{"id":"ref-for-frequency-value"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css-values-4/#frequency-value"}, "2c4af168": {"dfnID":"2c4af168","dfnText":"LegacyNullToEmptyString","external":true,"refSections":[{"refs":[{"id":"ref-for-LegacyNullToEmptyString"}],"title":"4.4. The MediaList Interface"},{"refs":[{"id":"ref-for-LegacyNullToEmptyString\u2460"},{"id":"ref-for-LegacyNullToEmptyString\u2461"},{"id":"ref-for-LegacyNullToEmptyString\u2462"},{"id":"ref-for-LegacyNullToEmptyString\u2463"},{"id":"ref-for-LegacyNullToEmptyString\u2464"},{"id":"ref-for-LegacyNullToEmptyString\u2465"},{"id":"ref-for-LegacyNullToEmptyString\u2466"},{"id":"ref-for-LegacyNullToEmptyString\u2467"},{"id":"ref-for-LegacyNullToEmptyString\u2468"},{"id":"ref-for-LegacyNullToEmptyString\u2460\u24ea"},{"id":"ref-for-LegacyNullToEmptyString\u2460\u2460"},{"id":"ref-for-LegacyNullToEmptyString\u2460\u2461"},{"id":"ref-for-LegacyNullToEmptyString\u2460\u2462"},{"id":"ref-for-LegacyNullToEmptyString\u2460\u2463"}],"title":"6.4.7. The CSSPageRule Interface"},{"refs":[{"id":"ref-for-LegacyNullToEmptyString\u2460\u2464"},{"id":"ref-for-LegacyNullToEmptyString\u2460\u2465"},{"id":"ref-for-LegacyNullToEmptyString\u2460\u2466"},{"id":"ref-for-LegacyNullToEmptyString\u2460\u2467"},{"id":"ref-for-LegacyNullToEmptyString\u2460\u2468"},{"id":"ref-for-LegacyNullToEmptyString\u2461\u24ea"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"}, "2de81520": {"dfnID":"2de81520","dfnText":"<ratio>","external":true,"refSections":[{"refs":[{"id":"ref-for-ratio-value"}],"title":"6.7.2. Serializing CSS Values"},{"refs":[{"id":"ref-for-ratio-value\u2460"}],"title":"11.1. Changes From 17 March 2016"}],"url":"https://drafts.csswg.org/css-values-4/#ratio-value"}, "2e9d7788": {"dfnID":"2e9d7788","dfnText":"CSSSupportsRule","external":true,"refSections":[{"refs":[{"id":"ref-for-csssupportsrule"}],"title":"6.4.2. The CSSRule Interface"}],"url":"https://drafts.csswg.org/css-conditional-3/#csssupportsrule"}, "2ef14d2e": {"dfnID":"2ef14d2e","dfnText":"nodes","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-node"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"https://dom.spec.whatwg.org/#concept-node"}, "2fd70eda": {"dfnID":"2fd70eda","dfnText":"simple selector","external":true,"refSections":[{"refs":[{"id":"ref-for-simple"},{"id":"ref-for-simple\u2460"},{"id":"ref-for-simple\u2461"}],"title":"5.2. Serializing Selectors"}],"url":"https://drafts.csswg.org/selectors-4/#simple"}, "333b65e3": {"dfnID":"333b65e3","dfnText":"color","external":true,"refSections":[{"refs":[{"id":"ref-for-descdef-media-color"}],"title":"4.2.1. Serializing Media Feature Values"}],"url":"https://drafts.csswg.org/mediaqueries-4/#descdef-media-color"}, "3349d69f": {"dfnID":"3349d69f","dfnText":"associated Document","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-document-window"},{"id":"ref-for-concept-document-window\u2460"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-concept-document-window\u2461"}],"title":"8.1. The CSS.escape() Method"}],"url":"https://html.spec.whatwg.org/multipage/nav-history-apis.html#concept-document-window"}, "3559c926": {"dfnID":"3559c926","dfnText":"<angle>","external":true,"refSections":[{"refs":[{"id":"ref-for-angle-value"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css-values-4/#angle-value"}, "358f1dbd": {"dfnID":"358f1dbd","dfnText":"referrer","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-request-referrer"}],"title":"6.3.1. Fetching CSS style sheets"}],"url":"https://fetch.spec.whatwg.org/#concept-request-referrer"}, "37c6bd4e": {"dfnID":"37c6bd4e","dfnText":"padding-right","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-padding-right"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-box-4/#propdef-padding-right"}, "3bdfd276": {"dfnID":"3bdfd276","dfnText":"padding-block-end","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-padding-block-end"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-logical-1/#propdef-padding-block-end"}, "3ca20be2": {"dfnID":"3ca20be2","dfnText":"CSSFontFaceRule","external":true,"refSections":[{"refs":[{"id":"ref-for-cssfontfacerule"},{"id":"ref-for-cssfontfacerule\u2460"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-cssfontfacerule\u2461"}],"title":"6.4.2. The CSSRule Interface"}],"url":"https://drafts.csswg.org/css-fonts-5/#cssfontfacerule"}, "3f47ca4a": {"dfnID":"3f47ca4a","dfnText":"<shape>","external":true,"refSections":[{"refs":[{"id":"ref-for-value-def-shape"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css2/#value-def-shape"}, "402ed79d": {"dfnID":"402ed79d","dfnText":"CEReactions","external":true,"refSections":[{"refs":[{"id":"ref-for-cereactions"},{"id":"ref-for-cereactions\u2460"},{"id":"ref-for-cereactions\u2461"},{"id":"ref-for-cereactions\u2462"},{"id":"ref-for-cereactions\u2463"},{"id":"ref-for-cereactions\u2464"},{"id":"ref-for-cereactions\u2465"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"https://html.spec.whatwg.org/multipage/custom-elements.html#cereactions"}, "450958f7": {"dfnID":"450958f7","dfnText":"unsigned short","external":true,"refSections":[{"refs":[{"id":"ref-for-idl-unsigned-short"},{"id":"ref-for-idl-unsigned-short\u2460"},{"id":"ref-for-idl-unsigned-short\u2461"},{"id":"ref-for-idl-unsigned-short\u2462"},{"id":"ref-for-idl-unsigned-short\u2463"},{"id":"ref-for-idl-unsigned-short\u2464"},{"id":"ref-for-idl-unsigned-short\u2465"},{"id":"ref-for-idl-unsigned-short\u2466"},{"id":"ref-for-idl-unsigned-short\u2467"}],"title":"6.4.2. The CSSRule Interface"}],"url":"https://webidl.spec.whatwg.org/#idl-unsigned-short"}, "45999d1c": {"dfnID":"45999d1c","dfnText":"NoModificationAllowedError","external":true,"refSections":[{"refs":[{"id":"ref-for-nomodificationallowederror"},{"id":"ref-for-nomodificationallowederror\u2460"},{"id":"ref-for-nomodificationallowederror\u2461"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"https://webidl.spec.whatwg.org/#nomodificationallowederror"}, "45e31baf": {"dfnID":"45e31baf","dfnText":"landscape","external":true,"refSections":[{"refs":[{"id":"ref-for-valdef-media-orientation-landscape"}],"title":"4.2.1. Serializing Media Feature Values"}],"url":"https://drafts.csswg.org/mediaqueries-4/#valdef-media-orientation-landscape"}, "4733bae2": {"dfnID":"4733bae2","dfnText":"HierarchyRequestError","external":true,"refSections":[{"refs":[{"id":"ref-for-hierarchyrequesterror"}],"title":"6.4. CSS Rules"}],"url":"https://webidl.spec.whatwg.org/#hierarchyrequesterror"}, "49a5f65f": {"dfnID":"49a5f65f","dfnText":"padding-top","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-padding-top"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-box-4/#propdef-padding-top"}, "49a64d88": {"dfnID":"49a64d88","dfnText":"html elements","external":true,"refSections":[{"refs":[{"id":"ref-for-html-elements"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"https://html.spec.whatwg.org/multipage/infrastructure.html#html-elements"}, "4c791d15": {"dfnID":"4c791d15","dfnText":"title","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-title"}],"title":"6.1. CSS Style Sheets"}],"url":"https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-title"}, "4e55d7fb": {"dfnID":"4e55d7fb","dfnText":"@import","external":true,"refSections":[{"refs":[{"id":"ref-for-at-ruledef-import"},{"id":"ref-for-at-ruledef-import\u2460"},{"id":"ref-for-at-ruledef-import\u2461"}],"title":"6.1.2. The CSSStyleSheet Interface"}],"url":"https://drafts.csswg.org/css-cascade-5/#at-ruledef-import"}, "4fdfba4e": {"dfnID":"4fdfba4e","dfnText":"get an encoding","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-encoding-get"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"https://encoding.spec.whatwg.org/#concept-encoding-get"}, "5003dc6f": {"dfnID":"5003dc6f","dfnText":"contributes a script-blocking style sheet","external":true,"refSections":[{"refs":[{"id":"ref-for-contributes-a-script-blocking-style-sheet"}],"title":"6.2. CSS Style Sheet Collections"}],"url":"https://html.spec.whatwg.org/multipage/semantics.html#contributes-a-script-blocking-style-sheet"}, "500f2c1d": {"dfnID":"500f2c1d","dfnText":"border-top-color","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-border-top-color"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-backgrounds-3/#propdef-border-top-color"}, "512e0279": {"dfnID":"512e0279","dfnText":"media","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-media"},{"id":"ref-for-concept-css-style-sheet-media\u2460"}],"title":"6.1. CSS Style Sheets"}],"url":"https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-media"}, "5216e1a0": {"dfnID":"5216e1a0","dfnText":"node document","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-node-document"}],"title":"6.2. CSS Style Sheet Collections"},{"refs":[{"id":"ref-for-concept-node-document\u2460"}],"title":"6.2.3. Extensions to the DocumentOrShadowRoot Interface Mixin"},{"refs":[{"id":"ref-for-concept-node-document\u2461"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"},{"refs":[{"id":"ref-for-concept-node-document\u2462"}],"title":"7.2. Extensions to the Window Interface"}],"url":"https://dom.spec.whatwg.org/#concept-node-document"}, "53275e46": {"dfnID":"53275e46","dfnText":"append","external":true,"refSections":[{"refs":[{"id":"ref-for-list-append"}],"title":"6.2. CSS Style Sheet Collections"}],"url":"https://infra.spec.whatwg.org/#list-append"}, "5348b29d": {"dfnID":"5348b29d","dfnText":"padding-block-start","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-padding-block-start"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-logical-1/#propdef-padding-block-start"}, "5372cca8": {"dfnID":"5372cca8","dfnText":"boolean","external":true,"refSections":[{"refs":[{"id":"ref-for-idl-boolean"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-idl-boolean\u2460"}],"title":"6.1.2. The CSSStyleSheet Interface"}],"url":"https://webidl.spec.whatwg.org/#idl-boolean"}, "5442ea33": {"dfnID":"5442ea33","dfnText":"URL serializer","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-url-serializer"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"},{"refs":[{"id":"ref-for-concept-url-serializer\u2460"}],"title":"6.3.5. Requirements on user agents Implementing the HTTP Link Header"}],"url":"https://url.spec.whatwg.org/#concept-url-serializer"}, "55213b5b": {"dfnID":"55213b5b","dfnText":"request","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-request"},{"id":"ref-for-concept-request\u2460"}],"title":"6.3.1. Fetching CSS style sheets"}],"url":"https://fetch.spec.whatwg.org/#concept-request"}, "55e8f5de": {"dfnID":"55e8f5de","dfnText":"none","external":true,"refSections":[{"refs":[{"id":"ref-for-valdef-display-none"},{"id":"ref-for-valdef-display-none\u2460"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-display-4/#valdef-display-none"}, "569faf4d": {"dfnID":"569faf4d","dfnText":"parse a list of component values","external":true,"refSections":[{"refs":[{"id":"ref-for-parse-a-list-of-component-values"}],"title":"6.7.1. Parsing CSS Values"}],"url":"https://drafts.csswg.org/css-syntax-3/#parse-a-list-of-component-values"}, "57376736": {"dfnID":"57376736","dfnText":"MathMLElement","external":true,"refSections":[{"refs":[{"id":"ref-for-dom-mathmlelement"}],"title":"7.1. \nThe ElementCSSInlineStyle Mixin"}],"url":"https://w3c.github.io/mathml-core/#dom-mathmlelement"}, "59912c93": {"dfnID":"59912c93","dfnText":"code unit","external":true,"refSections":[{"refs":[{"id":"ref-for-code-unit"}],"title":"3. CSSOMString"}],"url":"https://infra.spec.whatwg.org/#code-unit"}, "5c4b7db5": {"dfnID":"5c4b7db5","dfnText":"border-bottom-color","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-border-bottom-color"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-backgrounds-3/#propdef-border-bottom-color"}, "5c59509c": {"dfnID":"5c59509c","dfnText":"name","external":true,"refSections":[{"refs":[{"id":"ref-for-dom-csskeyframesrule-name"}],"title":"6.4. CSS Rules"}],"url":"https://drafts.csswg.org/css-animations-1/#dom-csskeyframesrule-name"}, "5d7209e9": {"dfnID":"5d7209e9","dfnText":"Window","external":true,"refSections":[{"refs":[{"id":"ref-for-window"},{"id":"ref-for-window\u2460"}],"title":"7.2. Extensions to the Window Interface"}],"url":"https://html.spec.whatwg.org/multipage/nav-history-apis.html#window"}, "5ec1baf3": {"dfnID":"5ec1baf3","dfnText":"namespace prefix","external":true,"refSections":[{"refs":[{"id":"ref-for-namespace-prefix"},{"id":"ref-for-namespace-prefix\u2460"},{"id":"ref-for-namespace-prefix\u2461"},{"id":"ref-for-namespace-prefix\u2462"},{"id":"ref-for-namespace-prefix\u2463"},{"id":"ref-for-namespace-prefix\u2464"}],"title":"5.2. Serializing Selectors"}],"url":"https://drafts.csswg.org/css-namespaces-3/#namespace-prefix"}, "5f7259bd": {"dfnID":"5f7259bd","dfnText":"pseudo-attribute","external":true,"refSections":[{"refs":[{"id":"ref-for-dt-pseudo-attribute"},{"id":"ref-for-dt-pseudo-attribute\u2460"},{"id":"ref-for-dt-pseudo-attribute\u2461"},{"id":"ref-for-dt-pseudo-attribute\u2462"},{"id":"ref-for-dt-pseudo-attribute\u2463"},{"id":"ref-for-dt-pseudo-attribute\u2464"},{"id":"ref-for-dt-pseudo-attribute\u2465"},{"id":"ref-for-dt-pseudo-attribute\u2466"},{"id":"ref-for-dt-pseudo-attribute\u2467"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"https://www.w3.org/TR/xml-stylesheet/#dt-pseudo-attribute"}, "5f90bbfb": {"dfnID":"5f90bbfb","dfnText":"undefined","external":true,"refSections":[{"refs":[{"id":"ref-for-idl-undefined"},{"id":"ref-for-idl-undefined\u2460"}],"title":"4.4. The MediaList Interface"},{"refs":[{"id":"ref-for-idl-undefined\u2461"},{"id":"ref-for-idl-undefined\u2462"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-idl-undefined\u2463"}],"title":"6.1.2.1. Deprecated CSSStyleSheet members"},{"refs":[{"id":"ref-for-idl-undefined\u2464"}],"title":"6.4.5. The CSSGroupingRule Interface"},{"refs":[{"id":"ref-for-idl-undefined\u2465"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"https://webidl.spec.whatwg.org/#idl-undefined"}, "60e9c55d": {"dfnID":"60e9c55d","dfnText":"border-inline-end-color","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-border-inline-end-color"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-borders-4/#propdef-border-inline-end-color"}, "635a5b71": {"dfnID":"635a5b71","dfnText":"border-inline-start-color","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-border-inline-start-color"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-borders-4/#propdef-border-inline-start-color"}, "649608b9": {"dfnID":"649608b9","dfnText":"list","external":true,"refSections":[{"refs":[{"id":"ref-for-list"},{"id":"ref-for-list\u2460"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://infra.spec.whatwg.org/#list"}, "64fba2c3": {"dfnID":"64fba2c3","dfnText":"<counter>","external":true,"refSections":[{"refs":[{"id":"ref-for-typedef-counter"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css-lists-3/#typedef-counter"}, "68019d7a": {"dfnID":"68019d7a","dfnText":"height","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-height"},{"id":"ref-for-propdef-height\u2460"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-sizing-3/#propdef-height"}, "68164446": {"dfnID":"68164446","dfnText":"CSSKeyframeRule","external":true,"refSections":[{"refs":[{"id":"ref-for-csskeyframerule"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-csskeyframerule\u2460"}],"title":"6.4.2. The CSSRule Interface"},{"refs":[{"id":"ref-for-csskeyframerule\u2461"}],"title":"11.1. Changes From 17 March 2016"}],"url":"https://drafts.csswg.org/css-animations-1/#csskeyframerule"}, "6916104d": {"dfnID":"6916104d","dfnText":"box-shadow","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-box-shadow"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-backgrounds-3/#propdef-box-shadow"}, "6a73137f": {"dfnID":"6a73137f","dfnText":"CORS-same-origin","external":true,"refSections":[{"refs":[{"id":"ref-for-cors-same-origin"}],"title":"6.3.1. Fetching CSS style sheets"},{"refs":[{"id":"ref-for-cors-same-origin\u2460"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"},{"refs":[{"id":"ref-for-cors-same-origin\u2461"}],"title":"6.3.5. Requirements on user agents Implementing the HTTP Link Header"}],"url":"https://html.spec.whatwg.org/multipage/urls-and-fetching.html#cors-same-origin"}, "6b116b45": {"dfnID":"6b116b45","dfnText":"origin-clean flag","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-origin-clean-flag"}],"title":"6.1. CSS Style Sheets"}],"url":"https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-origin-clean-flag"}, "6eb8a5d8": {"dfnID":"6eb8a5d8","dfnText":"document base url","external":true,"refSections":[{"refs":[{"id":"ref-for-document-base-url"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"},{"refs":[{"id":"ref-for-document-base-url\u2460"}],"title":"6.3.5. Requirements on user agents Implementing the HTTP Link Header"}],"url":"https://html.spec.whatwg.org/multipage/urls-and-fetching.html#document-base-url"}, "6f0eb5e7": {"dfnID":"6f0eb5e7","dfnText":"xml-stylesheet processing instruction","external":true,"refSections":[{"refs":[{"id":"ref-for-dt-xml-stylesheet"}],"title":"6.3. Style Sheet Association"},{"refs":[{"id":"ref-for-dt-xml-stylesheet\u2460"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"https://www.w3.org/TR/xml-stylesheet/#dt-xml-stylesheet"}, "6f2dfa22": {"dfnID":"6f2dfa22","dfnText":"ASCII lowercase","external":true,"refSections":[{"refs":[{"id":"ref-for-ascii-lowercase"},{"id":"ref-for-ascii-lowercase\u2460"}],"title":"4.2. Serializing Media Queries"},{"refs":[{"id":"ref-for-ascii-lowercase\u2461"},{"id":"ref-for-ascii-lowercase\u2462"},{"id":"ref-for-ascii-lowercase\u2463"},{"id":"ref-for-ascii-lowercase\u2464"},{"id":"ref-for-ascii-lowercase\u2465"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-ascii-lowercase\u2466"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://infra.spec.whatwg.org/#ascii-lowercase"}, "6fba6744": {"dfnID":"6fba6744","dfnText":"following","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-tree-following"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"https://dom.spec.whatwg.org/#concept-tree-following"}, "70c9f859": {"dfnID":"70c9f859","dfnText":"<integer>","external":true,"refSections":[{"refs":[{"id":"ref-for-integer-value"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css-values-4/#integer-value"}, "7397920e": {"dfnID":"7397920e","dfnText":"default","external":true,"refSections":[{"refs":[{"id":"ref-for-valdef-cursor-default"}],"title":"6.4. CSS Rules"}],"url":"https://drafts.csswg.org/css-ui-4/#valdef-cursor-default"}, "73ea1d43": {"dfnID":"73ea1d43","dfnText":"color","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-color"},{"id":"ref-for-propdef-color\u2460"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-color-4/#propdef-color"}, "74c04a49": {"dfnID":"74c04a49","dfnText":"document url","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-document-url"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"},{"refs":[{"id":"ref-for-concept-document-url\u2460"}],"title":"6.3.5. Requirements on user agents Implementing the HTTP Link Header"}],"url":"https://dom.spec.whatwg.org/#concept-document-url"}, "76207212": {"dfnID":"76207212","dfnText":"padding-left","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-padding-left"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-box-4/#propdef-padding-left"}, "76c4403d": {"dfnID":"76c4403d","dfnText":"parse","external":true,"refSections":[{"refs":[{"id":"ref-for-css-parse-something-according-to-a-css-grammar"}],"title":"6.7.2. Serializing CSS Values"},{"refs":[{"id":"ref-for-css-parse-something-according-to-a-css-grammar\u2460"}],"title":"7.2. Extensions to the Window Interface"}],"url":"https://drafts.csswg.org/css-syntax-3/#css-parse-something-according-to-a-css-grammar"}, "77d5a8bc": {"dfnID":"77d5a8bc","dfnText":"parent CSS style sheet","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-css-rule-parent-css-style-sheet"}],"title":"6.1. CSS Style Sheets"}],"url":"https://drafts.csswg.org/cssom-1/#concept-css-rule-parent-css-style-sheet"}, "79663d83": {"dfnID":"79663d83","dfnText":"<alpha-value>","external":true,"refSections":[{"refs":[{"id":"ref-for-typedef-color-alpha-value"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css-color-4/#typedef-color-alpha-value"}, "797018a7": {"dfnID":"797018a7","dfnText":"InvalidStateError","external":true,"refSections":[{"refs":[{"id":"ref-for-invalidstateerror"},{"id":"ref-for-invalidstateerror\u2460"}],"title":"6.4. CSS Rules"}],"url":"https://webidl.spec.whatwg.org/#invalidstateerror"}, "7b0d918d": {"dfnID":"7b0d918d","dfnText":"break","external":true,"refSections":[{"refs":[{"id":"ref-for-iteration-break"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"https://infra.spec.whatwg.org/#iteration-break"}, "7b5a0ddb": {"dfnID":"7b5a0ddb","dfnText":"border-block-start-color","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-border-block-start-color"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-borders-4/#propdef-border-block-start-color"}, "7e107ca0": {"dfnID":"7e107ca0","dfnText":"alternate flag","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-alternate-flag"}],"title":"6.1. CSS Style Sheets"}],"url":"https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-alternate-flag"}, "7e4aa58b": {"dfnID":"7e4aa58b","dfnText":"environment encoding","external":true,"refSections":[{"refs":[{"id":"ref-for-environment-encoding"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"https://drafts.csswg.org/css-syntax-3/#environment-encoding"}, "811df97e": {"dfnID":"811df97e","dfnText":"backing list","external":true,"refSections":[{"refs":[{"id":"ref-for-observable-array-attribute-backing-list"}],"title":"6.2. CSS Style Sheet Collections"}],"url":"https://webidl.spec.whatwg.org/#observable-array-attribute-backing-list"}, "82ca3efc": {"dfnID":"82ca3efc","dfnText":"TypeError","external":true,"refSections":[{"refs":[{"id":"ref-for-exceptiondef-typeerror"}],"title":"11.1. Changes From 17 March 2016"}],"url":"https://webidl.spec.whatwg.org/#exceptiondef-typeerror"}, "83120856": {"dfnID":"83120856","dfnText":"CSSKeyframesRule","external":true,"refSections":[{"refs":[{"id":"ref-for-csskeyframesrule"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-csskeyframesrule\u2460"}],"title":"6.4.2. The CSSRule Interface"},{"refs":[{"id":"ref-for-csskeyframesrule\u2461"}],"title":"11.1. Changes From 17 March 2016"}],"url":"https://drafts.csswg.org/css-animations-1/#csskeyframesrule"}, "84540613": {"dfnID":"84540613","dfnText":"universal selector","external":true,"refSections":[{"refs":[{"id":"ref-for-universal-selector"},{"id":"ref-for-universal-selector\u2460"}],"title":"5.2. Serializing Selectors"}],"url":"https://drafts.csswg.org/selectors-4/#universal-selector"}, "85394472": {"dfnID":"85394472","dfnText":"Document","external":true,"refSections":[{"refs":[{"id":"ref-for-document"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-document\u2460"}],"title":"6.4.2. The CSSRule Interface"},{"refs":[{"id":"ref-for-document\u2461"}],"title":"11.1. Changes From 17 March 2016"},{"refs":[{"id":"ref-for-document\u2462"}],"title":"11.2. Changes From 5 December 2013"}],"url":"https://dom.spec.whatwg.org/#document"}, "86928bde": {"dfnID":"86928bde","dfnText":"overflow","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-overflow"}],"title":"7.2. Extensions to the Window Interface"}],"url":"https://drafts.csswg.org/css-overflow-3/#propdef-overflow"}, "88481cb9": {"dfnID":"88481cb9","dfnText":"interlace","external":true,"refSections":[{"refs":[{"id":"ref-for-valdef-media-scan-interlace"}],"title":"4.2.1. Serializing Media Feature Values"}],"url":"https://drafts.csswg.org/mediaqueries-4/#valdef-media-scan-interlace"}, "8855a9aa": {"dfnID":"8855a9aa","dfnText":"DOMString","external":true,"refSections":[{"refs":[{"id":"ref-for-idl-DOMString"},{"id":"ref-for-idl-DOMString\u2460"}],"title":"3. CSSOMString"},{"refs":[{"id":"ref-for-idl-DOMString\u2461"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-idl-DOMString\u2462"},{"id":"ref-for-idl-DOMString\u2463"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-idl-DOMString\u2464"},{"id":"ref-for-idl-DOMString\u2465"}],"title":"6.1.2.1. Deprecated CSSStyleSheet members"}],"url":"https://webidl.spec.whatwg.org/#idl-DOMString"}, "88643fe0": {"dfnID":"88643fe0","dfnText":"width","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-width"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-sizing-3/#propdef-width"}, "889e932f": {"dfnID":"889e932f","dfnText":"Exposed","external":true,"refSections":[{"refs":[{"id":"ref-for-Exposed"}],"title":"4.4. The MediaList Interface"},{"refs":[{"id":"ref-for-Exposed\u2460"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-Exposed\u2461"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-Exposed\u2462"}],"title":"6.2.2. The StyleSheetList Interface"},{"refs":[{"id":"ref-for-Exposed\u2463"}],"title":"6.4.1. The CSSRuleList Interface"},{"refs":[{"id":"ref-for-Exposed\u2464"}],"title":"6.4.2. The CSSRule Interface"},{"refs":[{"id":"ref-for-Exposed\u2465"}],"title":"6.4.3. The CSSStyleRule Interface"},{"refs":[{"id":"ref-for-Exposed\u2466"}],"title":"6.4.4. The CSSImportRule Interface"},{"refs":[{"id":"ref-for-Exposed\u2467"}],"title":"6.4.5. The CSSGroupingRule Interface"},{"refs":[{"id":"ref-for-Exposed\u2468"},{"id":"ref-for-Exposed\u2460\u24ea"}],"title":"6.4.7. The CSSPageRule Interface"},{"refs":[{"id":"ref-for-Exposed\u2460\u2460"}],"title":"6.4.8. The CSSMarginRule Interface"},{"refs":[{"id":"ref-for-Exposed\u2460\u2461"}],"title":"6.4.9. The CSSNamespaceRule Interface"},{"refs":[{"id":"ref-for-Exposed\u2460\u2462"},{"id":"ref-for-Exposed\u2460\u2463"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-Exposed\u2460\u2464"}],"title":"8.1. The CSS.escape() Method"}],"url":"https://webidl.spec.whatwg.org/#Exposed"}, "8a0619b3": {"dfnID":"8a0619b3","dfnText":"padding-inline-end","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-padding-inline-end"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-logical-1/#propdef-padding-inline-end"}, "8a3cbc07": {"dfnID":"8a3cbc07","dfnText":"set an attribute value","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-element-attributes-set-value"}],"title":"6.6. CSS Declaration Blocks"}],"url":"https://dom.spec.whatwg.org/#concept-element-attributes-set-value"}, "8a82fda1": {"dfnID":"8a82fda1","dfnText":"||","external":true,"refSections":[{"refs":[{"id":"ref-for-comb-any"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css-values-4/#comb-any"}, "8c3a081a": {"dfnID":"8c3a081a","dfnText":"inset-inline-end","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-inset-inline-end"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-position-3/#propdef-inset-inline-end"}, "8ca0e73e": {"dfnID":"8ca0e73e","dfnText":"mapping logic","external":true,"refSections":[{"refs":[{"id":"ref-for-mapping-logic"}],"title":"6.6. CSS Declaration Blocks"},{"refs":[{"id":"ref-for-mapping-logic\u2460"},{"id":"ref-for-mapping-logic\u2461"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"https://drafts.csswg.org/css-logical-1/#mapping-logic"}, "8d984e64": {"dfnID":"8d984e64","dfnText":"encoding","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-document-encoding"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"https://dom.spec.whatwg.org/#concept-document-encoding"}, "8e0f26cc": {"dfnID":"8e0f26cc","dfnText":"caret-color","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-caret-color"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-ui-4/#propdef-caret-color"}, "9112c920": {"dfnID":"9112c920","dfnText":"border-left-color","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-border-left-color"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-backgrounds-3/#propdef-border-left-color"}, "93665f4c": {"dfnID":"93665f4c","dfnText":"parse a block's contents","external":true,"refSections":[{"refs":[{"id":"ref-for-parse-a-blocks-contents"}],"title":"6.6. CSS Declaration Blocks"}],"url":"https://drafts.csswg.org/css-syntax-3/#parse-a-blocks-contents"}, "93b034d7": {"dfnID":"93b034d7","dfnText":"SVGElement","external":true,"refSections":[{"refs":[{"id":"ref-for-InterfaceSVGElement"}],"title":"7.1. \nThe ElementCSSInlineStyle Mixin"}],"url":"https://svgwg.org/svg2-draft/types.html#InterfaceSVGElement"}, "9470c703": {"dfnID":"9470c703","dfnText":"none","external":true,"refSections":[{"refs":[{"id":"ref-for-valdef-anchor-name-none"}],"title":"6.4. CSS Rules"}],"url":"https://drafts.csswg.org/css-anchor-position-1/#valdef-anchor-name-none"}, "95e60ae4": {"dfnID":"95e60ae4","dfnText":"base URL","external":true,"refSections":[{"refs":[{"id":"ref-for-link-options-base-url"}],"title":"6.1. CSS Style Sheets"}],"url":"https://html.spec.whatwg.org/multipage/semantics.html#link-options-base-url"}, "9638f92b": {"dfnID":"9638f92b","dfnText":"connected","external":true,"refSections":[{"refs":[{"id":"ref-for-connected"}],"title":"7.2. Extensions to the Window Interface"}],"url":"https://dom.spec.whatwg.org/#connected"}, "975ace19": {"dfnID":"975ace19","dfnText":"CSSCounterStyleRule","external":true,"refSections":[{"refs":[{"id":"ref-for-csscounterstylerule"}],"title":"6.4.2. The CSSRule Interface"}],"url":"https://drafts.csswg.org/css-counter-styles-3/#csscounterstylerule"}, "977d3003": {"dfnID":"977d3003","dfnText":"<string>","external":true,"refSections":[{"refs":[{"id":"ref-for-string-value"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css-values-4/#string-value"}, "98beee05": {"dfnID":"98beee05","dfnText":"progressive","external":true,"refSections":[{"refs":[{"id":"ref-for-valdef-media-scan-progressive"}],"title":"4.2.1. Serializing Media Feature Values"}],"url":"https://drafts.csswg.org/mediaqueries-4/#valdef-media-scan-progressive"}, "99e2a3d1": {"dfnID":"99e2a3d1","dfnText":"owner CSS rule","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-owner-css-rule"}],"title":"6.1. CSS Style Sheets"}],"url":"https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-owner-css-rule"}, "9ac2aadf": {"dfnID":"9ac2aadf","dfnText":"DocumentOrShadowRoot","external":true,"refSections":[{"refs":[{"id":"ref-for-documentorshadowroot"},{"id":"ref-for-documentorshadowroot\u2460"},{"id":"ref-for-documentorshadowroot\u2461"},{"id":"ref-for-documentorshadowroot\u2462"},{"id":"ref-for-documentorshadowroot\u2463"}],"title":"6.2. CSS Style Sheet Collections"},{"refs":[{"id":"ref-for-documentorshadowroot\u2464"},{"id":"ref-for-documentorshadowroot\u2465"},{"id":"ref-for-documentorshadowroot\u2466"}],"title":"6.2.3. Extensions to the DocumentOrShadowRoot Interface Mixin"},{"refs":[{"id":"ref-for-documentorshadowroot\u2467"}],"title":"11.1. Changes From 17 March 2016"}],"url":"https://dom.spec.whatwg.org/#documentorshadowroot"}, "9af0059d": {"dfnID":"9af0059d","dfnText":"cssRules","external":true,"refSections":[{"refs":[{"id":"ref-for-dom-csskeyframesrule-cssrules"}],"title":"6.4. CSS Rules"}],"url":"https://drafts.csswg.org/css-animations-1/#dom-csskeyframesrule-cssrules"}, "9bcac82c": {"dfnID":"9bcac82c","dfnText":"get an attribute by namespace and local name","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-element-attributes-get-by-namespace"}],"title":"6.6. CSS Declaration Blocks"}],"url":"https://dom.spec.whatwg.org/#concept-element-attributes-get-by-namespace"}, "9bf5ff7b": {"dfnID":"9bf5ff7b","dfnText":"parse a rule","external":true,"refSections":[{"refs":[{"id":"ref-for-parse-a-rule"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-parse-a-rule\u2460"}],"title":"6.4. CSS Rules"}],"url":"https://drafts.csswg.org/css-syntax-3/#parse-a-rule"}, "9cd25054": {"dfnID":"9cd25054","dfnText":"computed value","external":true,"refSections":[{"refs":[{"id":"ref-for-computed-value"}],"title":"7.2. Extensions to the Window Interface"},{"refs":[{"id":"ref-for-computed-value\u2460"},{"id":"ref-for-computed-value\u2461"},{"id":"ref-for-computed-value\u2462"},{"id":"ref-for-computed-value\u2463"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-cascade-5/#computed-value"}, "9d7987cb": {"dfnID":"9d7987cb","dfnText":"border-right-color","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-border-right-color"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-backgrounds-3/#propdef-border-right-color"}, "9ddea951": {"dfnID":"9ddea951","dfnText":"px","external":true,"refSections":[{"refs":[{"id":"ref-for-px"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css-values-4/#px"}, "9e81ae64": {"dfnID":"9e81ae64","dfnText":"content-type metadata","external":true,"refSections":[{"refs":[{"id":"ref-for-content-type"},{"id":"ref-for-content-type\u2460"}],"title":"6.3.1. Fetching CSS style sheets"}],"url":"https://html.spec.whatwg.org/multipage/infrastructure.html#content-type"}, "9eda9b58": {"dfnID":"9eda9b58","dfnText":"NotFoundError","external":true,"refSections":[{"refs":[{"id":"ref-for-notfounderror"}],"title":"4.4. The MediaList Interface"}],"url":"https://webidl.spec.whatwg.org/#notfounderror"}, "9ee4a8b2": {"dfnID":"9ee4a8b2","dfnText":"contents","external":true,"refSections":[{"refs":[{"id":"ref-for-valdef-display-contents"},{"id":"ref-for-valdef-display-contents\u2460"}],"title":"9. Resolved Values"},{"refs":[{"id":"ref-for-valdef-display-contents\u2461"}],"title":"11.1. Changes From 17 March 2016"}],"url":"https://drafts.csswg.org/css-display-4/#valdef-display-contents"}, "MediaList-stringification-behavior": {"dfnID":"MediaList-stringification-behavior","dfnText":"stringifier","external":false,"refSections":[],"url":"#MediaList-stringification-behavior"}, "a1d979ac": {"dfnID":"a1d979ac","dfnText":"disabled flag","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-disabled-flag"}],"title":"6.1. CSS Style Sheets"}],"url":"https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-disabled-flag"}, "a33db89a": {"dfnID":"a33db89a","dfnText":"fetch","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-fetch"}],"title":"6.3.1. Fetching CSS style sheets"},{"refs":[{"id":"ref-for-concept-fetch\u2460"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"https://fetch.spec.whatwg.org/#concept-fetch"}, "a3fb968a": {"dfnID":"a3fb968a","dfnText":"surrogate","external":true,"refSections":[{"refs":[{"id":"ref-for-surrogate"},{"id":"ref-for-surrogate\u2460"}],"title":"3. CSSOMString"}],"url":"https://infra.spec.whatwg.org/#surrogate"}, "a4eb3c57": {"dfnID":"a4eb3c57","dfnText":"used value","external":true,"refSections":[{"refs":[{"id":"ref-for-used-value"},{"id":"ref-for-used-value\u2460"},{"id":"ref-for-used-value\u2461"},{"id":"ref-for-used-value\u2462"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-cascade-5/#used-value"}, "a50a11ab": {"dfnID":"a50a11ab","dfnText":"in a document tree","external":true,"refSections":[{"refs":[{"id":"ref-for-in-a-document-tree"}],"title":"6.1. CSS Style Sheets"}],"url":"https://dom.spec.whatwg.org/#in-a-document-tree"}, "a527e9ca": {"dfnID":"a527e9ca","dfnText":"ASCII uppercase","external":true,"refSections":[{"refs":[{"id":"ref-for-ascii-uppercase"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"https://infra.spec.whatwg.org/#ascii-uppercase"}, "a58a3cd8": {"dfnID":"a58a3cd8","dfnText":"bottom","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-bottom"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-position-3/#propdef-bottom"}, "a5c91173": {"dfnID":"a5c91173","dfnText":"SameObject","external":true,"refSections":[{"refs":[{"id":"ref-for-SameObject"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-SameObject\u2460"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-SameObject\u2461"}],"title":"6.1.2.1. Deprecated CSSStyleSheet members"},{"refs":[{"id":"ref-for-SameObject\u2462"}],"title":"6.2.3. Extensions to the DocumentOrShadowRoot Interface Mixin"},{"refs":[{"id":"ref-for-SameObject\u2463"}],"title":"6.4.3. The CSSStyleRule Interface"},{"refs":[{"id":"ref-for-SameObject\u2464"},{"id":"ref-for-SameObject\u2465"}],"title":"6.4.4. The CSSImportRule Interface"},{"refs":[{"id":"ref-for-SameObject\u2466"}],"title":"6.4.5. The CSSGroupingRule Interface"},{"refs":[{"id":"ref-for-SameObject\u2467"}],"title":"6.4.7. The CSSPageRule Interface"},{"refs":[{"id":"ref-for-SameObject\u2468"}],"title":"6.4.8. The CSSMarginRule Interface"},{"refs":[{"id":"ref-for-SameObject\u2460\u24ea"}],"title":"7.1. \nThe ElementCSSInlineStyle Mixin"}],"url":"https://webidl.spec.whatwg.org/#SameObject"}, "a6e20c61": {"dfnID":"a6e20c61","dfnText":"margin-inline-start","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-margin-inline-start"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-logical-1/#propdef-margin-inline-start"}, "a72449dd": {"dfnID":"a72449dd","dfnText":"in parallel","external":true,"refSections":[{"refs":[{"id":"ref-for-in-parallel"}],"title":"6.1.2. The CSSStyleSheet Interface"}],"url":"https://html.spec.whatwg.org/multipage/infrastructure.html#in-parallel"}, "a84c14c9": {"dfnID":"a84c14c9","dfnText":"document","external":true,"refSections":[{"refs":[{"id":"ref-for-clone-a-node-document"},{"id":"ref-for-clone-a-node-document\u2460"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"https://dom.spec.whatwg.org/#clone-a-node-document"}, "a8fe91d7": {"dfnID":"a8fe91d7","dfnText":"font-weight","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-font-weight"},{"id":"ref-for-propdef-font-weight\u2460"}],"title":"6.4. CSS Rules"}],"url":"https://drafts.csswg.org/css-fonts-4/#propdef-font-weight"}, "a942934d": {"dfnID":"a942934d","dfnText":"<whitespace-token>","external":true,"refSections":[{"refs":[{"id":"ref-for-typedef-whitespace-token"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css-syntax-3/#typedef-whitespace-token"}, "aa155dab": {"dfnID":"aa155dab","dfnText":"webkit-cased attribute","external":true,"refSections":[{"refs":[{"id":"ref-for-dom-cssstyledeclaration-webkit-cased-attribute"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"https://www.w3.org/TR/cssom-1/#dom-cssstyledeclaration-webkit-cased-attribute"}, "aaf6abed": {"dfnID":"aaf6abed","dfnText":"margin-left","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-margin-left"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-box-4/#propdef-margin-left"}, "ad065a5c": {"dfnID":"ad065a5c","dfnText":"margin-right","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-margin-right"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-box-4/#propdef-margin-right"}, "ad337600": {"dfnID":"ad337600","dfnText":"<pseudo-element-selector>","external":true,"refSections":[{"refs":[{"id":"ref-for-typedef-pseudo-element-selector"}],"title":"7.2. Extensions to the Window Interface"}],"url":"https://drafts.csswg.org/selectors-4/#typedef-pseudo-element-selector"}, "ad49d317": {"dfnID":"ad49d317","dfnText":"inset-block-start","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-inset-block-start"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-position-3/#propdef-inset-block-start"}, "add-a-css-style-sheet": {"dfnID":"add-a-css-style-sheet","dfnText":"add a CSS style sheet","external":false,"refSections":[{"refs":[{"id":"ref-for-add-a-css-style-sheet"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-add-a-css-style-sheet\u2460"}],"title":"6.2. CSS Style Sheet Collections"}],"url":"#add-a-css-style-sheet"}, "associated-css-style-sheet": {"dfnID":"associated-css-style-sheet","dfnText":"associated CSS style sheet","external":false,"refSections":[{"refs":[{"id":"ref-for-associated-css-style-sheet"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-associated-css-style-sheet\u2460"},{"id":"ref-for-associated-css-style-sheet\u2461"}],"title":"6.3.2. The LinkStyle Interface"},{"refs":[{"id":"ref-for-associated-css-style-sheet\u2462"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"#associated-css-style-sheet"}, "b08d0bb2": {"dfnID":"b08d0bb2","dfnText":"HTMLElement","external":true,"refSections":[{"refs":[{"id":"ref-for-htmlelement"}],"title":"7.1. \nThe ElementCSSInlineStyle Mixin"}],"url":"https://html.spec.whatwg.org/multipage/dom.html#htmlelement"}, "b0b8d8c0": {"dfnID":"b0b8d8c0","dfnText":"right","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-right"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-position-3/#propdef-right"}, "b0d7f3c3": {"dfnID":"b0d7f3c3","dfnText":"USVString","external":true,"refSections":[{"refs":[{"id":"ref-for-idl-USVString"},{"id":"ref-for-idl-USVString\u2460"},{"id":"ref-for-idl-USVString\u2461"}],"title":"3. CSSOMString"},{"refs":[{"id":"ref-for-idl-USVString\u2462"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-idl-USVString\u2463"},{"id":"ref-for-idl-USVString\u2464"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-idl-USVString\u2465"}],"title":"6.4.4. The CSSImportRule Interface"}],"url":"https://webidl.spec.whatwg.org/#idl-USVString"}, "b5447e8b": {"dfnID":"b5447e8b","dfnText":"custom property","external":true,"refSections":[{"refs":[{"id":"ref-for-custom-property"}],"title":"2. Terminology"},{"refs":[{"id":"ref-for-custom-property\u2460"},{"id":"ref-for-custom-property\u2461"},{"id":"ref-for-custom-property\u2462"},{"id":"ref-for-custom-property\u2463"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-custom-property\u2464"}],"title":"7.2. Extensions to the Window Interface"},{"refs":[{"id":"ref-for-custom-property\u2465"}],"title":"11.1. Changes From 17 March 2016"}],"url":"https://drafts.csswg.org/css-variables-1/#custom-property"}, "ba556545": {"dfnID":"ba556545","dfnText":"NotAllowedError","external":true,"refSections":[{"refs":[{"id":"ref-for-notallowederror"},{"id":"ref-for-notallowederror\u2460"},{"id":"ref-for-notallowederror\u2461"},{"id":"ref-for-notallowederror\u2462"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-notallowederror\u2463"}],"title":"6.2.3. Extensions to the DocumentOrShadowRoot Interface Mixin"}],"url":"https://webidl.spec.whatwg.org/#notallowederror"}, "ba80b0b1": {"dfnID":"ba80b0b1","dfnText":"<family-name>","external":true,"refSections":[{"refs":[{"id":"ref-for-family-name-value"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css-fonts-4/#family-name-value"}, "ba920583": {"dfnID":"ba920583","dfnText":"style","external":true,"refSections":[{"refs":[{"id":"ref-for-the-style-element"},{"id":"ref-for-the-style-element\u2460"}],"title":"6.3.2. The LinkStyle Interface"}],"url":"https://html.spec.whatwg.org/multipage/semantics.html#the-style-element"}, "bbc31c9d": {"dfnID":"bbc31c9d","dfnText":"location","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-location"}],"title":"6.1. CSS Style Sheets"}],"url":"https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-location"}, "bd3d9ccd": {"dfnID":"bd3d9ccd","dfnText":"media query","external":true,"refSections":[{"refs":[{"id":"ref-for-media-query"},{"id":"ref-for-media-query\u2460"}],"title":"4. Media Queries"},{"refs":[{"id":"ref-for-media-query\u2461"},{"id":"ref-for-media-query\u2462"},{"id":"ref-for-media-query\u2463"}],"title":"4.2. Serializing Media Queries"}],"url":"https://drafts.csswg.org/mediaqueries-5/#media-query"}, "bdad9fe9": {"dfnID":"bdad9fe9","dfnText":"::before","external":true,"refSections":[{"refs":[{"id":"ref-for-sel-before"}],"title":"2. Terminology"}],"url":"https://drafts.csswg.org/selectors-3/#sel-before"}, "bdbd19d1": {"dfnID":"bdbd19d1","dfnText":"Promise","external":true,"refSections":[{"refs":[{"id":"ref-for-idl-promise"}],"title":"6.1.2. The CSSStyleSheet Interface"}],"url":"https://webidl.spec.whatwg.org/#idl-promise"}, "be2d2b4c": {"dfnID":"be2d2b4c","dfnText":"SyntaxError","external":true,"refSections":[{"refs":[{"id":"ref-for-syntaxerror"},{"id":"ref-for-syntaxerror\u2460"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-syntaxerror\u2461"},{"id":"ref-for-syntaxerror\u2462"}],"title":"6.4. CSS Rules"}],"url":"https://webidl.spec.whatwg.org/#syntaxerror"}, "c095490e": {"dfnID":"c095490e","dfnText":"ProcessingInstruction","external":true,"refSections":[{"refs":[{"id":"ref-for-processinginstruction"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-processinginstruction\u2460"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"https://dom.spec.whatwg.org/#processinginstruction"}, "c3e881ef": {"dfnID":"c3e881ef","dfnText":"SecurityError","external":true,"refSections":[{"refs":[{"id":"ref-for-securityerror"},{"id":"ref-for-securityerror\u2460"},{"id":"ref-for-securityerror\u2461"}],"title":"6.1.2. The CSSStyleSheet Interface"}],"url":"https://webidl.spec.whatwg.org/#securityerror"}, "c807e273": {"dfnID":"c807e273","dfnText":"NewObject","external":true,"refSections":[{"refs":[{"id":"ref-for-NewObject"}],"title":"7.2. Extensions to the Window Interface"}],"url":"https://webidl.spec.whatwg.org/#NewObject"}, "c8dc22e7": {"dfnID":"c8dc22e7","dfnText":"keyword","external":true,"refSections":[{"refs":[{"id":"ref-for-css-keyword"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css-values-4/#css-keyword"}, "c90d9be6": {"dfnID":"c90d9be6","dfnText":"::slotted()","external":true,"refSections":[{"refs":[{"id":"ref-for-selectordef-slotted"}],"title":"7.2. Extensions to the Window Interface"},{"refs":[{"id":"ref-for-selectordef-slotted\u2460"}],"title":"11.1. Changes From 17 March 2016"}],"url":"https://drafts.csswg.org/css-scoping-1/#selectordef-slotted"}, "c93b716b": {"dfnID":"c93b716b","dfnText":"media type","external":true,"refSections":[{"refs":[{"id":"ref-for-media-type"}],"title":"4.2. Serializing Media Queries"}],"url":"https://drafts.csswg.org/mediaqueries-5/#media-type"}, "c9dac9f9": {"dfnID":"c9dac9f9","dfnText":"IndexSizeError","external":true,"refSections":[{"refs":[{"id":"ref-for-indexsizeerror"},{"id":"ref-for-indexsizeerror\u2460"}],"title":"6.4. CSS Rules"}],"url":"https://webidl.spec.whatwg.org/#indexsizeerror"}, "ca3ca4ae": {"dfnID":"ca3ca4ae","dfnText":"URL parser","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-url-parser"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"},{"refs":[{"id":"ref-for-concept-url-parser\u2460"}],"title":"6.3.5. Requirements on user agents Implementing the HTTP Link Header"}],"url":"https://url.spec.whatwg.org/#concept-url-parser"}, "ca62982f": {"dfnID":"ca62982f","dfnText":"padding-bottom","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-padding-bottom"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-box-4/#propdef-padding-bottom"}, "cad868ce": {"dfnID":"cad868ce","dfnText":"CSSMediaRule","external":true,"refSections":[{"refs":[{"id":"ref-for-cssmediarule"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-cssmediarule\u2460"}],"title":"6.4.2. The CSSRule Interface"},{"refs":[{"id":"ref-for-cssmediarule\u2461"},{"id":"ref-for-cssmediarule\u2462"}],"title":"6.4.6. The CSSMediaRule Interface"}],"url":"https://drafts.csswg.org/css-conditional-3/#cssmediarule"}, "cbfeec00": {"dfnID":"cbfeec00","dfnText":"margin-bottom","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-margin-bottom"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-box-4/#propdef-margin-bottom"}, "cd31890e": {"dfnID":"cd31890e","dfnText":"media query list","external":true,"refSections":[{"refs":[{"id":"ref-for-media-query-list"}],"title":"4.1. Parsing Media Queries"},{"refs":[{"id":"ref-for-media-query-list\u2460"},{"id":"ref-for-media-query-list\u2461"}],"title":"4.2. Serializing Media Queries"}],"url":"https://drafts.csswg.org/mediaqueries-5/#media-query-list"}, "ce3d2bbb": {"dfnID":"ce3d2bbb","dfnText":"current global object","external":true,"refSections":[{"refs":[{"id":"ref-for-current-global-object"},{"id":"ref-for-current-global-object\u2460"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-current-global-object\u2461"}],"title":"8.1. The CSS.escape() Method"}],"url":"https://html.spec.whatwg.org/multipage/webappapis.html#current-global-object"}, "cea6420e": {"dfnID":"cea6420e","dfnText":"a style sheet that is blocking scripts","external":true,"refSections":[{"refs":[{"id":"ref-for-a-style-sheet-that-is-blocking-scripts"}],"title":"6.3.5. Requirements on user agents Implementing the HTTP Link Header"}],"url":"https://html.spec.whatwg.org/multipage/semantics.html#a-style-sheet-that-is-blocking-scripts"}, "change-the-preferred-css-style-sheet-set-name": {"dfnID":"change-the-preferred-css-style-sheet-set-name","dfnText":"change the preferred CSS style sheet set name","external":false,"refSections":[{"refs":[{"id":"ref-for-change-the-preferred-css-style-sheet-set-name"}],"title":"6.2. CSS Style Sheet Collections"},{"refs":[{"id":"ref-for-change-the-preferred-css-style-sheet-set-name\u2460"}],"title":"6.2.1. The HTTP Default-Style Header"}],"url":"#change-the-preferred-css-style-sheet-set-name"}, "compare-media-queries": {"dfnID":"compare-media-queries","dfnText":"compare media queries","external":false,"refSections":[{"refs":[{"id":"ref-for-compare-media-queries"},{"id":"ref-for-compare-media-queries\u2460"}],"title":"4.4. The MediaList Interface"}],"url":"#compare-media-queries"}, "concept-css-rule-child-css-rules": {"dfnID":"concept-css-rule-child-css-rules","dfnText":"child CSS rules","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-rule-child-css-rules"},{"id":"ref-for-concept-css-rule-child-css-rules\u2460"},{"id":"ref-for-concept-css-rule-child-css-rules\u2461"}],"title":"6.4.5. The CSSGroupingRule Interface"}],"url":"#concept-css-rule-child-css-rules"}, "concept-css-rule-parent-css-rule": {"dfnID":"concept-css-rule-parent-css-rule","dfnText":"parent CSS rule","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-rule-parent-css-rule"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-concept-css-rule-parent-css-rule\u2460"}],"title":"6.4.2. The CSSRule Interface"}],"url":"#concept-css-rule-parent-css-rule"}, "concept-css-rule-parent-css-style-sheet": {"dfnID":"concept-css-rule-parent-css-style-sheet","dfnText":"parent CSS style sheet","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-rule-parent-css-style-sheet\u2460"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-concept-css-rule-parent-css-style-sheet\u2461"}],"title":"6.4.2. The CSSRule Interface"}],"url":"#concept-css-rule-parent-css-style-sheet"}, "concept-css-rule-text": {"dfnID":"concept-css-rule-text","dfnText":"text","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-rule-text"},{"id":"ref-for-concept-css-rule-text\u2460"}],"title":"6.1.2. The CSSStyleSheet Interface"}],"url":"#concept-css-rule-text"}, "concept-css-rule-type": {"dfnID":"concept-css-rule-type","dfnText":"type","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-rule-type"},{"id":"ref-for-concept-css-rule-type\u2460"}],"title":"6.4. CSS Rules"}],"url":"#concept-css-rule-type"}, "concept-css-style-sheet-alternate-flag": {"dfnID":"concept-css-style-sheet-alternate-flag","dfnText":"alternate flag","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-alternate-flag\u2460"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-concept-css-style-sheet-alternate-flag\u2461"},{"id":"ref-for-concept-css-style-sheet-alternate-flag\u2462"}],"title":"6.2. CSS Style Sheet Collections"},{"refs":[{"id":"ref-for-concept-css-style-sheet-alternate-flag\u2463"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"},{"refs":[{"id":"ref-for-concept-css-style-sheet-alternate-flag\u2464"}],"title":"6.3.5. Requirements on user agents Implementing the HTTP Link Header"}],"url":"#concept-css-style-sheet-alternate-flag"}, "concept-css-style-sheet-constructed-flag": {"dfnID":"concept-css-style-sheet-constructed-flag","dfnText":"constructed flag","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-constructed-flag"},{"id":"ref-for-concept-css-style-sheet-constructed-flag\u2460"},{"id":"ref-for-concept-css-style-sheet-constructed-flag\u2461"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-concept-css-style-sheet-constructed-flag\u2462"},{"id":"ref-for-concept-css-style-sheet-constructed-flag\u2463"},{"id":"ref-for-concept-css-style-sheet-constructed-flag\u2464"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-concept-css-style-sheet-constructed-flag\u2465"}],"title":"6.2.3. Extensions to the DocumentOrShadowRoot Interface Mixin"}],"url":"#concept-css-style-sheet-constructed-flag"}, "concept-css-style-sheet-constructor-document": {"dfnID":"concept-css-style-sheet-constructor-document","dfnText":"constructor document","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-constructor-document"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-concept-css-style-sheet-constructor-document\u2460"}],"title":"6.2.3. Extensions to the DocumentOrShadowRoot Interface Mixin"}],"url":"#concept-css-style-sheet-constructor-document"}, "concept-css-style-sheet-css-rules": {"dfnID":"concept-css-style-sheet-css-rules","dfnText":"CSS rules","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-css-rules"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-concept-css-style-sheet-css-rules\u2460"},{"id":"ref-for-concept-css-style-sheet-css-rules\u2461"},{"id":"ref-for-concept-css-style-sheet-css-rules\u2462"},{"id":"ref-for-concept-css-style-sheet-css-rules\u2463"},{"id":"ref-for-concept-css-style-sheet-css-rules\u2464"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-concept-css-style-sheet-css-rules\u2465"}],"title":"6.1.2.1. Deprecated CSSStyleSheet members"},{"refs":[{"id":"ref-for-concept-css-style-sheet-css-rules\u2466"}],"title":"6.4.1. The CSSRuleList Interface"}],"url":"#concept-css-style-sheet-css-rules"}, "concept-css-style-sheet-disabled-flag": {"dfnID":"concept-css-style-sheet-disabled-flag","dfnText":"disabled flag","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-disabled-flag\u2460"},{"id":"ref-for-concept-css-style-sheet-disabled-flag\u2461"},{"id":"ref-for-concept-css-style-sheet-disabled-flag\u2462"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-concept-css-style-sheet-disabled-flag\u2463"},{"id":"ref-for-concept-css-style-sheet-disabled-flag\u2464"},{"id":"ref-for-concept-css-style-sheet-disabled-flag\u2465"},{"id":"ref-for-concept-css-style-sheet-disabled-flag\u2466"},{"id":"ref-for-concept-css-style-sheet-disabled-flag\u2467"},{"id":"ref-for-concept-css-style-sheet-disabled-flag\u2468"},{"id":"ref-for-concept-css-style-sheet-disabled-flag\u2460\u24ea"},{"id":"ref-for-concept-css-style-sheet-disabled-flag\u2460\u2460"}],"title":"6.2. CSS Style Sheet Collections"}],"url":"#concept-css-style-sheet-disabled-flag"}, "concept-css-style-sheet-disallow-modification-flag": {"dfnID":"concept-css-style-sheet-disallow-modification-flag","dfnText":"disallow modification flag","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-disallow-modification-flag"},{"id":"ref-for-concept-css-style-sheet-disallow-modification-flag\u2460"},{"id":"ref-for-concept-css-style-sheet-disallow-modification-flag\u2461"},{"id":"ref-for-concept-css-style-sheet-disallow-modification-flag\u2462"},{"id":"ref-for-concept-css-style-sheet-disallow-modification-flag\u2463"},{"id":"ref-for-concept-css-style-sheet-disallow-modification-flag\u2464"}],"title":"6.1.2. The CSSStyleSheet Interface"}],"url":"#concept-css-style-sheet-disallow-modification-flag"}, "concept-css-style-sheet-location": {"dfnID":"concept-css-style-sheet-location","dfnText":"location","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-location\u2460"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-concept-css-style-sheet-location\u2461"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"},{"refs":[{"id":"ref-for-concept-css-style-sheet-location\u2462"}],"title":"6.3.5. Requirements on user agents Implementing the HTTP Link Header"}],"url":"#concept-css-style-sheet-location"}, "concept-css-style-sheet-media": {"dfnID":"concept-css-style-sheet-media","dfnText":"media","external":false,"refSections":[],"url":"#concept-css-style-sheet-media"}, "concept-css-style-sheet-origin-clean-flag": {"dfnID":"concept-css-style-sheet-origin-clean-flag","dfnText":"origin-clean flag","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-origin-clean-flag\u2460"},{"id":"ref-for-concept-css-style-sheet-origin-clean-flag\u2461"},{"id":"ref-for-concept-css-style-sheet-origin-clean-flag\u2462"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-concept-css-style-sheet-origin-clean-flag\u2463"}],"title":"6.2. CSS Style Sheet Collections"},{"refs":[{"id":"ref-for-concept-css-style-sheet-origin-clean-flag\u2464"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"},{"refs":[{"id":"ref-for-concept-css-style-sheet-origin-clean-flag\u2465"}],"title":"6.3.5. Requirements on user agents Implementing the HTTP Link Header"},{"refs":[{"id":"ref-for-concept-css-style-sheet-origin-clean-flag\u2466"}],"title":"7.2. Extensions to the Window Interface"}],"url":"#concept-css-style-sheet-origin-clean-flag"}, "concept-css-style-sheet-owner-css-rule": {"dfnID":"concept-css-style-sheet-owner-css-rule","dfnText":"owner CSS rule","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-owner-css-rule\u2460"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-concept-css-style-sheet-owner-css-rule\u2461"}],"title":"6.2. CSS Style Sheet Collections"},{"refs":[{"id":"ref-for-concept-css-style-sheet-owner-css-rule\u2462"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"},{"refs":[{"id":"ref-for-concept-css-style-sheet-owner-css-rule\u2463"}],"title":"6.3.5. Requirements on user agents Implementing the HTTP Link Header"}],"url":"#concept-css-style-sheet-owner-css-rule"}, "concept-css-style-sheet-owner-node": {"dfnID":"concept-css-style-sheet-owner-node","dfnText":"owner node","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-owner-node\u2460"},{"id":"ref-for-concept-css-style-sheet-owner-node\u2461"},{"id":"ref-for-concept-css-style-sheet-owner-node\u2462"},{"id":"ref-for-concept-css-style-sheet-owner-node\u2463"},{"id":"ref-for-concept-css-style-sheet-owner-node\u2464"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-concept-css-style-sheet-owner-node\u2465"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-concept-css-style-sheet-owner-node\u2466"},{"id":"ref-for-concept-css-style-sheet-owner-node\u2467"},{"id":"ref-for-concept-css-style-sheet-owner-node\u2468"}],"title":"6.2. CSS Style Sheet Collections"},{"refs":[{"id":"ref-for-concept-css-style-sheet-owner-node\u2460\u24ea"}],"title":"6.3. Style Sheet Association"},{"refs":[{"id":"ref-for-concept-css-style-sheet-owner-node\u2460\u2460"}],"title":"6.3.2. The LinkStyle Interface"},{"refs":[{"id":"ref-for-concept-css-style-sheet-owner-node\u2460\u2461"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"},{"refs":[{"id":"ref-for-concept-css-style-sheet-owner-node\u2460\u2462"}],"title":"6.3.5. Requirements on user agents Implementing the HTTP Link Header"}],"url":"#concept-css-style-sheet-owner-node"}, "concept-css-style-sheet-parent-css-style-sheet": {"dfnID":"concept-css-style-sheet-parent-css-style-sheet","dfnText":"parent CSS style sheet","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-parent-css-style-sheet"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-concept-css-style-sheet-parent-css-style-sheet\u2460"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-concept-css-style-sheet-parent-css-style-sheet\u2461"}],"title":"6.2. CSS Style Sheet Collections"},{"refs":[{"id":"ref-for-concept-css-style-sheet-parent-css-style-sheet\u2462"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"},{"refs":[{"id":"ref-for-concept-css-style-sheet-parent-css-style-sheet\u2463"}],"title":"6.3.5. Requirements on user agents Implementing the HTTP Link Header"}],"url":"#concept-css-style-sheet-parent-css-style-sheet"}, "concept-css-style-sheet-stylesheet-base-url": {"dfnID":"concept-css-style-sheet-stylesheet-base-url","dfnText":"stylesheet base URL","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-stylesheet-base-url"}],"title":"6.1. CSS Style Sheets"}],"url":"#concept-css-style-sheet-stylesheet-base-url"}, "concept-css-style-sheet-title": {"dfnID":"concept-css-style-sheet-title","dfnText":"title","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-title\u2460"},{"id":"ref-for-concept-css-style-sheet-title\u2461"},{"id":"ref-for-concept-css-style-sheet-title\u2462"},{"id":"ref-for-concept-css-style-sheet-title\u2463"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-concept-css-style-sheet-title\u2464"},{"id":"ref-for-concept-css-style-sheet-title\u2465"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-concept-css-style-sheet-title\u2466"},{"id":"ref-for-concept-css-style-sheet-title\u2467"},{"id":"ref-for-concept-css-style-sheet-title\u2468"},{"id":"ref-for-concept-css-style-sheet-title\u2460\u24ea"},{"id":"ref-for-concept-css-style-sheet-title\u2460\u2460"},{"id":"ref-for-concept-css-style-sheet-title\u2460\u2461"},{"id":"ref-for-concept-css-style-sheet-title\u2460\u2462"},{"id":"ref-for-concept-css-style-sheet-title\u2460\u2463"}],"title":"6.2. CSS Style Sheet Collections"},{"refs":[{"id":"ref-for-concept-css-style-sheet-title\u2460\u2464"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"},{"refs":[{"id":"ref-for-concept-css-style-sheet-title\u2460\u2465"}],"title":"6.3.5. Requirements on user agents Implementing the HTTP Link Header"}],"url":"#concept-css-style-sheet-title"}, "concept-css-style-sheet-type": {"dfnID":"concept-css-style-sheet-type","dfnText":"type","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-css-style-sheet-type"}],"title":"6.1.1. The StyleSheet Interface"}],"url":"#concept-css-style-sheet-type"}, "concept-declarations-specified-order": {"dfnID":"concept-declarations-specified-order","dfnText":"specified order","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-declarations-specified-order"}],"title":"6.4.3. The CSSStyleRule Interface"},{"refs":[{"id":"ref-for-concept-declarations-specified-order\u2460"}],"title":"6.4.7. The CSSPageRule Interface"},{"refs":[{"id":"ref-for-concept-declarations-specified-order\u2461"}],"title":"6.4.8. The CSSMarginRule Interface"},{"refs":[{"id":"ref-for-concept-declarations-specified-order\u2462"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#concept-declarations-specified-order"}, "concept-shorthands-preferred-order": {"dfnID":"concept-shorthands-preferred-order","dfnText":"preferred order","external":false,"refSections":[{"refs":[{"id":"ref-for-concept-shorthands-preferred-order"}],"title":"6.6. CSS Declaration Blocks"},{"refs":[{"id":"ref-for-concept-shorthands-preferred-order\u2460"}],"title":"6.7.2. Serializing CSS Values"}],"url":"#concept-shorthands-preferred-order"}, "create-a-constructed-cssstylesheet": {"dfnID":"create-a-constructed-cssstylesheet","dfnText":"create a constructed CSSStyleSheet","external":false,"refSections":[{"refs":[{"id":"ref-for-create-a-constructed-cssstylesheet"}],"title":"6.1. CSS Style Sheets"}],"url":"#create-a-constructed-cssstylesheet"}, "create-a-css-style-sheet": {"dfnID":"create-a-css-style-sheet","dfnText":"create a CSS style sheet","external":false,"refSections":[{"refs":[{"id":"ref-for-create-a-css-style-sheet"}],"title":"6.3.3. Requirements on specifications"},{"refs":[{"id":"ref-for-create-a-css-style-sheet\u2460"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"},{"refs":[{"id":"ref-for-create-a-css-style-sheet\u2461"}],"title":"6.3.5. Requirements on user agents Implementing the HTTP Link Header"}],"url":"#create-a-css-style-sheet"}, "create-a-medialist-object": {"dfnID":"create-a-medialist-object","dfnText":"create a MediaList object","external":false,"refSections":[{"refs":[{"id":"ref-for-create-a-medialist-object"},{"id":"ref-for-create-a-medialist-object\u2460"},{"id":"ref-for-create-a-medialist-object\u2461"},{"id":"ref-for-create-a-medialist-object\u2462"}],"title":"6.1. CSS Style Sheets"}],"url":"#create-a-medialist-object"}, "css-declaration": {"dfnID":"css-declaration","dfnText":"CSS declaration","external":false,"refSections":[{"refs":[{"id":"ref-for-css-declaration"}],"title":"6.5. CSS Declarations"},{"refs":[{"id":"ref-for-css-declaration\u2460"},{"id":"ref-for-css-declaration\u2461"},{"id":"ref-for-css-declaration\u2462"},{"id":"ref-for-css-declaration\u2463"},{"id":"ref-for-css-declaration\u2464"},{"id":"ref-for-css-declaration\u2465"},{"id":"ref-for-css-declaration\u2466"}],"title":"6.6. CSS Declaration Blocks"},{"refs":[{"id":"ref-for-css-declaration\u2467"},{"id":"ref-for-css-declaration\u2468"},{"id":"ref-for-css-declaration\u2460\u24ea"},{"id":"ref-for-css-declaration\u2460\u2460"},{"id":"ref-for-css-declaration\u2460\u2461"},{"id":"ref-for-css-declaration\u2460\u2462"},{"id":"ref-for-css-declaration\u2460\u2463"},{"id":"ref-for-css-declaration\u2460\u2464"},{"id":"ref-for-css-declaration\u2460\u2465"},{"id":"ref-for-css-declaration\u2460\u2466"},{"id":"ref-for-css-declaration\u2460\u2467"},{"id":"ref-for-css-declaration\u2460\u2468"},{"id":"ref-for-css-declaration\u2461\u24ea"},{"id":"ref-for-css-declaration\u2461\u2460"},{"id":"ref-for-css-declaration\u2461\u2461"},{"id":"ref-for-css-declaration\u2461\u2462"},{"id":"ref-for-css-declaration\u2461\u2463"},{"id":"ref-for-css-declaration\u2461\u2464"},{"id":"ref-for-css-declaration\u2461\u2465"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-css-declaration\u2461\u2466"},{"id":"ref-for-css-declaration\u2461\u2467"}],"title":"6.7.2. Serializing CSS Values"},{"refs":[{"id":"ref-for-css-declaration\u2461\u2468"}],"title":"7.2. Extensions to the Window Interface"}],"url":"#css-declaration"}, "css-declaration-block": {"dfnID":"css-declaration-block","dfnText":"CSS declaration block","external":false,"refSections":[{"refs":[{"id":"ref-for-css-declaration-block"},{"id":"ref-for-css-declaration-block\u2460"},{"id":"ref-for-css-declaration-block\u2461"},{"id":"ref-for-css-declaration-block\u2462"},{"id":"ref-for-css-declaration-block\u2463"},{"id":"ref-for-css-declaration-block\u2464"},{"id":"ref-for-css-declaration-block\u2465"}],"title":"6.6. CSS Declaration Blocks"},{"refs":[{"id":"ref-for-css-declaration-block\u2466"},{"id":"ref-for-css-declaration-block\u2467"},{"id":"ref-for-css-declaration-block\u2468"},{"id":"ref-for-css-declaration-block\u2460\u24ea"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-css-declaration-block\u2460\u2460"}],"title":"7.1. \nThe ElementCSSInlineStyle Mixin"}],"url":"#css-declaration-block"}, "css-declaration-case-sensitive-flag": {"dfnID":"css-declaration-case-sensitive-flag","dfnText":"case-sensitive flag","external":false,"refSections":[],"url":"#css-declaration-case-sensitive-flag"}, "css-declaration-important-flag": {"dfnID":"css-declaration-important-flag","dfnText":"important flag","external":false,"refSections":[{"refs":[{"id":"ref-for-css-declaration-important-flag"},{"id":"ref-for-css-declaration-important-flag\u2460"},{"id":"ref-for-css-declaration-important-flag\u2461"}],"title":"6.6. CSS Declaration Blocks"},{"refs":[{"id":"ref-for-css-declaration-important-flag\u2462"},{"id":"ref-for-css-declaration-important-flag\u2463"},{"id":"ref-for-css-declaration-important-flag\u2464"},{"id":"ref-for-css-declaration-important-flag\u2465"},{"id":"ref-for-css-declaration-important-flag\u2466"},{"id":"ref-for-css-declaration-important-flag\u2467"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#css-declaration-important-flag"}, "css-declaration-property-name": {"dfnID":"css-declaration-property-name","dfnText":"property name","external":false,"refSections":[{"refs":[{"id":"ref-for-css-declaration-property-name"}],"title":"6.5. CSS Declarations"},{"refs":[{"id":"ref-for-css-declaration-property-name\u2460"},{"id":"ref-for-css-declaration-property-name\u2461"},{"id":"ref-for-css-declaration-property-name\u2462"}],"title":"6.6. CSS Declaration Blocks"},{"refs":[{"id":"ref-for-css-declaration-property-name\u2463"},{"id":"ref-for-css-declaration-property-name\u2464"},{"id":"ref-for-css-declaration-property-name\u2465"},{"id":"ref-for-css-declaration-property-name\u2466"},{"id":"ref-for-css-declaration-property-name\u2467"},{"id":"ref-for-css-declaration-property-name\u2468"},{"id":"ref-for-css-declaration-property-name\u2460\u24ea"},{"id":"ref-for-css-declaration-property-name\u2460\u2460"},{"id":"ref-for-css-declaration-property-name\u2460\u2461"},{"id":"ref-for-css-declaration-property-name\u2460\u2462"},{"id":"ref-for-css-declaration-property-name\u2460\u2463"},{"id":"ref-for-css-declaration-property-name\u2460\u2464"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#css-declaration-property-name"}, "css-declaration-value": {"dfnID":"css-declaration-value","dfnText":"value","external":false,"refSections":[{"refs":[{"id":"ref-for-css-declaration-value"},{"id":"ref-for-css-declaration-value\u2460"},{"id":"ref-for-css-declaration-value\u2461"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#css-declaration-value"}, "css-property-to-idl-attribute": {"dfnID":"css-property-to-idl-attribute","dfnText":"CSS property to IDL attribute","external":false,"refSections":[{"refs":[{"id":"ref-for-css-property-to-idl-attribute"},{"id":"ref-for-css-property-to-idl-attribute\u2460"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#css-property-to-idl-attribute"}, "css-rule": {"dfnID":"css-rule","dfnText":"CSS rule","external":false,"refSections":[{"refs":[{"id":"ref-for-css-rule"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-css-rule\u2460"},{"id":"ref-for-css-rule\u2461"},{"id":"ref-for-css-rule\u2462"},{"id":"ref-for-css-rule\u2463"},{"id":"ref-for-css-rule\u2464"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-css-rule\u2465"},{"id":"ref-for-css-rule\u2466"}],"title":"6.4.2. The CSSRule Interface"},{"refs":[{"id":"ref-for-css-rule\u2467"}],"title":"6.6. CSS Declaration Blocks"}],"url":"#css-rule"}, "css-style-sheet": {"dfnID":"css-style-sheet","dfnText":"CSS style sheet","external":false,"refSections":[{"refs":[{"id":"ref-for-css-style-sheet"},{"id":"ref-for-css-style-sheet\u2460"},{"id":"ref-for-css-style-sheet\u2461"},{"id":"ref-for-css-style-sheet\u2462"},{"id":"ref-for-css-style-sheet\u2463"},{"id":"ref-for-css-style-sheet\u2464"},{"id":"ref-for-css-style-sheet\u2465"},{"id":"ref-for-css-style-sheet\u2466"},{"id":"ref-for-css-style-sheet\u2467"},{"id":"ref-for-css-style-sheet\u2468"},{"id":"ref-for-css-style-sheet\u2460\u24ea"},{"id":"ref-for-css-style-sheet\u2460\u2460"},{"id":"ref-for-css-style-sheet\u2460\u2461"},{"id":"ref-for-css-style-sheet\u2460\u2462"},{"id":"ref-for-css-style-sheet\u2460\u2463"},{"id":"ref-for-css-style-sheet\u2460\u2464"},{"id":"ref-for-css-style-sheet\u2460\u2465"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-css-style-sheet\u2460\u2466"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-css-style-sheet\u2460\u2467"},{"id":"ref-for-css-style-sheet\u2460\u2468"},{"id":"ref-for-css-style-sheet\u2461\u24ea"},{"id":"ref-for-css-style-sheet\u2461\u2460"},{"id":"ref-for-css-style-sheet\u2461\u2461"},{"id":"ref-for-css-style-sheet\u2461\u2462"},{"id":"ref-for-css-style-sheet\u2461\u2463"},{"id":"ref-for-css-style-sheet\u2461\u2464"},{"id":"ref-for-css-style-sheet\u2461\u2465"},{"id":"ref-for-css-style-sheet\u2461\u2466"},{"id":"ref-for-css-style-sheet\u2461\u2467"},{"id":"ref-for-css-style-sheet\u2461\u2468"},{"id":"ref-for-css-style-sheet\u2462\u24ea"},{"id":"ref-for-css-style-sheet\u2462\u2460"},{"id":"ref-for-css-style-sheet\u2462\u2461"},{"id":"ref-for-css-style-sheet\u2462\u2462"},{"id":"ref-for-css-style-sheet\u2462\u2463"}],"title":"6.2. CSS Style Sheet Collections"},{"refs":[{"id":"ref-for-css-style-sheet\u2462\u2464"},{"id":"ref-for-css-style-sheet\u2462\u2465"},{"id":"ref-for-css-style-sheet\u2462\u2466"},{"id":"ref-for-css-style-sheet\u2462\u2467"},{"id":"ref-for-css-style-sheet\u2462\u2468"}],"title":"6.2.2. The StyleSheetList Interface"},{"refs":[{"id":"ref-for-css-style-sheet\u2463\u24ea"}],"title":"6.3. Style Sheet Association"},{"refs":[{"id":"ref-for-css-style-sheet\u2463\u2460"}],"title":"6.3.2. The LinkStyle Interface"},{"refs":[{"id":"ref-for-css-style-sheet\u2463\u2461"}],"title":"6.3.3. Requirements on specifications"},{"refs":[{"id":"ref-for-css-style-sheet\u2463\u2462"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-css-style-sheet\u2463\u2463"},{"id":"ref-for-css-style-sheet\u2463\u2464"},{"id":"ref-for-css-style-sheet\u2463\u2465"},{"id":"ref-for-css-style-sheet\u2463\u2466"}],"title":"6.4.4. The CSSImportRule Interface"},{"refs":[{"id":"ref-for-css-style-sheet\u2463\u2467"}],"title":"7.2. Extensions to the Window Interface"}],"url":"#css-style-sheet"}, "css-style-sheet-set": {"dfnID":"css-style-sheet-set","dfnText":"CSS style sheet set","external":false,"refSections":[{"refs":[{"id":"ref-for-css-style-sheet-set"},{"id":"ref-for-css-style-sheet-set\u2460"},{"id":"ref-for-css-style-sheet-set\u2461"},{"id":"ref-for-css-style-sheet-set\u2462"},{"id":"ref-for-css-style-sheet-set\u2463"},{"id":"ref-for-css-style-sheet-set\u2464"}],"title":"6.2. CSS Style Sheet Collections"},{"refs":[{"id":"ref-for-css-style-sheet-set\u2465"}],"title":"6.2.1. The HTTP Default-Style Header"}],"url":"#css-style-sheet-set"}, "css-style-sheet-set-name": {"dfnID":"css-style-sheet-set-name","dfnText":"CSS style sheet set name","external":false,"refSections":[{"refs":[{"id":"ref-for-css-style-sheet-set-name"}],"title":"6.2. CSS Style Sheet Collections"}],"url":"#css-style-sheet-set-name"}, "cssgroupingrule": {"dfnID":"cssgroupingrule","dfnText":"CSSGroupingRule","external":false,"refSections":[{"refs":[{"id":"ref-for-cssgroupingrule"}],"title":"6.1.2.1. Deprecated CSSStyleSheet members"},{"refs":[{"id":"ref-for-cssgroupingrule\u2460"}],"title":"6.4.3. The CSSStyleRule Interface"},{"refs":[{"id":"ref-for-cssgroupingrule\u2461"}],"title":"6.4.5. The CSSGroupingRule Interface"},{"refs":[{"id":"ref-for-cssgroupingrule\u2462"}],"title":"6.4.7. The CSSPageRule Interface"}],"url":"#cssgroupingrule"}, "cssimportrule": {"dfnID":"cssimportrule","dfnText":"CSSImportRule","external":false,"refSections":[{"refs":[{"id":"ref-for-cssimportrule"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-cssimportrule\u2460"}],"title":"6.4.2. The CSSRule Interface"},{"refs":[{"id":"ref-for-cssimportrule\u2461"}],"title":"6.4.4. The CSSImportRule Interface"}],"url":"#cssimportrule"}, "cssmarginrule": {"dfnID":"cssmarginrule","dfnText":"CSSMarginRule","external":false,"refSections":[{"refs":[{"id":"ref-for-cssmarginrule"}],"title":"6.4.2. The CSSRule Interface"},{"refs":[{"id":"ref-for-cssmarginrule\u2460"}],"title":"6.4.8. The CSSMarginRule Interface"}],"url":"#cssmarginrule"}, "cssnamespacerule": {"dfnID":"cssnamespacerule","dfnText":"CSSNamespaceRule","external":false,"refSections":[{"refs":[{"id":"ref-for-cssnamespacerule"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-cssnamespacerule\u2460"}],"title":"6.4.2. The CSSRule Interface"},{"refs":[{"id":"ref-for-cssnamespacerule\u2461"}],"title":"6.4.9. The CSSNamespaceRule Interface"},{"refs":[{"id":"ref-for-cssnamespacerule\u2462"}],"title":"11.2. Changes From 5 December 2013"}],"url":"#cssnamespacerule"}, "cssomstring": {"dfnID":"cssomstring","dfnText":"CSSOMString","external":false,"refSections":[{"refs":[{"id":"ref-for-cssomstring"},{"id":"ref-for-cssomstring\u2460"},{"id":"ref-for-cssomstring\u2461"},{"id":"ref-for-cssomstring\u2462"}],"title":"4.4. The MediaList Interface"},{"refs":[{"id":"ref-for-cssomstring\u2463"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-cssomstring\u2464"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-cssomstring\u2465"}],"title":"6.4.2. The CSSRule Interface"},{"refs":[{"id":"ref-for-cssomstring\u2466"}],"title":"6.4.3. The CSSStyleRule Interface"},{"refs":[{"id":"ref-for-cssomstring\u2467"},{"id":"ref-for-cssomstring\u2468"}],"title":"6.4.4. The CSSImportRule Interface"},{"refs":[{"id":"ref-for-cssomstring\u2460\u24ea"}],"title":"6.4.5. The CSSGroupingRule Interface"},{"refs":[{"id":"ref-for-cssomstring\u2460\u2460"},{"id":"ref-for-cssomstring\u2460\u2461"},{"id":"ref-for-cssomstring\u2460\u2462"},{"id":"ref-for-cssomstring\u2460\u2463"},{"id":"ref-for-cssomstring\u2460\u2464"},{"id":"ref-for-cssomstring\u2460\u2465"},{"id":"ref-for-cssomstring\u2460\u2466"},{"id":"ref-for-cssomstring\u2460\u2467"},{"id":"ref-for-cssomstring\u2460\u2468"},{"id":"ref-for-cssomstring\u2461\u24ea"},{"id":"ref-for-cssomstring\u2461\u2460"},{"id":"ref-for-cssomstring\u2461\u2461"},{"id":"ref-for-cssomstring\u2461\u2462"},{"id":"ref-for-cssomstring\u2461\u2463"},{"id":"ref-for-cssomstring\u2461\u2464"}],"title":"6.4.7. The CSSPageRule Interface"},{"refs":[{"id":"ref-for-cssomstring\u2461\u2465"}],"title":"6.4.8. The CSSMarginRule Interface"},{"refs":[{"id":"ref-for-cssomstring\u2461\u2466"},{"id":"ref-for-cssomstring\u2461\u2467"}],"title":"6.4.9. The CSSNamespaceRule Interface"},{"refs":[{"id":"ref-for-cssomstring\u2461\u2468"},{"id":"ref-for-cssomstring\u2462\u24ea"},{"id":"ref-for-cssomstring\u2462\u2460"},{"id":"ref-for-cssomstring\u2462\u2461"},{"id":"ref-for-cssomstring\u2462\u2462"},{"id":"ref-for-cssomstring\u2462\u2463"},{"id":"ref-for-cssomstring\u2462\u2464"},{"id":"ref-for-cssomstring\u2462\u2465"},{"id":"ref-for-cssomstring\u2462\u2466"},{"id":"ref-for-cssomstring\u2462\u2467"},{"id":"ref-for-cssomstring\u2462\u2468"},{"id":"ref-for-cssomstring\u2463\u24ea"},{"id":"ref-for-cssomstring\u2463\u2460"},{"id":"ref-for-cssomstring\u2463\u2461"},{"id":"ref-for-cssomstring\u2463\u2462"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-cssomstring\u2463\u2463"}],"title":"7.2. Extensions to the Window Interface"},{"refs":[{"id":"ref-for-cssomstring\u2463\u2464"},{"id":"ref-for-cssomstring\u2463\u2465"}],"title":"8.1. The CSS.escape() Method"}],"url":"#cssomstring"}, "csspagedescriptors": {"dfnID":"csspagedescriptors","dfnText":"CSSPageDescriptors","external":false,"refSections":[{"refs":[{"id":"ref-for-csspagedescriptors"}],"title":"6.4.7. The CSSPageRule Interface"}],"url":"#csspagedescriptors"}, "csspagerule": {"dfnID":"csspagerule","dfnText":"CSSPageRule","external":false,"refSections":[{"refs":[{"id":"ref-for-csspagerule"},{"id":"ref-for-csspagerule\u2460"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-csspagerule\u2461"}],"title":"6.4.2. The CSSRule Interface"},{"refs":[{"id":"ref-for-csspagerule\u2462"}],"title":"6.4.7. The CSSPageRule Interface"}],"url":"#csspagerule"}, "cssrule": {"dfnID":"cssrule","dfnText":"CSSRule","external":false,"refSections":[{"refs":[{"id":"ref-for-cssrule"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-cssrule\u2460"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-cssrule\u2461"},{"id":"ref-for-cssrule\u2462"},{"id":"ref-for-cssrule\u2463"},{"id":"ref-for-cssrule\u2464"},{"id":"ref-for-cssrule\u2465"}],"title":"6.4.1. The CSSRuleList Interface"},{"refs":[{"id":"ref-for-cssrule\u2466"},{"id":"ref-for-cssrule\u2467"},{"id":"ref-for-cssrule\u2468"}],"title":"6.4.2. The CSSRule Interface"},{"refs":[{"id":"ref-for-cssrule\u2460\u24ea"}],"title":"6.4.4. The CSSImportRule Interface"},{"refs":[{"id":"ref-for-cssrule\u2460\u2460"}],"title":"6.4.5. The CSSGroupingRule Interface"},{"refs":[{"id":"ref-for-cssrule\u2460\u2461"}],"title":"6.4.8. The CSSMarginRule Interface"},{"refs":[{"id":"ref-for-cssrule\u2460\u2462"}],"title":"6.4.9. The CSSNamespaceRule Interface"},{"refs":[{"id":"ref-for-cssrule\u2460\u2463"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-cssrule\u2460\u2464"}],"title":"11.2. Changes From 5 December 2013"}],"url":"#cssrule"}, "cssrulelist": {"dfnID":"cssrulelist","dfnText":"CSSRuleList","external":false,"refSections":[{"refs":[{"id":"ref-for-cssrulelist"},{"id":"ref-for-cssrulelist\u2460"},{"id":"ref-for-cssrulelist\u2461"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-cssrulelist\u2462"}],"title":"6.1.2.1. Deprecated CSSStyleSheet members"},{"refs":[{"id":"ref-for-cssrulelist\u2463"},{"id":"ref-for-cssrulelist\u2464"}],"title":"6.4.1. The CSSRuleList Interface"},{"refs":[{"id":"ref-for-cssrulelist\u2465"}],"title":"6.4.5. The CSSGroupingRule Interface"}],"url":"#cssrulelist"}, "cssstyledeclaration": {"dfnID":"cssstyledeclaration","dfnText":"CSSStyleDeclaration","external":false,"refSections":[{"refs":[{"id":"ref-for-cssstyledeclaration"}],"title":"6.4.7. The CSSPageRule Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration\u2460"},{"id":"ref-for-cssstyledeclaration\u2461"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration\u2462"}],"title":"7.1. \nThe ElementCSSInlineStyle Mixin"},{"refs":[{"id":"ref-for-cssstyledeclaration\u2463"}],"title":"7.2. Extensions to the Window Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration\u2464"}],"title":"11.1. Changes From 17 March 2016"},{"refs":[{"id":"ref-for-cssstyledeclaration\u2465"},{"id":"ref-for-cssstyledeclaration\u2466"}],"title":"11.2. Changes From 5 December 2013"},{"refs":[{"id":"ref-for-cssstyledeclaration\u2467"}],"title":"11.3. Changes From 12 July 2011 To 5 December 2013"}],"url":"#cssstyledeclaration"}, "cssstyledeclaration-computed-flag": {"dfnID":"cssstyledeclaration-computed-flag","dfnText":"computed flag","external":false,"refSections":[{"refs":[{"id":"ref-for-cssstyledeclaration-computed-flag"}],"title":"6.4.3. The CSSStyleRule Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-computed-flag\u2460"}],"title":"6.4.7. The CSSPageRule Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-computed-flag\u2461"}],"title":"6.4.8. The CSSMarginRule Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-computed-flag\u2462"},{"id":"ref-for-cssstyledeclaration-computed-flag\u2463"},{"id":"ref-for-cssstyledeclaration-computed-flag\u2464"}],"title":"6.6. CSS Declaration Blocks"},{"refs":[{"id":"ref-for-cssstyledeclaration-computed-flag\u2465"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-computed-flag\u2466"}],"title":"7.2. Extensions to the Window Interface"}],"url":"#cssstyledeclaration-computed-flag"}, "cssstyledeclaration-declarations": {"dfnID":"cssstyledeclaration-declarations","dfnText":"declarations","external":false,"refSections":[{"refs":[{"id":"ref-for-cssstyledeclaration-declarations"}],"title":"6.4.3. The CSSStyleRule Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-declarations\u2460"}],"title":"6.4.7. The CSSPageRule Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-declarations\u2461"}],"title":"6.4.8. The CSSMarginRule Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-declarations\u2462"},{"id":"ref-for-cssstyledeclaration-declarations\u2463"},{"id":"ref-for-cssstyledeclaration-declarations\u2464"},{"id":"ref-for-cssstyledeclaration-declarations\u2465"},{"id":"ref-for-cssstyledeclaration-declarations\u2466"}],"title":"6.6. CSS Declaration Blocks"},{"refs":[{"id":"ref-for-cssstyledeclaration-declarations\u2467"},{"id":"ref-for-cssstyledeclaration-declarations\u2468"},{"id":"ref-for-cssstyledeclaration-declarations\u2460\u24ea"},{"id":"ref-for-cssstyledeclaration-declarations\u2460\u2460"},{"id":"ref-for-cssstyledeclaration-declarations\u2460\u2461"},{"id":"ref-for-cssstyledeclaration-declarations\u2460\u2462"},{"id":"ref-for-cssstyledeclaration-declarations\u2460\u2463"},{"id":"ref-for-cssstyledeclaration-declarations\u2460\u2464"},{"id":"ref-for-cssstyledeclaration-declarations\u2460\u2465"},{"id":"ref-for-cssstyledeclaration-declarations\u2460\u2466"},{"id":"ref-for-cssstyledeclaration-declarations\u2460\u2467"},{"id":"ref-for-cssstyledeclaration-declarations\u2460\u2468"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-declarations\u2461\u24ea"}],"title":"7.2. Extensions to the Window Interface"}],"url":"#cssstyledeclaration-declarations"}, "cssstyledeclaration-owner-node": {"dfnID":"cssstyledeclaration-owner-node","dfnText":"owner node","external":false,"refSections":[{"refs":[{"id":"ref-for-cssstyledeclaration-owner-node"}],"title":"6.4.3. The CSSStyleRule Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-owner-node\u2460"}],"title":"6.4.7. The CSSPageRule Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-owner-node\u2461"}],"title":"6.4.8. The CSSMarginRule Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-owner-node\u2462"},{"id":"ref-for-cssstyledeclaration-owner-node\u2463"},{"id":"ref-for-cssstyledeclaration-owner-node\u2464"},{"id":"ref-for-cssstyledeclaration-owner-node\u2465"}],"title":"6.6. CSS Declaration Blocks"},{"refs":[{"id":"ref-for-cssstyledeclaration-owner-node\u2466"}],"title":"7.1. \nThe ElementCSSInlineStyle Mixin"},{"refs":[{"id":"ref-for-cssstyledeclaration-owner-node\u2467"}],"title":"7.2. Extensions to the Window Interface"}],"url":"#cssstyledeclaration-owner-node"}, "cssstyledeclaration-parent-css-rule": {"dfnID":"cssstyledeclaration-parent-css-rule","dfnText":"parent CSS rule","external":false,"refSections":[{"refs":[{"id":"ref-for-cssstyledeclaration-parent-css-rule"}],"title":"6.4.3. The CSSStyleRule Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-parent-css-rule\u2460"}],"title":"6.4.7. The CSSPageRule Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-parent-css-rule\u2461"}],"title":"6.4.8. The CSSMarginRule Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-parent-css-rule\u2462"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-parent-css-rule\u2463"}],"title":"7.1. \nThe ElementCSSInlineStyle Mixin"},{"refs":[{"id":"ref-for-cssstyledeclaration-parent-css-rule\u2464"}],"title":"7.2. Extensions to the Window Interface"}],"url":"#cssstyledeclaration-parent-css-rule"}, "cssstyledeclaration-readonly-flag": {"dfnID":"cssstyledeclaration-readonly-flag","dfnText":"readonly flag","external":false,"refSections":[{"refs":[{"id":"ref-for-cssstyledeclaration-readonly-flag"}],"title":"6.4.3. The CSSStyleRule Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-readonly-flag\u2460"}],"title":"6.4.7. The CSSPageRule Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-readonly-flag\u2461"}],"title":"6.4.8. The CSSMarginRule Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-readonly-flag\u2462"},{"id":"ref-for-cssstyledeclaration-readonly-flag\u2463"},{"id":"ref-for-cssstyledeclaration-readonly-flag\u2464"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-cssstyledeclaration-readonly-flag\u2465"}],"title":"7.1. \nThe ElementCSSInlineStyle Mixin"},{"refs":[{"id":"ref-for-cssstyledeclaration-readonly-flag\u2466"}],"title":"7.2. Extensions to the Window Interface"}],"url":"#cssstyledeclaration-readonly-flag"}, "cssstyledeclaration-updating-flag": {"dfnID":"cssstyledeclaration-updating-flag","dfnText":"updating flag","external":false,"refSections":[{"refs":[{"id":"ref-for-cssstyledeclaration-updating-flag"},{"id":"ref-for-cssstyledeclaration-updating-flag\u2460"},{"id":"ref-for-cssstyledeclaration-updating-flag\u2461"}],"title":"6.6. CSS Declaration Blocks"},{"refs":[{"id":"ref-for-cssstyledeclaration-updating-flag\u2462"}],"title":"11.1. Changes From 17 March 2016"}],"url":"#cssstyledeclaration-updating-flag"}, "cssstyleproperties": {"dfnID":"cssstyleproperties","dfnText":"CSSStyleProperties","external":false,"refSections":[{"refs":[{"id":"ref-for-cssstyleproperties"}],"title":"6.4.3. The CSSStyleRule Interface"},{"refs":[{"id":"ref-for-cssstyleproperties\u2460"},{"id":"ref-for-cssstyleproperties\u2461"},{"id":"ref-for-cssstyleproperties\u2462"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#cssstyleproperties"}, "cssstylerule": {"dfnID":"cssstylerule","dfnText":"CSSStyleRule","external":false,"refSections":[{"refs":[{"id":"ref-for-cssstylerule"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-cssstylerule\u2460"}],"title":"6.4.2. The CSSRule Interface"},{"refs":[{"id":"ref-for-cssstylerule\u2461"}],"title":"6.4.3. The CSSStyleRule Interface"},{"refs":[{"id":"ref-for-cssstylerule\u2462"}],"title":"11.1. Changes From 17 March 2016"}],"url":"#cssstylerule"}, "cssstylesheet": {"dfnID":"cssstylesheet","dfnText":"CSSStyleSheet","external":false,"refSections":[{"refs":[{"id":"ref-for-cssstylesheet"},{"id":"ref-for-cssstylesheet\u2460"},{"id":"ref-for-cssstylesheet\u2461"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-cssstylesheet\u2462"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-cssstylesheet\u2463"},{"id":"ref-for-cssstylesheet\u2464"},{"id":"ref-for-cssstylesheet\u2465"},{"id":"ref-for-cssstylesheet\u2466"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-cssstylesheet\u2467"},{"id":"ref-for-cssstylesheet\u2468"}],"title":"6.1.2.1. Deprecated CSSStyleSheet members"},{"refs":[{"id":"ref-for-cssstylesheet\u2460\u24ea"}],"title":"6.2.2. The StyleSheetList Interface"},{"refs":[{"id":"ref-for-cssstylesheet\u2460\u2460"}],"title":"6.2.3. Extensions to the DocumentOrShadowRoot Interface Mixin"},{"refs":[{"id":"ref-for-cssstylesheet\u2460\u2461"}],"title":"6.3.2. The LinkStyle Interface"},{"refs":[{"id":"ref-for-cssstylesheet\u2460\u2462"}],"title":"6.4.2. The CSSRule Interface"},{"refs":[{"id":"ref-for-cssstylesheet\u2460\u2463"}],"title":"6.4.4. The CSSImportRule Interface"}],"url":"#cssstylesheet"}, "d1a6c008": {"dfnID":"d1a6c008","dfnText":"attribute change steps","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-element-attributes-change-ext"}],"title":"6.6. CSS Declaration Blocks"}],"url":"https://dom.spec.whatwg.org/#concept-element-attributes-change-ext"}, "d1fe35a8": {"dfnID":"d1fe35a8","dfnText":"tree order","external":true,"refSections":[{"refs":[{"id":"ref-for-tree-order"}],"title":"6.2. CSS Style Sheet Collections"}],"url":"https://html.spec.whatwg.org/multipage/infrastructure.html#tree-order"}, "d45afbab": {"dfnID":"d45afbab","dfnText":"font-style","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-font-style"},{"id":"ref-for-propdef-font-style\u2460"}],"title":"6.4. CSS Rules"}],"url":"https://drafts.csswg.org/css-fonts-4/#propdef-font-style"}, "d462b34f": {"dfnID":"d462b34f","dfnText":"node","external":true,"refSections":[{"refs":[{"id":"ref-for-boundary-point-node"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"https://dom.spec.whatwg.org/#boundary-point-node"}, "d5dfc6b9": {"dfnID":"d5dfc6b9","dfnText":"cssRules","external":true,"refSections":[{"refs":[{"id":"ref-for-dom-cssstylerule-cssrules"}],"title":"6.4. CSS Rules"}],"url":"https://www.w3.org/TR/css-nesting-1/#dom-cssstylerule-cssrules"}, "dbbfc660": {"dfnID":"dbbfc660","dfnText":"script-blocking style sheet set","external":true,"refSections":[{"refs":[{"id":"ref-for-script-blocking-style-sheet-set"}],"title":"6.2. CSS Style Sheet Collections"}],"url":"https://html.spec.whatwg.org/multipage/semantics.html#script-blocking-style-sheet-set"}, "dc1cd39b": {"dfnID":"dc1cd39b","dfnText":"url (for request)","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-request-url"}],"title":"6.3.1. Fetching CSS style sheets"}],"url":"https://fetch.spec.whatwg.org/#concept-request-url"}, "dca2de17": {"dfnID":"dca2de17","dfnText":"DOMException","external":true,"refSections":[{"refs":[{"id":"ref-for-idl-DOMException"},{"id":"ref-for-idl-DOMException\u2460"},{"id":"ref-for-idl-DOMException\u2461"},{"id":"ref-for-idl-DOMException\u2462"},{"id":"ref-for-idl-DOMException\u2463"},{"id":"ref-for-idl-DOMException\u2464"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-idl-DOMException\u2465"}],"title":"6.2.3. Extensions to the DocumentOrShadowRoot Interface Mixin"}],"url":"https://webidl.spec.whatwg.org/#idl-DOMException"}, "dcffbccd": {"dfnID":"dcffbccd","dfnText":"URL","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-url"},{"id":"ref-for-concept-url\u2460"}],"title":"6.4.4. The CSSImportRule Interface"}],"url":"https://url.spec.whatwg.org/#concept-url"}, "dde41168": {"dfnID":"dde41168","dfnText":"left","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-left"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-position-3/#propdef-left"}, "de39d615": {"dfnID":"de39d615","dfnText":"default namespace","external":true,"refSections":[{"refs":[{"id":"ref-for-default-namespace"},{"id":"ref-for-default-namespace\u2460"}],"title":"5.2. Serializing Selectors"}],"url":"https://drafts.csswg.org/css-namespaces-3/#default-namespace"}, "dictdef-cssstylesheetinit": {"dfnID":"dictdef-cssstylesheetinit","dfnText":"CSSStyleSheetInit","external":false,"refSections":[{"refs":[{"id":"ref-for-dictdef-cssstylesheetinit"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-dictdef-cssstylesheetinit\u2460"}],"title":"6.1.2. The CSSStyleSheet Interface"}],"url":"#dictdef-cssstylesheetinit"}, "documentorshadowroot-document-or-shadow-root-css-style-sheets": {"dfnID":"documentorshadowroot-document-or-shadow-root-css-style-sheets","dfnText":"document or shadow root CSS style sheets","external":false,"refSections":[{"refs":[{"id":"ref-for-documentorshadowroot-document-or-shadow-root-css-style-sheets"},{"id":"ref-for-documentorshadowroot-document-or-shadow-root-css-style-sheets\u2460"},{"id":"ref-for-documentorshadowroot-document-or-shadow-root-css-style-sheets\u2461"},{"id":"ref-for-documentorshadowroot-document-or-shadow-root-css-style-sheets\u2462"},{"id":"ref-for-documentorshadowroot-document-or-shadow-root-css-style-sheets\u2463"}],"title":"6.2. CSS Style Sheet Collections"},{"refs":[{"id":"ref-for-documentorshadowroot-document-or-shadow-root-css-style-sheets\u2464"}],"title":"6.2.3. Extensions to the DocumentOrShadowRoot Interface Mixin"},{"refs":[{"id":"ref-for-documentorshadowroot-document-or-shadow-root-css-style-sheets\u2465"}],"title":"6.3.2. The LinkStyle Interface"}],"url":"#documentorshadowroot-document-or-shadow-root-css-style-sheets"}, "documentorshadowroot-final-css-style-sheets": {"dfnID":"documentorshadowroot-final-css-style-sheets","dfnText":"final CSS style sheets","external":false,"refSections":[],"url":"#documentorshadowroot-final-css-style-sheets"}, "dom-css-escape": {"dfnID":"dom-css-escape","dfnText":"escape(ident)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-css-escape"},{"id":"ref-for-dom-css-escape\u2460"},{"id":"ref-for-dom-css-escape\u2461"}],"title":"8.1. The CSS.escape() Method"},{"refs":[{"id":"ref-for-dom-css-escape\u2462"}],"title":"11.3. Changes From 12 July 2011 To 5 December 2013"}],"url":"#dom-css-escape"}, "dom-css-escape-ident-ident": {"dfnID":"dom-css-escape-ident-ident","dfnText":"ident","external":false,"refSections":[],"url":"#dom-css-escape-ident-ident"}, "dom-cssgroupingrule-cssrules": {"dfnID":"dom-cssgroupingrule-cssrules","dfnText":"cssRules","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssgroupingrule-cssrules"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-dom-cssgroupingrule-cssrules\u2460"}],"title":"6.4.5. The CSSGroupingRule Interface"}],"url":"#dom-cssgroupingrule-cssrules"}, "dom-cssgroupingrule-deleterule": {"dfnID":"dom-cssgroupingrule-deleterule","dfnText":"deleteRule(index)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssgroupingrule-deleterule"}],"title":"6.4.5. The CSSGroupingRule Interface"}],"url":"#dom-cssgroupingrule-deleterule"}, "dom-cssgroupingrule-deleterule-index-index": {"dfnID":"dom-cssgroupingrule-deleterule-index-index","dfnText":"index","external":false,"refSections":[],"url":"#dom-cssgroupingrule-deleterule-index-index"}, "dom-cssgroupingrule-insertrule": {"dfnID":"dom-cssgroupingrule-insertrule","dfnText":"insertRule(rule, index)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssgroupingrule-insertrule"}],"title":"6.4.5. The CSSGroupingRule Interface"}],"url":"#dom-cssgroupingrule-insertrule"}, "dom-cssgroupingrule-insertrule-rule-index-index": {"dfnID":"dom-cssgroupingrule-insertrule-rule-index-index","dfnText":"index","external":false,"refSections":[],"url":"#dom-cssgroupingrule-insertrule-rule-index-index"}, "dom-cssgroupingrule-insertrule-rule-index-rule": {"dfnID":"dom-cssgroupingrule-insertrule-rule-index-rule","dfnText":"rule","external":false,"refSections":[],"url":"#dom-cssgroupingrule-insertrule-rule-index-rule"}, "dom-cssimportrule-href": {"dfnID":"dom-cssimportrule-href","dfnText":"href","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssimportrule-href"}],"title":"6.4.4. The CSSImportRule Interface"}],"url":"#dom-cssimportrule-href"}, "dom-cssimportrule-layername": {"dfnID":"dom-cssimportrule-layername","dfnText":"layerName","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssimportrule-layername"}],"title":"6.4.4. The CSSImportRule Interface"}],"url":"#dom-cssimportrule-layername"}, "dom-cssimportrule-media": {"dfnID":"dom-cssimportrule-media","dfnText":"media","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssimportrule-media"}],"title":"6.4.4. The CSSImportRule Interface"}],"url":"#dom-cssimportrule-media"}, "dom-cssimportrule-stylesheet": {"dfnID":"dom-cssimportrule-stylesheet","dfnText":"styleSheet","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssimportrule-stylesheet"}],"title":"6.4.4. The CSSImportRule Interface"}],"url":"#dom-cssimportrule-stylesheet"}, "dom-cssimportrule-supportstext": {"dfnID":"dom-cssimportrule-supportstext","dfnText":"supportsText","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssimportrule-supportstext"}],"title":"6.4.4. The CSSImportRule Interface"}],"url":"#dom-cssimportrule-supportstext"}, "dom-cssmarginrule-name": {"dfnID":"dom-cssmarginrule-name","dfnText":"name","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssmarginrule-name"}],"title":"6.4.8. The CSSMarginRule Interface"}],"url":"#dom-cssmarginrule-name"}, "dom-cssmarginrule-style": {"dfnID":"dom-cssmarginrule-style","dfnText":"style","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssmarginrule-style"}],"title":"6.4.8. The CSSMarginRule Interface"}],"url":"#dom-cssmarginrule-style"}, "dom-cssnamespacerule-namespaceuri": {"dfnID":"dom-cssnamespacerule-namespaceuri","dfnText":"namespaceURI","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssnamespacerule-namespaceuri"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-dom-cssnamespacerule-namespaceuri\u2460"}],"title":"6.4.9. The CSSNamespaceRule Interface"}],"url":"#dom-cssnamespacerule-namespaceuri"}, "dom-cssnamespacerule-prefix": {"dfnID":"dom-cssnamespacerule-prefix","dfnText":"prefix","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssnamespacerule-prefix"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-dom-cssnamespacerule-prefix\u2460"}],"title":"6.4.9. The CSSNamespaceRule Interface"}],"url":"#dom-cssnamespacerule-prefix"}, "dom-csspagedescriptors-bleed": {"dfnID":"dom-csspagedescriptors-bleed","dfnText":"bleed","external":false,"refSections":[],"url":"#dom-csspagedescriptors-bleed"}, "dom-csspagedescriptors-margin": {"dfnID":"dom-csspagedescriptors-margin","dfnText":"margin","external":false,"refSections":[],"url":"#dom-csspagedescriptors-margin"}, "dom-csspagedescriptors-margin-bottom": {"dfnID":"dom-csspagedescriptors-margin-bottom","dfnText":"margin-bottom","external":false,"refSections":[],"url":"#dom-csspagedescriptors-margin-bottom"}, "dom-csspagedescriptors-margin-left": {"dfnID":"dom-csspagedescriptors-margin-left","dfnText":"margin-left","external":false,"refSections":[],"url":"#dom-csspagedescriptors-margin-left"}, "dom-csspagedescriptors-margin-right": {"dfnID":"dom-csspagedescriptors-margin-right","dfnText":"margin-right","external":false,"refSections":[],"url":"#dom-csspagedescriptors-margin-right"}, "dom-csspagedescriptors-margin-top": {"dfnID":"dom-csspagedescriptors-margin-top","dfnText":"margin-top","external":false,"refSections":[],"url":"#dom-csspagedescriptors-margin-top"}, "dom-csspagedescriptors-marginbottom": {"dfnID":"dom-csspagedescriptors-marginbottom","dfnText":"marginBottom","external":false,"refSections":[],"url":"#dom-csspagedescriptors-marginbottom"}, "dom-csspagedescriptors-marginleft": {"dfnID":"dom-csspagedescriptors-marginleft","dfnText":"marginLeft","external":false,"refSections":[],"url":"#dom-csspagedescriptors-marginleft"}, "dom-csspagedescriptors-marginright": {"dfnID":"dom-csspagedescriptors-marginright","dfnText":"marginRight","external":false,"refSections":[],"url":"#dom-csspagedescriptors-marginright"}, "dom-csspagedescriptors-margintop": {"dfnID":"dom-csspagedescriptors-margintop","dfnText":"marginTop","external":false,"refSections":[],"url":"#dom-csspagedescriptors-margintop"}, "dom-csspagedescriptors-marks": {"dfnID":"dom-csspagedescriptors-marks","dfnText":"marks","external":false,"refSections":[],"url":"#dom-csspagedescriptors-marks"}, "dom-csspagedescriptors-page-orientation": {"dfnID":"dom-csspagedescriptors-page-orientation","dfnText":"page-orientation","external":false,"refSections":[],"url":"#dom-csspagedescriptors-page-orientation"}, "dom-csspagedescriptors-pageorientation": {"dfnID":"dom-csspagedescriptors-pageorientation","dfnText":"pageOrientation","external":false,"refSections":[],"url":"#dom-csspagedescriptors-pageorientation"}, "dom-csspagedescriptors-size": {"dfnID":"dom-csspagedescriptors-size","dfnText":"size","external":false,"refSections":[],"url":"#dom-csspagedescriptors-size"}, "dom-csspagerule-selectortext": {"dfnID":"dom-csspagerule-selectortext","dfnText":"selectorText","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-csspagerule-selectortext"},{"id":"ref-for-dom-csspagerule-selectortext\u2460"}],"title":"6.4.7. The CSSPageRule Interface"}],"url":"#dom-csspagerule-selectortext"}, "dom-csspagerule-style": {"dfnID":"dom-csspagerule-style","dfnText":"style","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-csspagerule-style"}],"title":"6.4.7. The CSSPageRule Interface"}],"url":"#dom-csspagerule-style"}, "dom-cssrule-charset_rule": {"dfnID":"dom-cssrule-charset_rule","dfnText":"CHARSET_RULE","external":false,"refSections":[],"url":"#dom-cssrule-charset_rule"}, "dom-cssrule-csstext": {"dfnID":"dom-cssrule-csstext","dfnText":"cssText","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssrule-csstext"},{"id":"ref-for-dom-cssrule-csstext\u2460"}],"title":"6.4.2. The CSSRule Interface"},{"refs":[{"id":"ref-for-dom-cssrule-csstext\u2461"}],"title":"11.2. Changes From 5 December 2013"}],"url":"#dom-cssrule-csstext"}, "dom-cssrule-font_face_rule": {"dfnID":"dom-cssrule-font_face_rule","dfnText":"FONT_FACE_RULE","external":false,"refSections":[],"url":"#dom-cssrule-font_face_rule"}, "dom-cssrule-import_rule": {"dfnID":"dom-cssrule-import_rule","dfnText":"IMPORT_RULE","external":false,"refSections":[],"url":"#dom-cssrule-import_rule"}, "dom-cssrule-margin_rule": {"dfnID":"dom-cssrule-margin_rule","dfnText":"MARGIN_RULE","external":false,"refSections":[],"url":"#dom-cssrule-margin_rule"}, "dom-cssrule-media_rule": {"dfnID":"dom-cssrule-media_rule","dfnText":"MEDIA_RULE","external":false,"refSections":[],"url":"#dom-cssrule-media_rule"}, "dom-cssrule-namespace_rule": {"dfnID":"dom-cssrule-namespace_rule","dfnText":"NAMESPACE_RULE","external":false,"refSections":[],"url":"#dom-cssrule-namespace_rule"}, "dom-cssrule-page_rule": {"dfnID":"dom-cssrule-page_rule","dfnText":"PAGE_RULE","external":false,"refSections":[],"url":"#dom-cssrule-page_rule"}, "dom-cssrule-parentrule": {"dfnID":"dom-cssrule-parentrule","dfnText":"parentRule","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssrule-parentrule"},{"id":"ref-for-dom-cssrule-parentrule\u2460"},{"id":"ref-for-dom-cssrule-parentrule\u2461"}],"title":"6.4.2. The CSSRule Interface"}],"url":"#dom-cssrule-parentrule"}, "dom-cssrule-parentstylesheet": {"dfnID":"dom-cssrule-parentstylesheet","dfnText":"parentStyleSheet","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssrule-parentstylesheet"}],"title":"6.4.2. The CSSRule Interface"}],"url":"#dom-cssrule-parentstylesheet"}, "dom-cssrule-style_rule": {"dfnID":"dom-cssrule-style_rule","dfnText":"STYLE_RULE","external":false,"refSections":[],"url":"#dom-cssrule-style_rule"}, "dom-cssrule-type": {"dfnID":"dom-cssrule-type","dfnText":"type","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssrule-type"}],"title":"6.4.2. The CSSRule Interface"}],"url":"#dom-cssrule-type"}, "dom-cssrulelist-item": {"dfnID":"dom-cssrulelist-item","dfnText":"item(index)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssrulelist-item"}],"title":"6.4.1. The CSSRuleList Interface"}],"url":"#dom-cssrulelist-item"}, "dom-cssrulelist-item-index-index": {"dfnID":"dom-cssrulelist-item-index-index","dfnText":"index","external":false,"refSections":[],"url":"#dom-cssrulelist-item-index-index"}, "dom-cssrulelist-length": {"dfnID":"dom-cssrulelist-length","dfnText":"length","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssrulelist-length"}],"title":"6.4.1. The CSSRuleList Interface"}],"url":"#dom-cssrulelist-length"}, "dom-cssstyledeclaration-camel-cased-attribute": {"dfnID":"dom-cssstyledeclaration-camel-cased-attribute","dfnText":"camel-cased attribute","external":false,"refSections":[],"url":"#dom-cssstyledeclaration-camel-cased-attribute"}, "dom-cssstyledeclaration-csstext": {"dfnID":"dom-cssstyledeclaration-csstext","dfnText":"cssText","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstyledeclaration-csstext"},{"id":"ref-for-dom-cssstyledeclaration-csstext\u2460"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-dom-cssstyledeclaration-csstext\u2461"}],"title":"7.1. \nThe ElementCSSInlineStyle Mixin"}],"url":"#dom-cssstyledeclaration-csstext"}, "dom-cssstyledeclaration-getpropertypriority": {"dfnID":"dom-cssstyledeclaration-getpropertypriority","dfnText":"getPropertyPriority(property)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstyledeclaration-getpropertypriority"},{"id":"ref-for-dom-cssstyledeclaration-getpropertypriority\u2460"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#dom-cssstyledeclaration-getpropertypriority"}, "dom-cssstyledeclaration-getpropertypriority-property-property": {"dfnID":"dom-cssstyledeclaration-getpropertypriority-property-property","dfnText":"property","external":false,"refSections":[],"url":"#dom-cssstyledeclaration-getpropertypriority-property-property"}, "dom-cssstyledeclaration-getpropertyvalue": {"dfnID":"dom-cssstyledeclaration-getpropertyvalue","dfnText":"getPropertyValue(property)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstyledeclaration-getpropertyvalue"},{"id":"ref-for-dom-cssstyledeclaration-getpropertyvalue\u2460"},{"id":"ref-for-dom-cssstyledeclaration-getpropertyvalue\u2461"},{"id":"ref-for-dom-cssstyledeclaration-getpropertyvalue\u2462"},{"id":"ref-for-dom-cssstyledeclaration-getpropertyvalue\u2463"},{"id":"ref-for-dom-cssstyledeclaration-getpropertyvalue\u2464"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-dom-cssstyledeclaration-getpropertyvalue\u2465"}],"title":"11.3. Changes From 12 July 2011 To 5 December 2013"}],"url":"#dom-cssstyledeclaration-getpropertyvalue"}, "dom-cssstyledeclaration-getpropertyvalue-property-property": {"dfnID":"dom-cssstyledeclaration-getpropertyvalue-property-property","dfnText":"property","external":false,"refSections":[],"url":"#dom-cssstyledeclaration-getpropertyvalue-property-property"}, "dom-cssstyledeclaration-item": {"dfnID":"dom-cssstyledeclaration-item","dfnText":"item(index)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstyledeclaration-item"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#dom-cssstyledeclaration-item"}, "dom-cssstyledeclaration-item-index-index": {"dfnID":"dom-cssstyledeclaration-item-index-index","dfnText":"index","external":false,"refSections":[],"url":"#dom-cssstyledeclaration-item-index-index"}, "dom-cssstyledeclaration-length": {"dfnID":"dom-cssstyledeclaration-length","dfnText":"length","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstyledeclaration-length"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#dom-cssstyledeclaration-length"}, "dom-cssstyledeclaration-parentrule": {"dfnID":"dom-cssstyledeclaration-parentrule","dfnText":"parentRule","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstyledeclaration-parentrule"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#dom-cssstyledeclaration-parentrule"}, "dom-cssstyledeclaration-removeproperty": {"dfnID":"dom-cssstyledeclaration-removeproperty","dfnText":"removeProperty(property)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstyledeclaration-removeproperty"},{"id":"ref-for-dom-cssstyledeclaration-removeproperty\u2460"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#dom-cssstyledeclaration-removeproperty"}, "dom-cssstyledeclaration-removeproperty-property-property": {"dfnID":"dom-cssstyledeclaration-removeproperty-property-property","dfnText":"property","external":false,"refSections":[],"url":"#dom-cssstyledeclaration-removeproperty-property-property"}, "dom-cssstyledeclaration-setproperty": {"dfnID":"dom-cssstyledeclaration-setproperty","dfnText":"setProperty(property, value, priority)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstyledeclaration-setproperty"},{"id":"ref-for-dom-cssstyledeclaration-setproperty\u2460"},{"id":"ref-for-dom-cssstyledeclaration-setproperty\u2461"},{"id":"ref-for-dom-cssstyledeclaration-setproperty\u2462"},{"id":"ref-for-dom-cssstyledeclaration-setproperty\u2463"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-dom-cssstyledeclaration-setproperty\u2464"}],"title":"11.2. Changes From 5 December 2013"},{"refs":[{"id":"ref-for-dom-cssstyledeclaration-setproperty\u2465"}],"title":"11.3. Changes From 12 July 2011 To 5 December 2013"}],"url":"#dom-cssstyledeclaration-setproperty"}, "dom-cssstyledeclaration-setproperty-property-value-priority-priority": {"dfnID":"dom-cssstyledeclaration-setproperty-property-value-priority-priority","dfnText":"priority","external":false,"refSections":[],"url":"#dom-cssstyledeclaration-setproperty-property-value-priority-priority"}, "dom-cssstyledeclaration-setproperty-property-value-priority-property": {"dfnID":"dom-cssstyledeclaration-setproperty-property-value-priority-property","dfnText":"property","external":false,"refSections":[],"url":"#dom-cssstyledeclaration-setproperty-property-value-priority-property"}, "dom-cssstyledeclaration-setproperty-property-value-priority-value": {"dfnID":"dom-cssstyledeclaration-setproperty-property-value-priority-value","dfnText":"value","external":false,"refSections":[],"url":"#dom-cssstyledeclaration-setproperty-property-value-priority-value"}, "dom-cssstyleproperties-camel_cased_attribute": {"dfnID":"dom-cssstyleproperties-camel_cased_attribute","dfnText":"_camel_cased_attribute","external":false,"refSections":[],"url":"#dom-cssstyleproperties-camel_cased_attribute"}, "dom-cssstyleproperties-cssfloat": {"dfnID":"dom-cssstyleproperties-cssfloat","dfnText":"cssFloat","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstyleproperties-cssfloat"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#dom-cssstyleproperties-cssfloat"}, "dom-cssstyleproperties-dashed-attribute": {"dfnID":"dom-cssstyleproperties-dashed-attribute","dfnText":"dashed attribute","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstyleproperties-dashed-attribute"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#dom-cssstyleproperties-dashed-attribute"}, "dom-cssstyleproperties-dashed_attribute": {"dfnID":"dom-cssstyleproperties-dashed_attribute","dfnText":"_dashed_attribute","external":false,"refSections":[],"url":"#dom-cssstyleproperties-dashed_attribute"}, "dom-cssstyleproperties-webkit-cased-attribute": {"dfnID":"dom-cssstyleproperties-webkit-cased-attribute","dfnText":"webkit-cased attribute","external":false,"refSections":[],"url":"#dom-cssstyleproperties-webkit-cased-attribute"}, "dom-cssstyleproperties-webkit_cased_attribute": {"dfnID":"dom-cssstyleproperties-webkit_cased_attribute","dfnText":"_webkit_cased_attribute","external":false,"refSections":[],"url":"#dom-cssstyleproperties-webkit_cased_attribute"}, "dom-cssstylerule-selectortext": {"dfnID":"dom-cssstylerule-selectortext","dfnText":"selectorText","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstylerule-selectortext"},{"id":"ref-for-dom-cssstylerule-selectortext\u2460"}],"title":"6.4.3. The CSSStyleRule Interface"}],"url":"#dom-cssstylerule-selectortext"}, "dom-cssstylerule-style": {"dfnID":"dom-cssstylerule-style","dfnText":"style","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstylerule-style"}],"title":"6.4.3. The CSSStyleRule Interface"}],"url":"#dom-cssstylerule-style"}, "dom-cssstylesheet-addrule": {"dfnID":"dom-cssstylesheet-addrule","dfnText":"addRule(selector, block, optionalIndex)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstylesheet-addrule"}],"title":"6.1.2.1. Deprecated CSSStyleSheet members"}],"url":"#dom-cssstylesheet-addrule"}, "dom-cssstylesheet-addrule-selector-style-index-index": {"dfnID":"dom-cssstylesheet-addrule-selector-style-index-index","dfnText":"index","external":false,"refSections":[],"url":"#dom-cssstylesheet-addrule-selector-style-index-index"}, "dom-cssstylesheet-addrule-selector-style-index-selector": {"dfnID":"dom-cssstylesheet-addrule-selector-style-index-selector","dfnText":"selector","external":false,"refSections":[],"url":"#dom-cssstylesheet-addrule-selector-style-index-selector"}, "dom-cssstylesheet-addrule-selector-style-index-style": {"dfnID":"dom-cssstylesheet-addrule-selector-style-index-style","dfnText":"style","external":false,"refSections":[],"url":"#dom-cssstylesheet-addrule-selector-style-index-style"}, "dom-cssstylesheet-cssrules": {"dfnID":"dom-cssstylesheet-cssrules","dfnText":"cssRules","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstylesheet-cssrules"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-dom-cssstylesheet-cssrules\u2460"},{"id":"ref-for-dom-cssstylesheet-cssrules\u2461"}],"title":"6.1.2.1. Deprecated CSSStyleSheet members"}],"url":"#dom-cssstylesheet-cssrules"}, "dom-cssstylesheet-cssstylesheet": {"dfnID":"dom-cssstylesheet-cssstylesheet","dfnText":"CSSStyleSheet(options)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstylesheet-cssstylesheet"}],"title":"6.1.2. The CSSStyleSheet Interface"}],"url":"#dom-cssstylesheet-cssstylesheet"}, "dom-cssstylesheet-cssstylesheet-options-options": {"dfnID":"dom-cssstylesheet-cssstylesheet-options-options","dfnText":"options","external":false,"refSections":[],"url":"#dom-cssstylesheet-cssstylesheet-options-options"}, "dom-cssstylesheet-deleterule": {"dfnID":"dom-cssstylesheet-deleterule","dfnText":"deleteRule(index)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstylesheet-deleterule"},{"id":"ref-for-dom-cssstylesheet-deleterule\u2460"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-dom-cssstylesheet-deleterule\u2461"}],"title":"6.1.2.1. Deprecated CSSStyleSheet members"}],"url":"#dom-cssstylesheet-deleterule"}, "dom-cssstylesheet-deleterule-index-index": {"dfnID":"dom-cssstylesheet-deleterule-index-index","dfnText":"index","external":false,"refSections":[],"url":"#dom-cssstylesheet-deleterule-index-index"}, "dom-cssstylesheet-insertrule": {"dfnID":"dom-cssstylesheet-insertrule","dfnText":"insertRule(rule, index)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstylesheet-insertrule"},{"id":"ref-for-dom-cssstylesheet-insertrule\u2460"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-dom-cssstylesheet-insertrule\u2461"}],"title":"6.1.2.1. Deprecated CSSStyleSheet members"},{"refs":[{"id":"ref-for-dom-cssstylesheet-insertrule\u2462"}],"title":"11.2. Changes From 5 December 2013"}],"url":"#dom-cssstylesheet-insertrule"}, "dom-cssstylesheet-insertrule-rule-index-index": {"dfnID":"dom-cssstylesheet-insertrule-rule-index-index","dfnText":"index","external":false,"refSections":[],"url":"#dom-cssstylesheet-insertrule-rule-index-index"}, "dom-cssstylesheet-insertrule-rule-index-rule": {"dfnID":"dom-cssstylesheet-insertrule-rule-index-rule","dfnText":"rule","external":false,"refSections":[],"url":"#dom-cssstylesheet-insertrule-rule-index-rule"}, "dom-cssstylesheet-ownerrule": {"dfnID":"dom-cssstylesheet-ownerrule","dfnText":"ownerRule","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstylesheet-ownerrule"}],"title":"6.1.2. The CSSStyleSheet Interface"}],"url":"#dom-cssstylesheet-ownerrule"}, "dom-cssstylesheet-removerule": {"dfnID":"dom-cssstylesheet-removerule","dfnText":"removeRule(index)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstylesheet-removerule"}],"title":"6.1.2.1. Deprecated CSSStyleSheet members"}],"url":"#dom-cssstylesheet-removerule"}, "dom-cssstylesheet-removerule-index-index": {"dfnID":"dom-cssstylesheet-removerule-index-index","dfnText":"index","external":false,"refSections":[],"url":"#dom-cssstylesheet-removerule-index-index"}, "dom-cssstylesheet-replace": {"dfnID":"dom-cssstylesheet-replace","dfnText":"replace(text)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstylesheet-replace"}],"title":"6.1.2. The CSSStyleSheet Interface"}],"url":"#dom-cssstylesheet-replace"}, "dom-cssstylesheet-replace-text-text": {"dfnID":"dom-cssstylesheet-replace-text-text","dfnText":"text","external":false,"refSections":[],"url":"#dom-cssstylesheet-replace-text-text"}, "dom-cssstylesheet-replacesync": {"dfnID":"dom-cssstylesheet-replacesync","dfnText":"replaceSync(text)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstylesheet-replacesync"}],"title":"6.1.2. The CSSStyleSheet Interface"}],"url":"#dom-cssstylesheet-replacesync"}, "dom-cssstylesheet-replacesync-text-text": {"dfnID":"dom-cssstylesheet-replacesync-text-text","dfnText":"text","external":false,"refSections":[],"url":"#dom-cssstylesheet-replacesync-text-text"}, "dom-cssstylesheet-rules": {"dfnID":"dom-cssstylesheet-rules","dfnText":"rules","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstylesheet-rules"}],"title":"6.1.2.1. Deprecated CSSStyleSheet members"}],"url":"#dom-cssstylesheet-rules"}, "dom-cssstylesheetinit-baseurl": {"dfnID":"dom-cssstylesheetinit-baseurl","dfnText":"baseURL","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstylesheetinit-baseurl"}],"title":"6.1. CSS Style Sheets"}],"url":"#dom-cssstylesheetinit-baseurl"}, "dom-cssstylesheetinit-disabled": {"dfnID":"dom-cssstylesheetinit-disabled","dfnText":"disabled","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstylesheetinit-disabled"}],"title":"6.1. CSS Style Sheets"}],"url":"#dom-cssstylesheetinit-disabled"}, "dom-cssstylesheetinit-media": {"dfnID":"dom-cssstylesheetinit-media","dfnText":"media","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-cssstylesheetinit-media"}],"title":"6.1. CSS Style Sheets"}],"url":"#dom-cssstylesheetinit-media"}, "dom-documentorshadowroot-adoptedstylesheets": {"dfnID":"dom-documentorshadowroot-adoptedstylesheets","dfnText":"adoptedStyleSheets","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-documentorshadowroot-adoptedstylesheets"}],"title":"6.2. CSS Style Sheet Collections"},{"refs":[{"id":"ref-for-dom-documentorshadowroot-adoptedstylesheets\u2460"}],"title":"6.2.3. Extensions to the DocumentOrShadowRoot Interface Mixin"}],"url":"#dom-documentorshadowroot-adoptedstylesheets"}, "dom-documentorshadowroot-stylesheets": {"dfnID":"dom-documentorshadowroot-stylesheets","dfnText":"styleSheets","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-documentorshadowroot-stylesheets"}],"title":"6.2.3. Extensions to the DocumentOrShadowRoot Interface Mixin"}],"url":"#dom-documentorshadowroot-stylesheets"}, "dom-elementcssinlinestyle-style": {"dfnID":"dom-elementcssinlinestyle-style","dfnText":"style","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-elementcssinlinestyle-style"}],"title":"7.1. \nThe ElementCSSInlineStyle Mixin"}],"url":"#dom-elementcssinlinestyle-style"}, "dom-linkstyle-sheet": {"dfnID":"dom-linkstyle-sheet","dfnText":"sheet","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-linkstyle-sheet"},{"id":"ref-for-dom-linkstyle-sheet\u2460"},{"id":"ref-for-dom-linkstyle-sheet\u2461"}],"title":"6.3.2. The LinkStyle Interface"}],"url":"#dom-linkstyle-sheet"}, "dom-medialist-appendmedium": {"dfnID":"dom-medialist-appendmedium","dfnText":"appendMedium(medium)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-medialist-appendmedium"}],"title":"4.4. The MediaList Interface"}],"url":"#dom-medialist-appendmedium"}, "dom-medialist-appendmedium-medium-medium": {"dfnID":"dom-medialist-appendmedium-medium-medium","dfnText":"medium","external":false,"refSections":[],"url":"#dom-medialist-appendmedium-medium-medium"}, "dom-medialist-deletemedium": {"dfnID":"dom-medialist-deletemedium","dfnText":"deleteMedium(medium)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-medialist-deletemedium"}],"title":"4.4. The MediaList Interface"}],"url":"#dom-medialist-deletemedium"}, "dom-medialist-deletemedium-medium-medium": {"dfnID":"dom-medialist-deletemedium-medium-medium","dfnText":"medium","external":false,"refSections":[],"url":"#dom-medialist-deletemedium-medium-medium"}, "dom-medialist-item": {"dfnID":"dom-medialist-item","dfnText":"item(index)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-medialist-item"}],"title":"4.4. The MediaList Interface"}],"url":"#dom-medialist-item"}, "dom-medialist-item-index-index": {"dfnID":"dom-medialist-item-index-index","dfnText":"index","external":false,"refSections":[],"url":"#dom-medialist-item-index-index"}, "dom-medialist-length": {"dfnID":"dom-medialist-length","dfnText":"length","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-medialist-length"}],"title":"4.4. The MediaList Interface"}],"url":"#dom-medialist-length"}, "dom-medialist-mediatext": {"dfnID":"dom-medialist-mediatext","dfnText":"mediaText","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-medialist-mediatext"},{"id":"ref-for-dom-medialist-mediatext\u2460"},{"id":"ref-for-dom-medialist-mediatext\u2461"}],"title":"4.4. The MediaList Interface"},{"refs":[{"id":"ref-for-dom-medialist-mediatext\u2462"},{"id":"ref-for-dom-medialist-mediatext\u2463"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-dom-medialist-mediatext\u2464"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-dom-medialist-mediatext\u2465"}],"title":"6.4.4. The CSSImportRule Interface"}],"url":"#dom-medialist-mediatext"}, "dom-stylesheet-disabled": {"dfnID":"dom-stylesheet-disabled","dfnText":"disabled","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-stylesheet-disabled"},{"id":"ref-for-dom-stylesheet-disabled\u2460"}],"title":"6.1.1. The StyleSheet Interface"}],"url":"#dom-stylesheet-disabled"}, "dom-stylesheet-href": {"dfnID":"dom-stylesheet-href","dfnText":"href","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-stylesheet-href"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-dom-stylesheet-href\u2460"}],"title":"6.4.4. The CSSImportRule Interface"}],"url":"#dom-stylesheet-href"}, "dom-stylesheet-media": {"dfnID":"dom-stylesheet-media","dfnText":"media","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-stylesheet-media"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-dom-stylesheet-media\u2460"}],"title":"6.4.4. The CSSImportRule Interface"}],"url":"#dom-stylesheet-media"}, "dom-stylesheet-ownernode": {"dfnID":"dom-stylesheet-ownernode","dfnText":"ownerNode","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-stylesheet-ownernode"}],"title":"6.1.1. The StyleSheet Interface"}],"url":"#dom-stylesheet-ownernode"}, "dom-stylesheet-parentstylesheet": {"dfnID":"dom-stylesheet-parentstylesheet","dfnText":"parentStyleSheet","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-stylesheet-parentstylesheet"}],"title":"6.1.1. The StyleSheet Interface"}],"url":"#dom-stylesheet-parentstylesheet"}, "dom-stylesheet-title": {"dfnID":"dom-stylesheet-title","dfnText":"title","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-stylesheet-title"}],"title":"6.1.1. The StyleSheet Interface"}],"url":"#dom-stylesheet-title"}, "dom-stylesheet-type": {"dfnID":"dom-stylesheet-type","dfnText":"type","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-stylesheet-type"}],"title":"6.1.1. The StyleSheet Interface"}],"url":"#dom-stylesheet-type"}, "dom-stylesheetlist-item": {"dfnID":"dom-stylesheetlist-item","dfnText":"item(index)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-stylesheetlist-item"}],"title":"6.2.2. The StyleSheetList Interface"}],"url":"#dom-stylesheetlist-item"}, "dom-stylesheetlist-item-index-index": {"dfnID":"dom-stylesheetlist-item-index-index","dfnText":"index","external":false,"refSections":[],"url":"#dom-stylesheetlist-item-index-index"}, "dom-stylesheetlist-length": {"dfnID":"dom-stylesheetlist-length","dfnText":"length","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-stylesheetlist-length"}],"title":"6.2.2. The StyleSheetList Interface"}],"url":"#dom-stylesheetlist-length"}, "dom-window-getcomputedstyle": {"dfnID":"dom-window-getcomputedstyle","dfnText":"getComputedStyle(elt, pseudoElt)","external":false,"refSections":[{"refs":[{"id":"ref-for-dom-window-getcomputedstyle"},{"id":"ref-for-dom-window-getcomputedstyle\u2460"}],"title":"7.2. Extensions to the Window Interface"},{"refs":[{"id":"ref-for-dom-window-getcomputedstyle\u2461"},{"id":"ref-for-dom-window-getcomputedstyle\u2462"}],"title":"9. Resolved Values"}],"url":"#dom-window-getcomputedstyle"}, "dom-window-getcomputedstyle-elt-pseudoelt-elt": {"dfnID":"dom-window-getcomputedstyle-elt-pseudoelt-elt","dfnText":"elt","external":false,"refSections":[],"url":"#dom-window-getcomputedstyle-elt-pseudoelt-elt"}, "dom-window-getcomputedstyle-elt-pseudoelt-pseudoelt": {"dfnID":"dom-window-getcomputedstyle-elt-pseudoelt-pseudoelt","dfnText":"pseudoElt","external":false,"refSections":[],"url":"#dom-window-getcomputedstyle-elt-pseudoelt-pseudoelt"}, "e1483d91": {"dfnID":"e1483d91","dfnText":"top","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-top"},{"id":"ref-for-propdef-top\u2460"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-position-3/#propdef-top"}, "e383a138": {"dfnID":"e383a138","dfnText":"CSSFontFeatureValuesRule","external":true,"refSections":[{"refs":[{"id":"ref-for-cssfontfeaturevaluesrule"}],"title":"6.4.2. The CSSRule Interface"}],"url":"https://drafts.csswg.org/css-fonts-4/#cssfontfeaturevaluesrule"}, "e652d1b9": {"dfnID":"e652d1b9","dfnText":"-webkit-transform","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef--webkit-transform"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"https://compat.spec.whatwg.org/#propdef--webkit-transform"}, "e7cd6f5a": {"dfnID":"e7cd6f5a","dfnText":"font-stretch","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-font-stretch"},{"id":"ref-for-propdef-font-stretch\u2460"}],"title":"6.4. CSS Rules"}],"url":"https://drafts.csswg.org/css-fonts-4/#propdef-font-stretch"}, "e7f0dd6c": {"dfnID":"e7f0dd6c","dfnText":"display","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-display"},{"id":"ref-for-propdef-display\u2460"}],"title":"9. Resolved Values"},{"refs":[{"id":"ref-for-propdef-display\u2461"}],"title":"11.1. Changes From 17 March 2016"}],"url":"https://drafts.csswg.org/css-display-4/#propdef-display"}, "e92e094f": {"dfnID":"e92e094f","dfnText":"parse a stylesheet's contents","external":true,"refSections":[{"refs":[{"id":"ref-for-parse-a-stylesheets-contents"},{"id":"ref-for-parse-a-stylesheets-contents\u2460"}],"title":"6.1.2. The CSSStyleSheet Interface"}],"url":"https://drafts.csswg.org/css-syntax-3/#parse-a-stylesheets-contents"}, "e97a9688": {"dfnID":"e97a9688","dfnText":"unsigned long","external":true,"refSections":[{"refs":[{"id":"ref-for-idl-unsigned-long"},{"id":"ref-for-idl-unsigned-long\u2460"}],"title":"4.4. The MediaList Interface"},{"refs":[{"id":"ref-for-idl-unsigned-long\u2461"},{"id":"ref-for-idl-unsigned-long\u2462"},{"id":"ref-for-idl-unsigned-long\u2463"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-idl-unsigned-long\u2464"},{"id":"ref-for-idl-unsigned-long\u2465"}],"title":"6.1.2.1. Deprecated CSSStyleSheet members"},{"refs":[{"id":"ref-for-idl-unsigned-long\u2466"},{"id":"ref-for-idl-unsigned-long\u2467"}],"title":"6.2.2. The StyleSheetList Interface"},{"refs":[{"id":"ref-for-idl-unsigned-long\u2468"},{"id":"ref-for-idl-unsigned-long\u2460\u24ea"}],"title":"6.4.1. The CSSRuleList Interface"},{"refs":[{"id":"ref-for-idl-unsigned-long\u2460\u2460"},{"id":"ref-for-idl-unsigned-long\u2460\u2461"},{"id":"ref-for-idl-unsigned-long\u2460\u2462"}],"title":"6.4.5. The CSSGroupingRule Interface"},{"refs":[{"id":"ref-for-idl-unsigned-long\u2460\u2463"},{"id":"ref-for-idl-unsigned-long\u2460\u2464"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"https://webidl.spec.whatwg.org/#idl-unsigned-long"}, "e9c7fbb8": {"dfnID":"e9c7fbb8","dfnText":"inset-inline-start","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-inset-inline-start"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-position-3/#propdef-inset-inline-start"}, "ea2049db": {"dfnID":"ea2049db","dfnText":"shadow-including root","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-shadow-including-root"}],"title":"7.2. Extensions to the Window Interface"}],"url":"https://dom.spec.whatwg.org/#concept-shadow-including-root"}, "eb1b1af3": {"dfnID":"eb1b1af3","dfnText":"network error","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-network-error"}],"title":"6.3.1. Fetching CSS style sheets"}],"url":"https://fetch.spec.whatwg.org/#concept-network-error"}, "eb3aa672": {"dfnID":"eb3aa672","dfnText":"logical property group","external":true,"refSections":[{"refs":[{"id":"ref-for-logical-property-group"}],"title":"6.6. CSS Declaration Blocks"},{"refs":[{"id":"ref-for-logical-property-group\u2460"},{"id":"ref-for-logical-property-group\u2461"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"https://drafts.csswg.org/css-logical-1/#logical-property-group"}, "eb7e3851": {"dfnID":"eb7e3851","dfnText":"guaranteed-invalid value","external":true,"refSections":[{"refs":[{"id":"ref-for-guaranteed-invalid-value"}],"title":"7.2. Extensions to the Window Interface"}],"url":"https://drafts.csswg.org/css-variables-2/#guaranteed-invalid-value"}, "elementcssinlinestyle": {"dfnID":"elementcssinlinestyle","dfnText":"ElementCSSInlineStyle","external":false,"refSections":[{"refs":[{"id":"ref-for-elementcssinlinestyle"},{"id":"ref-for-elementcssinlinestyle\u2460"},{"id":"ref-for-elementcssinlinestyle\u2461"},{"id":"ref-for-elementcssinlinestyle\u2462"}],"title":"7.1. \nThe ElementCSSInlineStyle Mixin"}],"url":"#elementcssinlinestyle"}, "enable-a-css-style-sheet-set": {"dfnID":"enable-a-css-style-sheet-set","dfnText":"enable a CSS style sheet set","external":false,"refSections":[{"refs":[{"id":"ref-for-enable-a-css-style-sheet-set"},{"id":"ref-for-enable-a-css-style-sheet-set\u2460"}],"title":"6.2. CSS Style Sheet Collections"}],"url":"#enable-a-css-style-sheet-set"}, "enabled-css-style-sheet-set": {"dfnID":"enabled-css-style-sheet-set","dfnText":"enabled CSS style sheet set","external":false,"refSections":[{"refs":[{"id":"ref-for-enabled-css-style-sheet-set"}],"title":"6.2.1. The HTTP Default-Style Header"}],"url":"#enabled-css-style-sheet-set"}, "escape-a-character": {"dfnID":"escape-a-character","dfnText":"escape a character","external":false,"refSections":[{"refs":[{"id":"ref-for-escape-a-character"},{"id":"ref-for-escape-a-character\u2460"},{"id":"ref-for-escape-a-character\u2461"}],"title":"2.1. Common Serializing Idioms"}],"url":"#escape-a-character"}, "escape-a-character-as-code-point": {"dfnID":"escape-a-character-as-code-point","dfnText":"escape a character as code point","external":false,"refSections":[{"refs":[{"id":"ref-for-escape-a-character-as-code-point"},{"id":"ref-for-escape-a-character-as-code-point\u2460"},{"id":"ref-for-escape-a-character-as-code-point\u2461"},{"id":"ref-for-escape-a-character-as-code-point\u2462"}],"title":"2.1. Common Serializing Idioms"}],"url":"#escape-a-character-as-code-point"}, "f0c46389": {"dfnID":"f0c46389","dfnText":"block-size","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-block-size"}],"title":"9. Resolved Values"}],"url":"https://drafts.csswg.org/css-logical-1/#propdef-block-size"}, "f78d5b5c": {"dfnID":"f78d5b5c","dfnText":"origin","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-request-origin"}],"title":"6.3.1. Fetching CSS style sheets"}],"url":"https://fetch.spec.whatwg.org/#concept-request-origin"}, "f8434dee": {"dfnID":"f8434dee","dfnText":"being rendered","external":true,"refSections":[{"refs":[{"id":"ref-for-being-rendered"}],"title":"7.2. Extensions to the Window Interface"}],"url":"https://html.spec.whatwg.org/multipage/rendering.html#being-rendered"}, "f8cc2828": {"dfnID":"f8cc2828","dfnText":"nested declarations rule","external":true,"refSections":[{"refs":[{"id":"ref-for-nested-declarations-rule%E2%91%A0"}],"title":"6.4. CSS Rules"}],"url":"https://drafts.csswg.org/css-nesting-1/#nested-declarations-rule%E2%91%A0"}, "f937b7b6": {"dfnID":"f937b7b6","dfnText":"continue","external":true,"refSections":[{"refs":[{"id":"ref-for-iteration-continue"},{"id":"ref-for-iteration-continue\u2460"},{"id":"ref-for-iteration-continue\u2461"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"https://infra.spec.whatwg.org/#iteration-continue"}, "fa293cdd": {"dfnID":"fa293cdd","dfnText":"<url>","external":true,"refSections":[{"refs":[{"id":"ref-for-url-value"},{"id":"ref-for-url-value\u2460"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css-values-4/#url-value"}, "faf954d6": {"dfnID":"faf954d6","dfnText":"browsing context","external":true,"refSections":[{"refs":[{"id":"ref-for-browsing-context"}],"title":"7.2. Extensions to the Window Interface"}],"url":"https://html.spec.whatwg.org/multipage/browsers.html#browsing-context"}, "fb030e6c": {"dfnID":"fb030e6c","dfnText":"<length>","external":true,"refSections":[{"refs":[{"id":"ref-for-length-value"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css-values-4/#length-value"}, "fb7153bd": {"dfnID":"fb7153bd","dfnText":"font-variant","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-font-variant"},{"id":"ref-for-propdef-font-variant\u2460"}],"title":"6.4. CSS Rules"}],"url":"https://drafts.csswg.org/css-fonts-4/#propdef-font-variant"}, "fd11cdcd": {"dfnID":"fd11cdcd","dfnText":"quirks mode","external":true,"refSections":[{"refs":[{"id":"ref-for-concept-document-quirks"}],"title":"6.3.1. Fetching CSS style sheets"}],"url":"https://dom.spec.whatwg.org/#concept-document-quirks"}, "fdf6efd5": {"dfnID":"fdf6efd5","dfnText":"font-size","external":true,"refSections":[{"refs":[{"id":"ref-for-propdef-font-size"},{"id":"ref-for-propdef-font-size\u2460"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"https://drafts.csswg.org/css-fonts-4/#propdef-font-size"}, "fe15742e": {"dfnID":"fe15742e","dfnText":"ObservableArray","external":true,"refSections":[{"refs":[{"id":"ref-for-idl-observable-array"}],"title":"6.2.3. Extensions to the DocumentOrShadowRoot Interface Mixin"}],"url":"https://webidl.spec.whatwg.org/#idl-observable-array"}, "fe1e6dc9": {"dfnID":"fe1e6dc9","dfnText":"<identifier>","external":true,"refSections":[{"refs":[{"id":"ref-for-value-def-identifier"}],"title":"6.7.2. Serializing CSS Values"}],"url":"https://drafts.csswg.org/css2/#value-def-identifier"}, "fetch-a-css-style-sheet": {"dfnID":"fetch-a-css-style-sheet","dfnText":"fetch a CSS style sheet","external":false,"refSections":[{"refs":[{"id":"ref-for-fetch-a-css-style-sheet"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"},{"refs":[{"id":"ref-for-fetch-a-css-style-sheet\u2460"}],"title":"6.3.5. Requirements on user agents Implementing the HTTP Link Header"}],"url":"#fetch-a-css-style-sheet"}, "http-default-style": {"dfnID":"http-default-style","dfnText":"Default-Style","external":false,"refSections":[{"refs":[{"id":"ref-for-http-default-style"},{"id":"ref-for-http-default-style\u2460"}],"title":"6.2.1. The HTTP Default-Style Header"}],"url":"#http-default-style"}, "idl-attribute-to-css-property": {"dfnID":"idl-attribute-to-css-property","dfnText":"IDL attribute to CSS property","external":false,"refSections":[{"refs":[{"id":"ref-for-idl-attribute-to-css-property"},{"id":"ref-for-idl-attribute-to-css-property\u2460"},{"id":"ref-for-idl-attribute-to-css-property\u2461"},{"id":"ref-for-idl-attribute-to-css-property\u2462"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#idl-attribute-to-css-property"}, "insert-a-css-rule": {"dfnID":"insert-a-css-rule","dfnText":"insert a CSS rule","external":false,"refSections":[{"refs":[{"id":"ref-for-insert-a-css-rule"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-insert-a-css-rule\u2460"}],"title":"6.4.5. The CSSGroupingRule Interface"}],"url":"#insert-a-css-rule"}, "last-css-style-sheet-set-name": {"dfnID":"last-css-style-sheet-set-name","dfnText":"last CSS style sheet set name","external":false,"refSections":[{"refs":[{"id":"ref-for-last-css-style-sheet-set-name"},{"id":"ref-for-last-css-style-sheet-set-name\u2460"},{"id":"ref-for-last-css-style-sheet-set-name\u2461"},{"id":"ref-for-last-css-style-sheet-set-name\u2462"}],"title":"6.2. CSS Style Sheet Collections"}],"url":"#last-css-style-sheet-set-name"}, "linkstyle": {"dfnID":"linkstyle","dfnText":"LinkStyle","external":false,"refSections":[{"refs":[{"id":"ref-for-linkstyle"},{"id":"ref-for-linkstyle\u2460"}],"title":"6.3.2. The LinkStyle Interface"},{"refs":[{"id":"ref-for-linkstyle\u2461"}],"title":"6.3.3. Requirements on specifications"},{"refs":[{"id":"ref-for-linkstyle\u2462"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"#linkstyle"}, "medialist": {"dfnID":"medialist","dfnText":"MediaList","external":false,"refSections":[{"refs":[{"id":"ref-for-medialist"}],"title":"4.4. The MediaList Interface"},{"refs":[{"id":"ref-for-medialist\u2460"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-medialist\u2461"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-medialist\u2462"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-medialist\u2463"}],"title":"6.4.4. The CSSImportRule Interface"}],"url":"#medialist"}, "medialist-collection-of-media-queries": {"dfnID":"medialist-collection-of-media-queries","dfnText":"collection of media queries","external":false,"refSections":[{"refs":[{"id":"ref-for-medialist-collection-of-media-queries"},{"id":"ref-for-medialist-collection-of-media-queries\u2460"},{"id":"ref-for-medialist-collection-of-media-queries\u2461"},{"id":"ref-for-medialist-collection-of-media-queries\u2462"},{"id":"ref-for-medialist-collection-of-media-queries\u2463"},{"id":"ref-for-medialist-collection-of-media-queries\u2464"},{"id":"ref-for-medialist-collection-of-media-queries\u2465"},{"id":"ref-for-medialist-collection-of-media-queries\u2466"},{"id":"ref-for-medialist-collection-of-media-queries\u2467"},{"id":"ref-for-medialist-collection-of-media-queries\u2468"}],"title":"4.4. The MediaList Interface"}],"url":"#medialist-collection-of-media-queries"}, "namespacedef-css": {"dfnID":"namespacedef-css","dfnText":"CSS","external":false,"refSections":[{"refs":[{"id":"ref-for-namespacedef-css"}],"title":"8.1. The CSS.escape() Method"},{"refs":[{"id":"ref-for-namespacedef-css\u2460"}],"title":"11.1. Changes From 17 March 2016"}],"url":"#namespacedef-css"}, "parse-a-css-declaration-block": {"dfnID":"parse-a-css-declaration-block","dfnText":"parse a CSS declaration block","external":false,"refSections":[{"refs":[{"id":"ref-for-parse-a-css-declaration-block"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-parse-a-css-declaration-block\u2460"},{"id":"ref-for-parse-a-css-declaration-block\u2461"}],"title":"6.6. CSS Declaration Blocks"},{"refs":[{"id":"ref-for-parse-a-css-declaration-block\u2462"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-parse-a-css-declaration-block\u2463"}],"title":"11.3. Changes From 12 July 2011 To 5 December 2013"}],"url":"#parse-a-css-declaration-block"}, "parse-a-css-rule": {"dfnID":"parse-a-css-rule","dfnText":"parse a CSS rule","external":false,"refSections":[{"refs":[{"id":"ref-for-parse-a-css-rule"}],"title":"6.4. CSS Rules"}],"url":"#parse-a-css-rule"}, "parse-a-css-value": {"dfnID":"parse-a-css-value","dfnText":"parse a CSS value","external":false,"refSections":[{"refs":[{"id":"ref-for-parse-a-css-value"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-parse-a-css-value\u2460"}],"title":"6.7.1. Parsing CSS Values"}],"url":"#parse-a-css-value"}, "parse-a-group-of-selectors": {"dfnID":"parse-a-group-of-selectors","dfnText":"parse a group of selectors","external":false,"refSections":[{"refs":[{"id":"ref-for-parse-a-group-of-selectors"}],"title":"6.4.3. The CSSStyleRule Interface"}],"url":"#parse-a-group-of-selectors"}, "parse-a-list-of-css-page-selectors": {"dfnID":"parse-a-list-of-css-page-selectors","dfnText":"parse a list of CSS page selectors","external":false,"refSections":[{"refs":[{"id":"ref-for-parse-a-list-of-css-page-selectors"}],"title":"6.4.7. The CSSPageRule Interface"}],"url":"#parse-a-list-of-css-page-selectors"}, "parse-a-media-query": {"dfnID":"parse-a-media-query","dfnText":"parse a media query","external":false,"refSections":[{"refs":[{"id":"ref-for-parse-a-media-query"},{"id":"ref-for-parse-a-media-query\u2460"}],"title":"4.4. The MediaList Interface"}],"url":"#parse-a-media-query"}, "parse-a-media-query-list": {"dfnID":"parse-a-media-query-list","dfnText":"parse a media query list","external":false,"refSections":[{"refs":[{"id":"ref-for-parse-a-media-query-list"}],"title":"4.1. Parsing Media Queries"},{"refs":[{"id":"ref-for-parse-a-media-query-list\u2460"}],"title":"4.4. The MediaList Interface"}],"url":"#parse-a-media-query-list"}, "persistent-css-style-sheet": {"dfnID":"persistent-css-style-sheet","dfnText":"persistent CSS style sheet","external":false,"refSections":[],"url":"#persistent-css-style-sheet"}, "preferred-css-style-sheet-set-name": {"dfnID":"preferred-css-style-sheet-set-name","dfnText":"preferred CSS style sheet set name","external":false,"refSections":[{"refs":[{"id":"ref-for-preferred-css-style-sheet-set-name"},{"id":"ref-for-preferred-css-style-sheet-set-name\u2460"},{"id":"ref-for-preferred-css-style-sheet-set-name\u2461"},{"id":"ref-for-preferred-css-style-sheet-set-name\u2462"}],"title":"6.2. CSS Style Sheet Collections"},{"refs":[{"id":"ref-for-preferred-css-style-sheet-set-name\u2463"}],"title":"6.2.1. The HTTP Default-Style Header"}],"url":"#preferred-css-style-sheet-set-name"}, "prolog": {"dfnID":"prolog","dfnText":"prolog","external":false,"refSections":[{"refs":[{"id":"ref-for-prolog"},{"id":"ref-for-prolog\u2460"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"#prolog"}, "remove-a-css-rule": {"dfnID":"remove-a-css-rule","dfnText":"remove a CSS rule","external":false,"refSections":[{"refs":[{"id":"ref-for-remove-a-css-rule"},{"id":"ref-for-remove-a-css-rule\u2460"},{"id":"ref-for-remove-a-css-rule\u2461"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-remove-a-css-rule\u2462"}],"title":"6.4.2. The CSSRule Interface"},{"refs":[{"id":"ref-for-remove-a-css-rule\u2463"}],"title":"6.4.5. The CSSGroupingRule Interface"}],"url":"#remove-a-css-rule"}, "remove-a-css-style-sheet": {"dfnID":"remove-a-css-style-sheet","dfnText":"remove a CSS style sheet","external":false,"refSections":[{"refs":[{"id":"ref-for-remove-a-css-style-sheet"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"#remove-a-css-style-sheet"}, "resolved-value": {"dfnID":"resolved-value","dfnText":"resolved value","external":false,"refSections":[{"refs":[{"id":"ref-for-resolved-value"}],"title":"7.2. Extensions to the Window Interface"},{"refs":[{"id":"ref-for-resolved-value\u2460"},{"id":"ref-for-resolved-value\u2461"},{"id":"ref-for-resolved-value\u2462"},{"id":"ref-for-resolved-value\u2463"},{"id":"ref-for-resolved-value\u2464"},{"id":"ref-for-resolved-value\u2465"},{"id":"ref-for-resolved-value\u2466"},{"id":"ref-for-resolved-value\u2467"},{"id":"ref-for-resolved-value\u2468"},{"id":"ref-for-resolved-value\u2460\u24ea"}],"title":"9. Resolved Values"}],"url":"#resolved-value"}, "resolved-value-special-case-property": {"dfnID":"resolved-value-special-case-property","dfnText":"resolved value special case property","external":false,"refSections":[],"url":"#resolved-value-special-case-property"}, "resolved-value-special-case-property-like-color": {"dfnID":"resolved-value-special-case-property-like-color","dfnText":"resolved value special case property like color","external":false,"refSections":[],"url":"#resolved-value-special-case-property-like-color"}, "resolved-value-special-case-property-like-height": {"dfnID":"resolved-value-special-case-property-like-height","dfnText":"resolved value special case property like height","external":false,"refSections":[],"url":"#resolved-value-special-case-property-like-height"}, "resolved-value-special-case-property-like-top": {"dfnID":"resolved-value-special-case-property-like-top","dfnText":"resolved value special case property like top","external":false,"refSections":[],"url":"#resolved-value-special-case-property-like-top"}, "select-a-css-style-sheet-set": {"dfnID":"select-a-css-style-sheet-set","dfnText":"select a CSS style sheet set","external":false,"refSections":[{"refs":[{"id":"ref-for-select-a-css-style-sheet-set"}],"title":"6.2. CSS Style Sheet Collections"}],"url":"#select-a-css-style-sheet-set"}, "serialize-a-comma-separated-list": {"dfnID":"serialize-a-comma-separated-list","dfnText":"serialize a comma-separated list","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-a-comma-separated-list"}],"title":"4.2. Serializing Media Queries"},{"refs":[{"id":"ref-for-serialize-a-comma-separated-list\u2460"},{"id":"ref-for-serialize-a-comma-separated-list\u2461"}],"title":"5.2. Serializing Selectors"},{"refs":[{"id":"ref-for-serialize-a-comma-separated-list\u2462"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-serialize-a-comma-separated-list\u2463"},{"id":"ref-for-serialize-a-comma-separated-list\u2464"}],"title":"6.7.2. Serializing CSS Values"}],"url":"#serialize-a-comma-separated-list"}, "serialize-a-css-component-value": {"dfnID":"serialize-a-css-component-value","dfnText":"serialize a CSS component value","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-a-css-component-value"},{"id":"ref-for-serialize-a-css-component-value\u2460"},{"id":"ref-for-serialize-a-css-component-value\u2461"}],"title":"6.7.2. Serializing CSS Values"}],"url":"#serialize-a-css-component-value"}, "serialize-a-css-declaration": {"dfnID":"serialize-a-css-declaration","dfnText":"serialize a CSS declaration","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-a-css-declaration"},{"id":"ref-for-serialize-a-css-declaration\u2460"}],"title":"6.6. CSS Declaration Blocks"}],"url":"#serialize-a-css-declaration"}, "serialize-a-css-declaration-block": {"dfnID":"serialize-a-css-declaration-block","dfnText":"serialize a CSS declaration block","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-a-css-declaration-block"},{"id":"ref-for-serialize-a-css-declaration-block\u2460"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-serialize-a-css-declaration-block\u2461"}],"title":"6.6. CSS Declaration Blocks"},{"refs":[{"id":"ref-for-serialize-a-css-declaration-block\u2462"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-serialize-a-css-declaration-block\u2463"}],"title":"11.3. Changes From 12 July 2011 To 5 December 2013"}],"url":"#serialize-a-css-declaration-block"}, "serialize-a-css-rule": {"dfnID":"serialize-a-css-rule","dfnText":"serialize a CSS rule","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-a-css-rule"},{"id":"ref-for-serialize-a-css-rule\u2460"},{"id":"ref-for-serialize-a-css-rule\u2461"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-serialize-a-css-rule\u2462"}],"title":"6.4.2. The CSSRule Interface"}],"url":"#serialize-a-css-rule"}, "serialize-a-css-value": {"dfnID":"serialize-a-css-value","dfnText":"serialize a CSS value","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-a-css-value"},{"id":"ref-for-serialize-a-css-value\u2460"}],"title":"6.6. CSS Declaration Blocks"},{"refs":[{"id":"ref-for-serialize-a-css-value\u2461"},{"id":"ref-for-serialize-a-css-value\u2462"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-serialize-a-css-value\u2463"}],"title":"6.7.2. Serializing CSS Values"}],"url":"#serialize-a-css-value"}, "serialize-a-group-of-selectors": {"dfnID":"serialize-a-group-of-selectors","dfnText":"serialize a group of selectors","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-a-group-of-selectors"}],"title":"5.2. Serializing Selectors"},{"refs":[{"id":"ref-for-serialize-a-group-of-selectors\u2460"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-serialize-a-group-of-selectors\u2461"}],"title":"6.4.3. The CSSStyleRule Interface"}],"url":"#serialize-a-group-of-selectors"}, "serialize-a-list-of-css-page-selectors": {"dfnID":"serialize-a-list-of-css-page-selectors","dfnText":"serialize a list of CSS page selectors","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-a-list-of-css-page-selectors"}],"title":"6.4.7. The CSSPageRule Interface"}],"url":"#serialize-a-list-of-css-page-selectors"}, "serialize-a-local": {"dfnID":"serialize-a-local","dfnText":"serialize a LOCAL","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-a-local"}],"title":"6.4. CSS Rules"}],"url":"#serialize-a-local"}, "serialize-a-media-feature-value": {"dfnID":"serialize-a-media-feature-value","dfnText":"serialize a media feature value","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-a-media-feature-value"}],"title":"4.2. Serializing Media Queries"}],"url":"#serialize-a-media-feature-value"}, "serialize-a-media-query": {"dfnID":"serialize-a-media-query","dfnText":"serialize a media query","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-a-media-query"}],"title":"4.2. Serializing Media Queries"},{"refs":[{"id":"ref-for-serialize-a-media-query\u2460"}],"title":"4.3. Comparing Media Queries"},{"refs":[{"id":"ref-for-serialize-a-media-query\u2461"}],"title":"4.4. The MediaList Interface"}],"url":"#serialize-a-media-query"}, "serialize-a-media-query-list": {"dfnID":"serialize-a-media-query-list","dfnText":"serialize a media query list","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-a-media-query-list"}],"title":"4.4. The MediaList Interface"},{"refs":[{"id":"ref-for-serialize-a-media-query-list\u2460"}],"title":"6.1. CSS Style Sheets"},{"refs":[{"id":"ref-for-serialize-a-media-query-list\u2461"},{"id":"ref-for-serialize-a-media-query-list\u2462"}],"title":"6.4. CSS Rules"}],"url":"#serialize-a-media-query-list"}, "serialize-a-selector": {"dfnID":"serialize-a-selector","dfnText":"serialize a selector","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-a-selector"}],"title":"5.2. Serializing Selectors"}],"url":"#serialize-a-selector"}, "serialize-a-simple-selector": {"dfnID":"serialize-a-simple-selector","dfnText":"serialize a simple selector","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-a-simple-selector"},{"id":"ref-for-serialize-a-simple-selector\u2460"}],"title":"5.2. Serializing Selectors"}],"url":"#serialize-a-simple-selector"}, "serialize-a-string": {"dfnID":"serialize-a-string","dfnText":"serialize a string","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-a-string"},{"id":"ref-for-serialize-a-string\u2460"}],"title":"2.1. Common Serializing Idioms"},{"refs":[{"id":"ref-for-serialize-a-string\u2461"},{"id":"ref-for-serialize-a-string\u2462"}],"title":"5.2. Serializing Selectors"},{"refs":[{"id":"ref-for-serialize-a-string\u2463"},{"id":"ref-for-serialize-a-string\u2464"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-serialize-a-string\u2465"}],"title":"6.7.2. Serializing CSS Values"}],"url":"#serialize-a-string"}, "serialize-a-url": {"dfnID":"serialize-a-url","dfnText":"serialize a URL","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-a-url"},{"id":"ref-for-serialize-a-url\u2460"},{"id":"ref-for-serialize-a-url\u2461"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-serialize-a-url\u2462"}],"title":"6.7.2. Serializing CSS Values"}],"url":"#serialize-a-url"}, "serialize-a-whitespace-separated-list": {"dfnID":"serialize-a-whitespace-separated-list","dfnText":"serialize a whitespace-separated list","external":false,"refSections":[],"url":"#serialize-a-whitespace-separated-list"}, "serialize-an-identifier": {"dfnID":"serialize-an-identifier","dfnText":"serialize an identifier","external":false,"refSections":[{"refs":[{"id":"ref-for-serialize-an-identifier"}],"title":"4.2. Serializing Media Queries"},{"refs":[{"id":"ref-for-serialize-an-identifier\u2460"},{"id":"ref-for-serialize-an-identifier\u2461"},{"id":"ref-for-serialize-an-identifier\u2462"},{"id":"ref-for-serialize-an-identifier\u2463"},{"id":"ref-for-serialize-an-identifier\u2464"},{"id":"ref-for-serialize-an-identifier\u2465"}],"title":"5.2. Serializing Selectors"},{"refs":[{"id":"ref-for-serialize-an-identifier\u2466"},{"id":"ref-for-serialize-an-identifier\u2467"}],"title":"6.4. CSS Rules"},{"refs":[{"id":"ref-for-serialize-an-identifier\u2468"}],"title":"6.7.2. Serializing CSS Values"},{"refs":[{"id":"ref-for-serialize-an-identifier\u2460\u24ea"}],"title":"8.1. The CSS.escape() Method"}],"url":"#serialize-an-identifier"}, "set": {"dfnID":"set","dfnText":"set","external":false,"refSections":[{"refs":[{"id":"ref-for-set"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#set"}, "set-a-css-declaration": {"dfnID":"set-a-css-declaration","dfnText":"set a CSS declaration","external":false,"refSections":[{"refs":[{"id":"ref-for-set-a-css-declaration"},{"id":"ref-for-set-a-css-declaration\u2460"},{"id":"ref-for-set-a-css-declaration\u2461"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#set-a-css-declaration"}, "stylesheet": {"dfnID":"stylesheet","dfnText":"StyleSheet","external":false,"refSections":[{"refs":[{"id":"ref-for-stylesheet"},{"id":"ref-for-stylesheet\u2460"}],"title":"6.1.1. The StyleSheet Interface"},{"refs":[{"id":"ref-for-stylesheet\u2461"}],"title":"6.1.2. The CSSStyleSheet Interface"},{"refs":[{"id":"ref-for-stylesheet\u2462"}],"title":"6.3.2. The LinkStyle Interface"}],"url":"#stylesheet"}, "stylesheetlist": {"dfnID":"stylesheetlist","dfnText":"StyleSheetList","external":false,"refSections":[{"refs":[{"id":"ref-for-stylesheetlist"},{"id":"ref-for-stylesheetlist\u2460"}],"title":"6.2.2. The StyleSheetList Interface"},{"refs":[{"id":"ref-for-stylesheetlist\u2461"},{"id":"ref-for-stylesheetlist\u2462"}],"title":"6.2.3. Extensions to the DocumentOrShadowRoot Interface Mixin"}],"url":"#stylesheetlist"}, "supported-css-property": {"dfnID":"supported-css-property","dfnText":"supported CSS property","external":false,"refSections":[{"refs":[{"id":"ref-for-supported-css-property"}],"title":"2. Terminology"},{"refs":[{"id":"ref-for-supported-css-property\u2460"},{"id":"ref-for-supported-css-property\u2461"},{"id":"ref-for-supported-css-property\u2462"},{"id":"ref-for-supported-css-property\u2463"}],"title":"6.6.1. The CSSStyleDeclaration Interface"},{"refs":[{"id":"ref-for-supported-css-property\u2464"}],"title":"7.2. Extensions to the Window Interface"}],"url":"#supported-css-property"}, "supported-styling-language": {"dfnID":"supported-styling-language","dfnText":"supported styling language","external":false,"refSections":[{"refs":[{"id":"ref-for-supported-styling-language"},{"id":"ref-for-supported-styling-language\u2460"}],"title":"6.3.1. Fetching CSS style sheets"},{"refs":[{"id":"ref-for-supported-styling-language\u2461"}],"title":"6.3.4. Requirements on user agents Implementing the xml-stylesheet processing instruction"}],"url":"#supported-styling-language"}, "synchronously-replace-the-rules-of-a-cssstylesheet": {"dfnID":"synchronously-replace-the-rules-of-a-cssstylesheet","dfnText":"synchronously replace the rules of a CSSStyleSheet","external":false,"refSections":[{"refs":[{"id":"ref-for-synchronously-replace-the-rules-of-a-cssstylesheet"}],"title":"6.1.2. The CSSStyleSheet Interface"}],"url":"#synchronously-replace-the-rules-of-a-cssstylesheet"}, "unset": {"dfnID":"unset","dfnText":"unset","external":false,"refSections":[{"refs":[{"id":"ref-for-unset"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#unset"}, "update-style-attribute-for": {"dfnID":"update-style-attribute-for","dfnText":"update style attribute for","external":false,"refSections":[{"refs":[{"id":"ref-for-update-style-attribute-for"},{"id":"ref-for-update-style-attribute-for\u2460"},{"id":"ref-for-update-style-attribute-for\u2461"}],"title":"6.6.1. The CSSStyleDeclaration Interface"}],"url":"#update-style-attribute-for"}, }; document.addEventListener("DOMContentLoaded", ()=>{ genAllDfnPanels(); document.body.addEventListener("click", (e) => { // If not handled already, just hide all dfn panels. hideAllDfnPanels(); }); }); window.addEventListener("resize", () => { // Pin any visible dfn panel queryAll(".dfn-panel.on, .dfn-panel.activated").forEach(el=>positionDfnPanel(el)); }); function genAllDfnPanels() { for(const panelData of Object.values(dfnPanelData)) { const dfnID = panelData.dfnID; const dfn = document.getElementById(dfnID); if(!dfn) { console.log(`Can't find dfn#${dfnID}.`, panelData); continue; } dfn.panelData = panelData; insertDfnPopupAction(dfn); } } function genDfnPanel(dfn, { dfnID, url, dfnText, refSections, external }) { const dfnPanel = mk.aside({ class: "dfn-panel on", id: `infopanel-for-${dfnID}`, "data-for": dfnID, "aria-labelled-by":`infopaneltitle-for-${dfnID}`, }, mk.span({id:`infopaneltitle-for-${dfnID}`, style:"display:none"}, `Info about the '${dfnText}' ${external?"external":""} reference.`), mk.a({href:url, class:"dfn-link"}, url), refSections.length == 0 ? [] : mk.b({}, "Referenced in:"), mk.ul({}, ...refSections.map(section=> mk.li({}, ...section.refs.map((ref, refI)=> [ mk.a({ href: `#${ref.id}` }, (refI == 0) ? section.title : `(${refI + 1})` ), " ", ] ), ), ), ), genLinkingSyntaxes(dfn), ); dfnPanel.addEventListener('click', (event) => { if (event.target.nodeName == 'A') { scrollToTargetAndHighlight(event); pinDfnPanel(dfnPanel); } event.stopPropagation(); refocusOnTarget(event); }); dfnPanel.addEventListener('keydown', (event) => { if(event.keyCode == 27) { // Escape key hideDfnPanel({dfnPanel}); event.stopPropagation(); event.preventDefault(); } }); dfnPanel.dfn = dfn; dfn.dfnPanel = dfnPanel; return dfnPanel; } function hideAllDfnPanels() { // Delete the currently-active dfn panel. queryAll(".dfn-panel").forEach(dfnPanel=>hideDfnPanel({dfnPanel})); } function showDfnPanel(dfn) { hideAllDfnPanels(); // Only display one at a time. dfn.setAttribute("aria-expanded", "true"); const dfnPanel = genDfnPanel(dfn, dfn.panelData); // Give the dfn a unique tabindex, and then // give all the tabbable panel bits successive indexes. let tabIndex = 100; dfn.tabIndex = tabIndex++; const tabbable = dfnPanel.querySelectorAll(":is(a, button)"); for (const el of tabbable) { el.tabIndex = tabIndex++; } append(document.body, dfnPanel); positionDfnPanel(dfnPanel); } function positionDfnPanel(dfnPanel) { const dfn = dfnPanel.dfn; const dfnPos = getBounds(dfn); dfnPanel.style.top = dfnPos.bottom + "px"; dfnPanel.style.left = dfnPos.left + "px"; const panelPos = dfnPanel.getBoundingClientRect(); const panelMargin = 8; const maxRight = document.body.parentNode.clientWidth - panelMargin; if (panelPos.right > maxRight) { const overflowAmount = panelPos.right - maxRight; const newLeft = Math.max(panelMargin, dfnPos.left - overflowAmount); dfnPanel.style.left = newLeft + "px"; } } function pinDfnPanel(dfnPanel) { // Switch it to "activated" state, which pins it. dfnPanel.classList.add("activated"); dfnPanel.style.position = "fixed"; dfnPanel.style.left = null; dfnPanel.style.top = null; } function hideDfnPanel({dfn, dfnPanel}) { if(!dfnPanel) dfnPanel = dfn.dfnPanel; if(!dfn) dfn = dfnPanel.dfn; dfn.dfnPanel = undefined; dfnPanel.dfn = undefined; dfn.setAttribute("aria-expanded", "false"); dfn.tabIndex = undefined; dfnPanel.remove() } function toggleDfnPanel(dfn) { if(dfn.dfnPanel) { hideDfnPanel(dfn); } else { showDfnPanel(dfn); } } function insertDfnPopupAction(dfn) { dfn.setAttribute('role', 'button'); dfn.setAttribute('aria-expanded', 'false') dfn.tabIndex = 0; dfn.classList.add('has-dfn-panel'); dfn.addEventListener('click', (event) => { toggleDfnPanel(dfn); event.stopPropagation(); }); dfn.addEventListener('keypress', (event) => { const kc = event.keyCode; // 32->Space, 13->Enter if(kc == 32 || kc == 13) { toggleDfnPanel(dfn); event.stopPropagation(); event.preventDefault(); } }); } function refocusOnTarget(event) { const target = event.target; setTimeout(() => { // Refocus on the event.target element. // This is needed after browser scrolls to the destination. target.focus(); }); } // TODO: shared util // Returns the root-level absolute position {left and top} of element. function getBounds(el, relativeTo=document.body) { const relativeRect = relativeTo.getBoundingClientRect(); const elRect = el.getBoundingClientRect(); const top = elRect.top - relativeRect.top; const left = elRect.left - relativeRect.left; return { top, left, bottom: top + elRect.height, right: left + elRect.width, } } function scrollToTargetAndHighlight(event) { let hash = event.target.hash; if (hash) { hash = decodeURIComponent(hash.substring(1)); const dest = document.getElementById(hash); if (dest) { dest.classList.add('highlighted'); setTimeout(() => dest.classList.remove('highlighted'), 1000); } } } // Functions, divided by link type, that wrap an autolink's // contents with the appropriate outer syntax. // Alternately, a string naming another type they format // the same as. function needsFor(type) { switch(type) { case "descriptor": case "value": case "element-attr": case "attr-value": case "element-state": case "method": case "constructor": case "argument": case "attribute": case "const": case "dict-member": case "event": case "enum-value": case "stringifier": case "serializer": case "iterator": case "maplike": case "setlike": case "state": case "mode": case "context": case "facet": return true; default: return false; } } function refusesFor(type) { switch(type) { case "property": case "element": case "interface": case "namespace": case "callback": case "dictionary": case "enum": case "exception": case "typedef": case "http-header": case "permission": return true; default: return false; } } function linkFormatterFromType(type) { switch(type) { case 'scheme': case 'permission': case 'dfn': return (text) => `[=${text}=]`; case 'abstract-op': return (text) => `[\$${text}\$]`; case 'function': case 'at-rule': case 'selector': case 'value': return (text) => `''${text}''`; case 'http-header': return (text) => `[:${text}:]`; case 'interface': case 'constructor': case 'method': case 'argument': case 'attribute': case 'callback': case 'dictionary': case 'dict-member': case 'enum': case 'enum-value': case 'exception': case 'const': case 'typedef': case 'stringifier': case 'serializer': case 'iterator': case 'maplike': case 'setlike': case 'extended-attribute': case 'event': case 'idl': return (text) => `{{${text}}}`; case 'element-state': case 'element-attr': case 'attr-value': case 'element': return (element) => `<{${element}}>`; case 'grammar': return (text) => `${text} (within a <pre class=prod>)`; case 'type': return (text)=> `<<${text}>>`; case 'descriptor': case 'property': return (text) => `'${text}'`; default: return; }; }; function genLinkingSyntaxes(dfn) { if(dfn.tagName != "DFN") return; const type = dfn.getAttribute('data-dfn-type'); if(!type) { console.log(`<dfn> doesn't have a data-dfn-type:`, dfn); return []; } // Return a function that wraps link text based on the type const linkFormatter = linkFormatterFromType(type); if(!linkFormatter) { console.log(`<dfn> has an unknown data-dfn-type:`, dfn); return []; } let ltAlts; if(dfn.hasAttribute('data-lt')) { ltAlts = dfn.getAttribute('data-lt') .split("|") .map(x=>x.trim()); } else { ltAlts = [dfn.textContent.trim()]; } if(type == "type") { // lt of "<foo>", but "foo" is the interior; // <<foo/bar>> is how you write it with a for, // not <foo/<bar>> or whatever. for(var i = 0; i < ltAlts.length; i++) { const lt = ltAlts[i]; const match = /<(.*)>/.exec(lt); if(match) { ltAlts[i] = match[1]; } } } let forAlts; if(dfn.hasAttribute('data-dfn-for')) { forAlts = dfn.getAttribute('data-dfn-for') .split(",") .map(x=>x.trim()); } else { forAlts = ['']; } let linkingSyntaxes = []; if(!needsFor(type)) { for(const lt of ltAlts) { linkingSyntaxes.push(linkFormatter(lt)); } } if(!refusesFor(type)) { for(const f of forAlts) { linkingSyntaxes.push(linkFormatter(`${f}/${ltAlts[0]}`)) } } return [ mk.b({}, 'Possible linking syntaxes:'), mk.ul({}, ...linkingSyntaxes.map(link => { const copyLink = async () => await navigator.clipboard.writeText(link); return mk.li({}, mk.div({ class: 'link-item' }, mk.button({ class: 'copy-icon', title: 'Copy', type: 'button', _onclick: copyLink, tabindex: 0, }, mk.span({ class: 'icon' }) ), mk.span({}, link) ) ); }) ) ]; } } </script> <script>/* Boilerplate: script-link-titles */ "use strict"; { let linkTitleData = { "https://drafts.csswg.org/css-color-5/#typedef-color": "Expands to: <alpha-value> | aliceblue | antiquewhite | aqua | aquamarine | azure | beige | bisque | black | blanchedalmond | blue | blueviolet | brown | burlywood | cadetblue | chartreuse | chocolate | coral | cornflowerblue | cornsilk | crimson | currentcolor | cyan | darkblue | darkcyan | darkgoldenrod | darkgray | darkgreen | darkgrey | darkkhaki | darkmagenta | darkolivegreen | darkorange | darkorchid | darkred | darksalmon | darkseagreen | darkslateblue | darkslategray | darkslategrey | darkturquoise | darkviolet | deeppink | deepskyblue | dimgray | dimgrey | dodgerblue | firebrick | floralwhite | forestgreen | fuchsia | gainsboro | ghostwhite | gold | goldenrod | gray | green | greenyellow | grey | honeydew | hotpink | indianred | indigo | ivory | khaki | lavender | lavenderblush | lawngreen | lemonchiffon | lightblue | lightcoral | lightcyan | lightgoldenrodyellow | lightgray | lightgreen | lightgrey | lightpink | lightsalmon | lightseagreen | lightskyblue | lightslategray | lightslategrey | lightsteelblue | lightyellow | lime | limegreen | linen | magenta | maroon | mediumaquamarine | mediumblue | mediumorchid | mediumpurple | mediumseagreen | mediumslateblue | mediumspringgreen | mediumturquoise | mediumvioletred | midnightblue | mintcream | mistyrose | moccasin | navajowhite | navy | none | oldlace | olive | olivedrab | orange | orangered | orchid | palegoldenrod | palegreen | paleturquoise | palevioletred | papayawhip | peachpuff | peru | pink | plum | powderblue | purple | rebeccapurple | red | rosybrown | royalblue | saddlebrown | salmon | sandybrown | seagreen | seashell | sienna | silver | skyblue | slateblue | slategray | slategrey | snow | springgreen | steelblue | tan | teal | thistle | tomato | transparent | turquoise | violet | wheat | white | whitesmoke | yellow | yellowgreen", "https://drafts.csswg.org/css-values-4/#angle-value": "Expands to: deg | grad | rad | turn", "https://drafts.csswg.org/css-values-4/#length-value": "Expands to: advance measure | cap | ch | cm | dvb | dvh | dvi | dvmax | dvmin | dvw | em | ex | ic | in | lh | lvb | lvh | lvi | lvmax | lvmin | lvw | mm | pc | pt | px | rcap | rch | rem | rex | ric | rlh | svb | svh | svi | svmax | svmin | svw | vb | vh | vi | vmax | vmin | vw", "https://drafts.csswg.org/css-values-4/#resolution-value": "Expands to: dpcm | dpi | dppx | x", "https://drafts.csswg.org/css-values-4/#time-value": "Expands to: ms | s", "https://drafts.csswg.org/css-values-4/#url-value": "Expands to: local url flag", }; function setTypeTitles() { for(let el of document.querySelectorAll("a[href]")) { if(el.href in linkTitleData && !el.hasAttribute("title")) { el.setAttribute("title", linkTitleData[el.href]); } } } document.addEventListener("DOMContentLoaded", setTypeTitles); } </script> <script>/* Boilerplate: script-position-annos */ "use strict"; { function repositionAnnoPanels(){ const panels = [...document.querySelectorAll("[data-anno-for]")]; hydratePanels(panels); let vSoFar = 0; for(const panel of panels.sort(cmpTops)) { if(panel.top < vSoFar) { panel.top = vSoFar; panel.style.top = vSoFar + "px"; } vSoFar = panel.top + panel.height + 15; } } function hydratePanels(panels) { const main = document.querySelector("main"); let mainRect; if(main) mainRect = main.getBoundingClientRect(); // First display them all, if they're not already visible. for(const panel of panels) { panel.classList.remove("unpositioned"); } // Measure them all for(const panel of panels) { const dfn = document.getElementById(panel.getAttribute("data-anno-for")); if(!dfn) { console.log("Can't find the annotation panel target:", panel); continue; } panel.dfn = dfn; panel.top = window.scrollY + dfn.getBoundingClientRect().top; let panelRect = panel.getBoundingClientRect(); panel.height = panelRect.height; if(main) { panel.overlappingMain = panelRect.left < mainRect.right; } else { panel.overlappingMain = false; } } // And finally position them for(const panel of panels) { const dfn = panel.dfn; if(!dfn) continue; panel.style.top = panel.top + "px"; panel.classList.toggle("overlapping-main", panel.overlappingMain); } } function cmpTops(a,b) { return a.top - b.top; } window.addEventListener("load", repositionAnnoPanels); window.addEventListener("resize", repositionAnnoPanels); } </script> <script>/* Boilerplate: script-ref-hints */ "use strict"; { let refsData = { "#add-a-css-style-sheet": {"displayText":"add a css style sheet","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"add a css style sheet","type":"dfn","url":"#add-a-css-style-sheet"}, "#associated-css-style-sheet": {"displayText":"associated css style sheet","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"associated css style sheet","type":"dfn","url":"#associated-css-style-sheet"}, "#change-the-preferred-css-style-sheet-set-name": {"displayText":"change the preferred css style sheet set name","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"change the preferred css style sheet set name","type":"dfn","url":"#change-the-preferred-css-style-sheet-set-name"}, "#compare-media-queries": {"displayText":"compare media queries","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"compare media queries","type":"dfn","url":"#compare-media-queries"}, "#concept-css-rule-child-css-rules": {"displayText":"child css rules","export":true,"for_":["CSSRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"child css rules","type":"dfn","url":"#concept-css-rule-child-css-rules"}, "#concept-css-rule-parent-css-rule": {"displayText":"parent css rule","export":true,"for_":["CSSRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"parent css rule","type":"dfn","url":"#concept-css-rule-parent-css-rule"}, "#concept-css-rule-parent-css-style-sheet": {"displayText":"parent css style sheet","export":true,"for_":["CSSRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"parent css style sheet","type":"dfn","url":"#concept-css-rule-parent-css-style-sheet"}, "#concept-css-rule-text": {"displayText":"text","export":true,"for_":["CSSRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"text","type":"dfn","url":"#concept-css-rule-text"}, "#concept-css-rule-type": {"displayText":"type","export":true,"for_":["CSSRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"type","type":"dfn","url":"#concept-css-rule-type"}, "#concept-css-style-sheet-alternate-flag": {"displayText":"alternate flag","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"alternate flag","type":"dfn","url":"#concept-css-style-sheet-alternate-flag"}, "#concept-css-style-sheet-constructed-flag": {"displayText":"constructed flag","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"constructed flag","type":"dfn","url":"#concept-css-style-sheet-constructed-flag"}, "#concept-css-style-sheet-constructor-document": {"displayText":"constructor document","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"constructor document","type":"dfn","url":"#concept-css-style-sheet-constructor-document"}, "#concept-css-style-sheet-css-rules": {"displayText":"css rules","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"css rules","type":"dfn","url":"#concept-css-style-sheet-css-rules"}, "#concept-css-style-sheet-disabled-flag": {"displayText":"disabled flag","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"disabled flag","type":"dfn","url":"#concept-css-style-sheet-disabled-flag"}, "#concept-css-style-sheet-disallow-modification-flag": {"displayText":"disallow modification flag","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"disallow modification flag","type":"dfn","url":"#concept-css-style-sheet-disallow-modification-flag"}, "#concept-css-style-sheet-location": {"displayText":"location","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"location","type":"dfn","url":"#concept-css-style-sheet-location"}, "#concept-css-style-sheet-origin-clean-flag": {"displayText":"origin-clean flag","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"origin-clean flag","type":"dfn","url":"#concept-css-style-sheet-origin-clean-flag"}, "#concept-css-style-sheet-owner-css-rule": {"displayText":"owner css rule","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"owner css rule","type":"dfn","url":"#concept-css-style-sheet-owner-css-rule"}, "#concept-css-style-sheet-owner-node": {"displayText":"owner node","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"owner node","type":"dfn","url":"#concept-css-style-sheet-owner-node"}, "#concept-css-style-sheet-parent-css-style-sheet": {"displayText":"parent css style sheet","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"parent css style sheet","type":"dfn","url":"#concept-css-style-sheet-parent-css-style-sheet"}, "#concept-css-style-sheet-stylesheet-base-url": {"displayText":"stylesheet base url","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"stylesheet base url","type":"dfn","url":"#concept-css-style-sheet-stylesheet-base-url"}, "#concept-css-style-sheet-title": {"displayText":"title","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"title","type":"dfn","url":"#concept-css-style-sheet-title"}, "#concept-css-style-sheet-type": {"displayText":"type","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"type","type":"dfn","url":"#concept-css-style-sheet-type"}, "#concept-declarations-specified-order": {"displayText":"specified order","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"specified order","type":"dfn","url":"#concept-declarations-specified-order"}, "#concept-shorthands-preferred-order": {"displayText":"preferred order","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"preferred order","type":"dfn","url":"#concept-shorthands-preferred-order"}, "#create-a-constructed-cssstylesheet": {"displayText":"create a constructed cssstylesheet","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"create a constructed cssstylesheet","type":"dfn","url":"#create-a-constructed-cssstylesheet"}, "#create-a-css-style-sheet": {"displayText":"create a css style sheet","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"create a css style sheet","type":"dfn","url":"#create-a-css-style-sheet"}, "#create-a-medialist-object": {"displayText":"create a medialist object","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"create a medialist object","type":"dfn","url":"#create-a-medialist-object"}, "#css-declaration": {"displayText":"css declaration","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"css declaration","type":"dfn","url":"#css-declaration"}, "#css-declaration-block": {"displayText":"css declaration block","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"css declaration block","type":"dfn","url":"#css-declaration-block"}, "#css-declaration-important-flag": {"displayText":"important flag","export":true,"for_":["CSS declaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"important flag","type":"dfn","url":"#css-declaration-important-flag"}, "#css-declaration-property-name": {"displayText":"property name","export":true,"for_":["CSS declaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"property name","type":"dfn","url":"#css-declaration-property-name"}, "#css-declaration-value": {"displayText":"value","export":true,"for_":["CSS declaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"value","type":"dfn","url":"#css-declaration-value"}, "#css-property-to-idl-attribute": {"displayText":"css property to idl attribute","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"css property to idl attribute","type":"dfn","url":"#css-property-to-idl-attribute"}, "#css-rule": {"displayText":"css rule","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"css rule","type":"dfn","url":"#css-rule"}, "#css-style-sheet": {"displayText":"css style sheet","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"css style sheet","type":"dfn","url":"#css-style-sheet"}, "#css-style-sheet-set": {"displayText":"css style sheet set","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"css style sheet set","type":"dfn","url":"#css-style-sheet-set"}, "#css-style-sheet-set-name": {"displayText":"css style sheet set name","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"css style sheet set name","type":"dfn","url":"#css-style-sheet-set-name"}, "#cssgroupingrule": {"displayText":"CSSGroupingRule","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"CSSGroupingRule","type":"interface","url":"#cssgroupingrule"}, "#cssimportrule": {"displayText":"CSSImportRule","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"CSSImportRule","type":"interface","url":"#cssimportrule"}, "#cssmarginrule": {"displayText":"CSSMarginRule","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"CSSMarginRule","type":"interface","url":"#cssmarginrule"}, "#cssnamespacerule": {"displayText":"CSSNamespaceRule","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"CSSNamespaceRule","type":"interface","url":"#cssnamespacerule"}, "#cssomstring": {"displayText":"CSSOMString","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"CSSOMString","type":"interface","url":"#cssomstring"}, "#csspagedescriptors": {"displayText":"CSSPageDescriptors","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"CSSPageDescriptors","type":"interface","url":"#csspagedescriptors"}, "#csspagerule": {"displayText":"CSSPageRule","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"CSSPageRule","type":"interface","url":"#csspagerule"}, "#cssrule": {"displayText":"CSSRule","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"CSSRule","type":"interface","url":"#cssrule"}, "#cssrulelist": {"displayText":"CSSRuleList","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"CSSRuleList","type":"interface","url":"#cssrulelist"}, "#cssstyledeclaration": {"displayText":"CSSStyleDeclaration","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"CSSStyleDeclaration","type":"interface","url":"#cssstyledeclaration"}, "#cssstyledeclaration-computed-flag": {"displayText":"computed flag","export":true,"for_":["CSSStyleDeclaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"computed flag","type":"dfn","url":"#cssstyledeclaration-computed-flag"}, "#cssstyledeclaration-declarations": {"displayText":"declarations","export":true,"for_":["CSSStyleDeclaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"declarations","type":"dfn","url":"#cssstyledeclaration-declarations"}, "#cssstyledeclaration-owner-node": {"displayText":"owner node","export":true,"for_":["CSSStyleDeclaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"owner node","type":"dfn","url":"#cssstyledeclaration-owner-node"}, "#cssstyledeclaration-parent-css-rule": {"displayText":"parent css rule","export":true,"for_":["CSSStyleDeclaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"parent css rule","type":"dfn","url":"#cssstyledeclaration-parent-css-rule"}, "#cssstyledeclaration-readonly-flag": {"displayText":"readonly flag","export":true,"for_":["CSSStyleDeclaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"readonly flag","type":"dfn","url":"#cssstyledeclaration-readonly-flag"}, "#cssstyledeclaration-updating-flag": {"displayText":"updating flag","export":true,"for_":["CSSStyleDeclaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"updating flag","type":"dfn","url":"#cssstyledeclaration-updating-flag"}, "#cssstyleproperties": {"displayText":"CSSStyleProperties","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"CSSStyleProperties","type":"interface","url":"#cssstyleproperties"}, "#cssstylerule": {"displayText":"CSSStyleRule","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"CSSStyleRule","type":"interface","url":"#cssstylerule"}, "#cssstylesheet": {"displayText":"CSSStyleSheet","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"CSSStyleSheet","type":"interface","url":"#cssstylesheet"}, "#dictdef-cssstylesheetinit": {"displayText":"CSSStyleSheetInit","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"CSSStyleSheetInit","type":"dictionary","url":"#dictdef-cssstylesheetinit"}, "#documentorshadowroot-document-or-shadow-root-css-style-sheets": {"displayText":"document or shadow root css style sheets","export":true,"for_":["DocumentOrShadowRoot"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"document or shadow root css style sheets","type":"dfn","url":"#documentorshadowroot-document-or-shadow-root-css-style-sheets"}, "#dom-css-escape": {"displayText":"escape(ident)","export":true,"for_":["CSS"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"escape(ident)","type":"method","url":"#dom-css-escape"}, "#dom-cssgroupingrule-cssrules": {"displayText":"cssRules","export":true,"for_":["CSSGroupingRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"cssRules","type":"attribute","url":"#dom-cssgroupingrule-cssrules"}, "#dom-cssgroupingrule-deleterule": {"displayText":"deleteRule(index)","export":true,"for_":["CSSGroupingRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"deleteRule(index)","type":"method","url":"#dom-cssgroupingrule-deleterule"}, "#dom-cssgroupingrule-insertrule": {"displayText":"insertRule(rule, index)","export":true,"for_":["CSSGroupingRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"insertRule(rule, index)","type":"method","url":"#dom-cssgroupingrule-insertrule"}, "#dom-cssimportrule-href": {"displayText":"href","export":true,"for_":["CSSImportRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"href","type":"attribute","url":"#dom-cssimportrule-href"}, "#dom-cssimportrule-layername": {"displayText":"layerName","export":true,"for_":["CSSImportRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"layerName","type":"attribute","url":"#dom-cssimportrule-layername"}, "#dom-cssimportrule-media": {"displayText":"media","export":true,"for_":["CSSImportRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"media","type":"attribute","url":"#dom-cssimportrule-media"}, "#dom-cssimportrule-stylesheet": {"displayText":"styleSheet","export":true,"for_":["CSSImportRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"styleSheet","type":"attribute","url":"#dom-cssimportrule-stylesheet"}, "#dom-cssimportrule-supportstext": {"displayText":"supportsText","export":true,"for_":["CSSImportRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"supportsText","type":"attribute","url":"#dom-cssimportrule-supportstext"}, "#dom-cssmarginrule-name": {"displayText":"name","export":true,"for_":["CSSMarginRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"name","type":"attribute","url":"#dom-cssmarginrule-name"}, "#dom-cssmarginrule-style": {"displayText":"style","export":true,"for_":["CSSMarginRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"style","type":"attribute","url":"#dom-cssmarginrule-style"}, "#dom-cssnamespacerule-namespaceuri": {"displayText":"namespaceURI","export":true,"for_":["CSSNamespaceRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"namespaceURI","type":"attribute","url":"#dom-cssnamespacerule-namespaceuri"}, "#dom-cssnamespacerule-prefix": {"displayText":"prefix","export":true,"for_":["CSSNamespaceRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"prefix","type":"attribute","url":"#dom-cssnamespacerule-prefix"}, "#dom-csspagerule-selectortext": {"displayText":"selectorText","export":true,"for_":["CSSPageRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"selectorText","type":"attribute","url":"#dom-csspagerule-selectortext"}, "#dom-csspagerule-style": {"displayText":"style","export":true,"for_":["CSSPageRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"style","type":"attribute","url":"#dom-csspagerule-style"}, "#dom-cssrule-csstext": {"displayText":"cssText","export":true,"for_":["CSSRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"cssText","type":"attribute","url":"#dom-cssrule-csstext"}, "#dom-cssrule-parentrule": {"displayText":"parentRule","export":true,"for_":["CSSRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"parentRule","type":"attribute","url":"#dom-cssrule-parentrule"}, "#dom-cssrule-parentstylesheet": {"displayText":"parentStyleSheet","export":true,"for_":["CSSRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"parentStyleSheet","type":"attribute","url":"#dom-cssrule-parentstylesheet"}, "#dom-cssrule-type": {"displayText":"type","export":true,"for_":["CSSRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"type","type":"attribute","url":"#dom-cssrule-type"}, "#dom-cssrulelist-item": {"displayText":"item(index)","export":true,"for_":["CSSRuleList"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"item(index)","type":"method","url":"#dom-cssrulelist-item"}, "#dom-cssrulelist-length": {"displayText":"length","export":true,"for_":["CSSRuleList"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"length","type":"attribute","url":"#dom-cssrulelist-length"}, "#dom-cssstyledeclaration-csstext": {"displayText":"cssText","export":true,"for_":["CSSStyleDeclaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"cssText","type":"attribute","url":"#dom-cssstyledeclaration-csstext"}, "#dom-cssstyledeclaration-getpropertypriority": {"displayText":"getPropertyPriority(property)","export":true,"for_":["CSSStyleDeclaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"getPropertyPriority(property)","type":"method","url":"#dom-cssstyledeclaration-getpropertypriority"}, "#dom-cssstyledeclaration-getpropertyvalue": {"displayText":"getPropertyValue(property)","export":true,"for_":["CSSStyleDeclaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"getPropertyValue(property)","type":"method","url":"#dom-cssstyledeclaration-getpropertyvalue"}, "#dom-cssstyledeclaration-item": {"displayText":"item(index)","export":true,"for_":["CSSStyleDeclaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"item(index)","type":"method","url":"#dom-cssstyledeclaration-item"}, "#dom-cssstyledeclaration-length": {"displayText":"length","export":true,"for_":["CSSStyleDeclaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"length","type":"attribute","url":"#dom-cssstyledeclaration-length"}, "#dom-cssstyledeclaration-parentrule": {"displayText":"parentRule","export":true,"for_":["CSSStyleDeclaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"parentRule","type":"attribute","url":"#dom-cssstyledeclaration-parentrule"}, "#dom-cssstyledeclaration-removeproperty": {"displayText":"removeProperty(property)","export":true,"for_":["CSSStyleDeclaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"removeProperty(property)","type":"method","url":"#dom-cssstyledeclaration-removeproperty"}, "#dom-cssstyledeclaration-setproperty": {"displayText":"setProperty(property, value, priority)","export":true,"for_":["CSSStyleDeclaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"setProperty(property, value, priority)","type":"method","url":"#dom-cssstyledeclaration-setproperty"}, "#dom-cssstyleproperties-cssfloat": {"displayText":"cssFloat","export":true,"for_":["CSSStyleProperties"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"cssFloat","type":"attribute","url":"#dom-cssstyleproperties-cssfloat"}, "#dom-cssstyleproperties-dashed-attribute": {"displayText":"dashed attribute","export":true,"for_":["CSSStyleProperties"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"dashed attribute","type":"attribute","url":"#dom-cssstyleproperties-dashed-attribute"}, "#dom-cssstylerule-selectortext": {"displayText":"selectorText","export":true,"for_":["CSSStyleRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"selectorText","type":"attribute","url":"#dom-cssstylerule-selectortext"}, "#dom-cssstylerule-style": {"displayText":"style","export":true,"for_":["CSSStyleRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"style","type":"attribute","url":"#dom-cssstylerule-style"}, "#dom-cssstylesheet-addrule": {"displayText":"addRule()","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"addRule()","type":"method","url":"#dom-cssstylesheet-addrule"}, "#dom-cssstylesheet-cssrules": {"displayText":"cssRules","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"cssRules","type":"attribute","url":"#dom-cssstylesheet-cssrules"}, "#dom-cssstylesheet-cssstylesheet": {"displayText":"CSSStyleSheet(options)","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"CSSStyleSheet(options)","type":"constructor","url":"#dom-cssstylesheet-cssstylesheet"}, "#dom-cssstylesheet-deleterule": {"displayText":"deleteRule(index)","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"deleteRule(index)","type":"method","url":"#dom-cssstylesheet-deleterule"}, "#dom-cssstylesheet-insertrule": {"displayText":"insertRule(rule, index)","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"insertRule(rule, index)","type":"method","url":"#dom-cssstylesheet-insertrule"}, "#dom-cssstylesheet-ownerrule": {"displayText":"ownerRule","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"ownerRule","type":"attribute","url":"#dom-cssstylesheet-ownerrule"}, "#dom-cssstylesheet-removerule": {"displayText":"removeRule(index)","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"removeRule(index)","type":"method","url":"#dom-cssstylesheet-removerule"}, "#dom-cssstylesheet-replace": {"displayText":"replace(text)","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"replace(text)","type":"method","url":"#dom-cssstylesheet-replace"}, "#dom-cssstylesheet-replacesync": {"displayText":"replaceSync(text)","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"replaceSync(text)","type":"method","url":"#dom-cssstylesheet-replacesync"}, "#dom-cssstylesheet-rules": {"displayText":"rules","export":true,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"rules","type":"attribute","url":"#dom-cssstylesheet-rules"}, "#dom-cssstylesheetinit-baseurl": {"displayText":"baseURL","export":true,"for_":["CSSStyleSheetInit"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"baseURL","type":"dict-member","url":"#dom-cssstylesheetinit-baseurl"}, "#dom-cssstylesheetinit-disabled": {"displayText":"disabled","export":true,"for_":["CSSStyleSheetInit"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"disabled","type":"dict-member","url":"#dom-cssstylesheetinit-disabled"}, "#dom-cssstylesheetinit-media": {"displayText":"media","export":true,"for_":["CSSStyleSheetInit"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"media","type":"dict-member","url":"#dom-cssstylesheetinit-media"}, "#dom-documentorshadowroot-adoptedstylesheets": {"displayText":"adoptedStyleSheets","export":true,"for_":["DocumentOrShadowRoot"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"adoptedStyleSheets","type":"attribute","url":"#dom-documentorshadowroot-adoptedstylesheets"}, "#dom-documentorshadowroot-stylesheets": {"displayText":"styleSheets","export":true,"for_":["DocumentOrShadowRoot"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"styleSheets","type":"attribute","url":"#dom-documentorshadowroot-stylesheets"}, "#dom-elementcssinlinestyle-style": {"displayText":"style","export":true,"for_":["ElementCSSInlineStyle"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"style","type":"attribute","url":"#dom-elementcssinlinestyle-style"}, "#dom-linkstyle-sheet": {"displayText":"sheet","export":true,"for_":["LinkStyle"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"sheet","type":"attribute","url":"#dom-linkstyle-sheet"}, "#dom-medialist-appendmedium": {"displayText":"appendMedium(medium)","export":true,"for_":["MediaList"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"appendMedium(medium)","type":"method","url":"#dom-medialist-appendmedium"}, "#dom-medialist-deletemedium": {"displayText":"deleteMedium(medium)","export":true,"for_":["MediaList"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"deleteMedium(medium)","type":"method","url":"#dom-medialist-deletemedium"}, "#dom-medialist-item": {"displayText":"item(index)","export":true,"for_":["MediaList"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"item(index)","type":"method","url":"#dom-medialist-item"}, "#dom-medialist-length": {"displayText":"length","export":true,"for_":["MediaList"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"length","type":"attribute","url":"#dom-medialist-length"}, "#dom-medialist-mediatext": {"displayText":"mediaText","export":true,"for_":["MediaList"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"mediaText","type":"attribute","url":"#dom-medialist-mediatext"}, "#dom-stylesheet-disabled": {"displayText":"disabled","export":true,"for_":["StyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"disabled","type":"attribute","url":"#dom-stylesheet-disabled"}, "#dom-stylesheet-href": {"displayText":"href","export":true,"for_":["StyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"href","type":"attribute","url":"#dom-stylesheet-href"}, "#dom-stylesheet-media": {"displayText":"media","export":true,"for_":["StyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"media","type":"attribute","url":"#dom-stylesheet-media"}, "#dom-stylesheet-ownernode": {"displayText":"ownerNode","export":true,"for_":["StyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"ownerNode","type":"attribute","url":"#dom-stylesheet-ownernode"}, "#dom-stylesheet-parentstylesheet": {"displayText":"parentStyleSheet","export":true,"for_":["StyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"parentStyleSheet","type":"attribute","url":"#dom-stylesheet-parentstylesheet"}, "#dom-stylesheet-title": {"displayText":"title","export":true,"for_":["StyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"title","type":"attribute","url":"#dom-stylesheet-title"}, "#dom-stylesheet-type": {"displayText":"type","export":true,"for_":["StyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"type","type":"attribute","url":"#dom-stylesheet-type"}, "#dom-stylesheetlist-item": {"displayText":"item(index)","export":true,"for_":["StyleSheetList"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"item(index)","type":"method","url":"#dom-stylesheetlist-item"}, "#dom-stylesheetlist-length": {"displayText":"length","export":true,"for_":["StyleSheetList"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"length","type":"attribute","url":"#dom-stylesheetlist-length"}, "#dom-window-getcomputedstyle": {"displayText":"getComputedStyle(elt, pseudoElt)","export":true,"for_":["Window"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"getComputedStyle(elt, pseudoElt)","type":"method","url":"#dom-window-getcomputedstyle"}, "#elementcssinlinestyle": {"displayText":"ElementCSSInlineStyle","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"ElementCSSInlineStyle","type":"interface","url":"#elementcssinlinestyle"}, "#enable-a-css-style-sheet-set": {"displayText":"enable a css style sheet set","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"enable a css style sheet set","type":"dfn","url":"#enable-a-css-style-sheet-set"}, "#enabled-css-style-sheet-set": {"displayText":"enabled css style sheet set","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"enabled css style sheet set","type":"dfn","url":"#enabled-css-style-sheet-set"}, "#escape-a-character": {"displayText":"escape a character","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"escape a character","type":"dfn","url":"#escape-a-character"}, "#escape-a-character-as-code-point": {"displayText":"escaped as code point","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"escaped as code point","type":"dfn","url":"#escape-a-character-as-code-point"}, "#fetch-a-css-style-sheet": {"displayText":"fetch a css style sheet","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"fetch a css style sheet","type":"dfn","url":"#fetch-a-css-style-sheet"}, "#http-default-style": {"displayText":"http-default-style","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"http-default-style","type":"dfn","url":"#http-default-style"}, "#idl-attribute-to-css-property": {"displayText":"idl attribute to css property","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"idl attribute to css property","type":"dfn","url":"#idl-attribute-to-css-property"}, "#insert-a-css-rule": {"displayText":"insert a css rule","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"insert a css rule","type":"dfn","url":"#insert-a-css-rule"}, "#last-css-style-sheet-set-name": {"displayText":"last css style sheet set name","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"last css style sheet set name","type":"dfn","url":"#last-css-style-sheet-set-name"}, "#linkstyle": {"displayText":"LinkStyle","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"LinkStyle","type":"interface","url":"#linkstyle"}, "#medialist": {"displayText":"MediaList","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"MediaList","type":"interface","url":"#medialist"}, "#medialist-collection-of-media-queries": {"displayText":"collection of media queries","export":true,"for_":["MediaList"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"collection of media queries","type":"dfn","url":"#medialist-collection-of-media-queries"}, "#namespacedef-css": {"displayText":"CSS","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"CSS","type":"namespace","url":"#namespacedef-css"}, "#parse-a-css-declaration-block": {"displayText":"parse a css declaration block","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"parse a css declaration block","type":"dfn","url":"#parse-a-css-declaration-block"}, "#parse-a-css-rule": {"displayText":"parse a css rule","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"parse a css rule","type":"dfn","url":"#parse-a-css-rule"}, "#parse-a-css-value": {"displayText":"parse a css value","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"parse a css value","type":"dfn","url":"#parse-a-css-value"}, "#parse-a-group-of-selectors": {"displayText":"parse a group of selectors","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"parse a group of selectors","type":"dfn","url":"#parse-a-group-of-selectors"}, "#parse-a-list-of-css-page-selectors": {"displayText":"parse a list of css page selectors","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"parse a list of css page selectors","type":"dfn","url":"#parse-a-list-of-css-page-selectors"}, "#parse-a-media-query": {"displayText":"parse a media query","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"parse a media query","type":"dfn","url":"#parse-a-media-query"}, "#parse-a-media-query-list": {"displayText":"parse a media query list","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"parse a media query list","type":"dfn","url":"#parse-a-media-query-list"}, "#preferred-css-style-sheet-set-name": {"displayText":"preferred css style sheet set name","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"preferred css style sheet set name","type":"dfn","url":"#preferred-css-style-sheet-set-name"}, "#prolog": {"displayText":"prolog","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"prolog","type":"dfn","url":"#prolog"}, "#remove-a-css-rule": {"displayText":"remove a css rule","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"remove a css rule","type":"dfn","url":"#remove-a-css-rule"}, "#remove-a-css-style-sheet": {"displayText":"remove a css style sheet","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"remove a css style sheet","type":"dfn","url":"#remove-a-css-style-sheet"}, "#resolved-value": {"displayText":"resolved value","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"resolved value","type":"dfn","url":"#resolved-value"}, "#select-a-css-style-sheet-set": {"displayText":"select a css style sheet set","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"select a css style sheet set","type":"dfn","url":"#select-a-css-style-sheet-set"}, "#serialize-a-comma-separated-list": {"displayText":"serialize a comma-separated list","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize a comma-separated list","type":"dfn","url":"#serialize-a-comma-separated-list"}, "#serialize-a-css-component-value": {"displayText":"serialize a css component value","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize a css component value","type":"dfn","url":"#serialize-a-css-component-value"}, "#serialize-a-css-declaration": {"displayText":"serialize a css declaration","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize a css declaration","type":"dfn","url":"#serialize-a-css-declaration"}, "#serialize-a-css-declaration-block": {"displayText":"serialize a css declaration block","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize a css declaration block","type":"dfn","url":"#serialize-a-css-declaration-block"}, "#serialize-a-css-rule": {"displayText":"serialize a css rule","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize a css rule","type":"dfn","url":"#serialize-a-css-rule"}, "#serialize-a-css-value": {"displayText":"serialize a css value","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize a css value","type":"dfn","url":"#serialize-a-css-value"}, "#serialize-a-group-of-selectors": {"displayText":"serialize a group of selectors","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize a group of selectors","type":"dfn","url":"#serialize-a-group-of-selectors"}, "#serialize-a-list-of-css-page-selectors": {"displayText":"serialize a list of css page selectors","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize a list of css page selectors","type":"dfn","url":"#serialize-a-list-of-css-page-selectors"}, "#serialize-a-local": {"displayText":"serialize a local","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize a local","type":"dfn","url":"#serialize-a-local"}, "#serialize-a-media-feature-value": {"displayText":"serialize a media feature value","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize a media feature value","type":"dfn","url":"#serialize-a-media-feature-value"}, "#serialize-a-media-query": {"displayText":"serialize a media query","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize a media query","type":"dfn","url":"#serialize-a-media-query"}, "#serialize-a-media-query-list": {"displayText":"serialize a media query list","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize a media query list","type":"dfn","url":"#serialize-a-media-query-list"}, "#serialize-a-selector": {"displayText":"serialize a selector","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize a selector","type":"dfn","url":"#serialize-a-selector"}, "#serialize-a-simple-selector": {"displayText":"serialize a simple selector","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize a simple selector","type":"dfn","url":"#serialize-a-simple-selector"}, "#serialize-a-string": {"displayText":"serialize a string","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize a string","type":"dfn","url":"#serialize-a-string"}, "#serialize-a-url": {"displayText":"serialize a url","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize a url","type":"dfn","url":"#serialize-a-url"}, "#serialize-an-identifier": {"displayText":"serialize an identifier","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"serialize an identifier","type":"dfn","url":"#serialize-an-identifier"}, "#set": {"displayText":"set","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"set","type":"dfn","url":"#set"}, "#set-a-css-declaration": {"displayText":"set a css declaration","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"set a css declaration","type":"dfn","url":"#set-a-css-declaration"}, "#stylesheet": {"displayText":"StyleSheet","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"StyleSheet","type":"interface","url":"#stylesheet"}, "#stylesheetlist": {"displayText":"StyleSheetList","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"StyleSheetList","type":"interface","url":"#stylesheetlist"}, "#supported-css-property": {"displayText":"supported css property","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"supported css property","type":"dfn","url":"#supported-css-property"}, "#supported-styling-language": {"displayText":"supported styling language","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"supported styling language","type":"dfn","url":"#supported-styling-language"}, "#synchronously-replace-the-rules-of-a-cssstylesheet": {"displayText":"synchronously replace the rules of a cssstylesheet","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"synchronously replace the rules of a cssstylesheet","type":"dfn","url":"#synchronously-replace-the-rules-of-a-cssstylesheet"}, "#unset": {"displayText":"unset","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"unset","type":"dfn","url":"#unset"}, "#update-style-attribute-for": {"displayText":"update style attribute for","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"local","text":"update style attribute for","type":"dfn","url":"#update-style-attribute-for"}, "http://heycam.github.io/webidl/#dfn-supported-property-indices": {"displayText":"supported property indices","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"supported property indices","type":"dfn","url":"http://heycam.github.io/webidl/#dfn-supported-property-indices"}, "http://heycam.github.io/webidl/#dfn-throw": {"displayText":"throw","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"throw","type":"dfn","url":"http://heycam.github.io/webidl/#dfn-throw"}, "http://heycam.github.io/webidl/#idl-long": {"displayText":"long","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"long","type":"interface","url":"http://heycam.github.io/webidl/#idl-long"}, "https://compat.spec.whatwg.org/#propdef--webkit-transform": {"displayText":"-webkit-transform","export":true,"for_":[],"level":"1","normative":true,"shortname":"compat","spec":"compat","status":"current","text":"-webkit-transform","type":"property","url":"https://compat.spec.whatwg.org/#propdef--webkit-transform"}, "https://dom.spec.whatwg.org/#boundary-point-node": {"displayText":"node","export":true,"for_":["boundary point"],"level":"1","normative":true,"shortname":"dom","spec":"dom","status":"current","text":"node","type":"dfn","url":"https://dom.spec.whatwg.org/#boundary-point-node"}, "https://dom.spec.whatwg.org/#clone-a-node-document": {"displayText":"document","export":true,"for_":["clone a node"],"level":"1","normative":true,"shortname":"dom","spec":"dom","status":"current","text":"document","type":"dfn","url":"https://dom.spec.whatwg.org/#clone-a-node-document"}, "https://dom.spec.whatwg.org/#concept-cd-data": {"displayText":"data","export":true,"for_":["CharacterData"],"level":"1","normative":true,"shortname":"dom","spec":"dom","status":"current","text":"data","type":"dfn","url":"https://dom.spec.whatwg.org/#concept-cd-data"}, "https://dom.spec.whatwg.org/#concept-document-encoding": {"displayText":"encoding","export":true,"for_":["Document"],"level":"1","normative":true,"shortname":"dom","spec":"dom","status":"current","text":"encoding","type":"dfn","url":"https://dom.spec.whatwg.org/#concept-document-encoding"}, "https://dom.spec.whatwg.org/#concept-document-quirks": {"displayText":"quirks mode","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"quirks mode","type":"dfn","url":"https://dom.spec.whatwg.org/#concept-document-quirks"}, "https://dom.spec.whatwg.org/#concept-document-url": {"displayText":"document url","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"document url","type":"dfn","url":"https://dom.spec.whatwg.org/#concept-document-url"}, "https://dom.spec.whatwg.org/#concept-element-attributes-change-ext": {"displayText":"attribute change steps","export":true,"for_":[],"level":"1","normative":true,"shortname":"dom","spec":"dom","status":"current","text":"attribute change steps","type":"dfn","url":"https://dom.spec.whatwg.org/#concept-element-attributes-change-ext"}, "https://dom.spec.whatwg.org/#concept-element-attributes-get-by-namespace": {"displayText":"get an attribute by namespace and local name","export":true,"for_":[],"level":"1","normative":true,"shortname":"dom","spec":"dom","status":"current","text":"get an attribute by namespace and local name","type":"dfn","url":"https://dom.spec.whatwg.org/#concept-element-attributes-get-by-namespace"}, "https://dom.spec.whatwg.org/#concept-element-attributes-set-value": {"displayText":"set an attribute value","export":true,"for_":[],"level":"1","normative":true,"shortname":"dom","spec":"dom","status":"current","text":"set an attribute value","type":"dfn","url":"https://dom.spec.whatwg.org/#concept-element-attributes-set-value"}, "https://dom.spec.whatwg.org/#concept-node": {"displayText":"nodes","export":true,"for_":[],"level":"1","normative":true,"shortname":"dom","spec":"dom","status":"current","text":"nodes","type":"dfn","url":"https://dom.spec.whatwg.org/#concept-node"}, "https://dom.spec.whatwg.org/#concept-node-document": {"displayText":"node document","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"node document","type":"dfn","url":"https://dom.spec.whatwg.org/#concept-node-document"}, "https://dom.spec.whatwg.org/#concept-shadow-including-root": {"displayText":"shadow-including root","export":true,"for_":[],"level":"1","normative":true,"shortname":"dom","spec":"dom","status":"current","text":"shadow-including root","type":"dfn","url":"https://dom.spec.whatwg.org/#concept-shadow-including-root"}, "https://dom.spec.whatwg.org/#concept-tree-following": {"displayText":"following","export":true,"for_":["tree"],"level":"1","normative":true,"shortname":"dom","spec":"dom","status":"current","text":"following","type":"dfn","url":"https://dom.spec.whatwg.org/#concept-tree-following"}, "https://dom.spec.whatwg.org/#connected": {"displayText":"connected","export":true,"for_":[],"level":"1","normative":true,"shortname":"dom","spec":"dom","status":"current","text":"connected","type":"dfn","url":"https://dom.spec.whatwg.org/#connected"}, "https://dom.spec.whatwg.org/#document": {"displayText":"Document","export":true,"for_":[],"level":"1","normative":true,"shortname":"dom","spec":"dom","status":"current","text":"Document","type":"interface","url":"https://dom.spec.whatwg.org/#document"}, "https://dom.spec.whatwg.org/#documentorshadowroot": {"displayText":"DocumentOrShadowRoot","export":true,"for_":[],"level":"1","normative":true,"shortname":"dom","spec":"dom","status":"current","text":"DocumentOrShadowRoot","type":"interface","url":"https://dom.spec.whatwg.org/#documentorshadowroot"}, "https://dom.spec.whatwg.org/#element": {"displayText":"Element","export":true,"for_":[],"level":"1","normative":true,"shortname":"dom","spec":"dom","status":"current","text":"Element","type":"interface","url":"https://dom.spec.whatwg.org/#element"}, "https://dom.spec.whatwg.org/#in-a-document-tree": {"displayText":"in a document tree","export":true,"for_":[],"level":"1","normative":true,"shortname":"dom","spec":"dom","status":"current","text":"in a document tree","type":"dfn","url":"https://dom.spec.whatwg.org/#in-a-document-tree"}, "https://dom.spec.whatwg.org/#processinginstruction": {"displayText":"ProcessingInstruction","export":true,"for_":[],"level":"1","normative":true,"shortname":"dom","spec":"dom","status":"current","text":"ProcessingInstruction","type":"interface","url":"https://dom.spec.whatwg.org/#processinginstruction"}, "https://drafts.csswg.org/css-anchor-position-1/#valdef-anchor-name-none": {"displayText":"none","export":true,"for_":["anchor-name"],"level":"1","normative":true,"shortname":"css-anchor-position","spec":"css-anchor-position-1","status":"current","text":"none","type":"value","url":"https://drafts.csswg.org/css-anchor-position-1/#valdef-anchor-name-none"}, "https://drafts.csswg.org/css-animations-1/#csskeyframerule": {"displayText":"CSSKeyframeRule","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-animations","spec":"css-animations-1","status":"current","text":"CSSKeyframeRule","type":"interface","url":"https://drafts.csswg.org/css-animations-1/#csskeyframerule"}, "https://drafts.csswg.org/css-animations-1/#csskeyframesrule": {"displayText":"CSSKeyframesRule","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-animations","spec":"css-animations-1","status":"current","text":"CSSKeyframesRule","type":"interface","url":"https://drafts.csswg.org/css-animations-1/#csskeyframesrule"}, "https://drafts.csswg.org/css-animations-1/#dom-csskeyframerule-keytext": {"displayText":"keyText","export":true,"for_":["CSSKeyframeRule"],"level":"1","normative":true,"shortname":"css-animations","spec":"css-animations-1","status":"current","text":"keyText","type":"attribute","url":"https://drafts.csswg.org/css-animations-1/#dom-csskeyframerule-keytext"}, "https://drafts.csswg.org/css-animations-1/#dom-csskeyframesrule-cssrules": {"displayText":"cssRules","export":true,"for_":["CSSKeyframesRule"],"level":"1","normative":true,"shortname":"css-animations","spec":"css-animations-1","status":"current","text":"cssRules","type":"attribute","url":"https://drafts.csswg.org/css-animations-1/#dom-csskeyframesrule-cssrules"}, "https://drafts.csswg.org/css-animations-1/#dom-csskeyframesrule-name": {"displayText":"name","export":true,"for_":["CSSKeyframesRule"],"level":"1","normative":true,"shortname":"css-animations","spec":"css-animations-1","status":"current","text":"name","type":"attribute","url":"https://drafts.csswg.org/css-animations-1/#dom-csskeyframesrule-name"}, "https://drafts.csswg.org/css-backgrounds-3/#propdef-background-color": {"displayText":"background-color","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-backgrounds","spec":"css-backgrounds-3","status":"current","text":"background-color","type":"property","url":"https://drafts.csswg.org/css-backgrounds-3/#propdef-background-color"}, "https://drafts.csswg.org/css-backgrounds-3/#propdef-border-bottom-color": {"displayText":"border-bottom-color","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-backgrounds","spec":"css-backgrounds-3","status":"current","text":"border-bottom-color","type":"property","url":"https://drafts.csswg.org/css-backgrounds-3/#propdef-border-bottom-color"}, "https://drafts.csswg.org/css-backgrounds-3/#propdef-border-left-color": {"displayText":"border-left-color","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-backgrounds","spec":"css-backgrounds-3","status":"current","text":"border-left-color","type":"property","url":"https://drafts.csswg.org/css-backgrounds-3/#propdef-border-left-color"}, "https://drafts.csswg.org/css-backgrounds-3/#propdef-border-right-color": {"displayText":"border-right-color","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-backgrounds","spec":"css-backgrounds-3","status":"current","text":"border-right-color","type":"property","url":"https://drafts.csswg.org/css-backgrounds-3/#propdef-border-right-color"}, "https://drafts.csswg.org/css-backgrounds-3/#propdef-border-top-color": {"displayText":"border-top-color","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-backgrounds","spec":"css-backgrounds-3","status":"current","text":"border-top-color","type":"property","url":"https://drafts.csswg.org/css-backgrounds-3/#propdef-border-top-color"}, "https://drafts.csswg.org/css-backgrounds-3/#propdef-box-shadow": {"displayText":"box-shadow","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-backgrounds","spec":"css-backgrounds-3","status":"current","text":"box-shadow","type":"property","url":"https://drafts.csswg.org/css-backgrounds-3/#propdef-box-shadow"}, "https://drafts.csswg.org/css-borders-4/#propdef-border-block-end-color": {"displayText":"border-block-end-color","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-borders","spec":"css-borders-4","status":"current","text":"border-block-end-color","type":"property","url":"https://drafts.csswg.org/css-borders-4/#propdef-border-block-end-color"}, "https://drafts.csswg.org/css-borders-4/#propdef-border-block-start-color": {"displayText":"border-block-start-color","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-borders","spec":"css-borders-4","status":"current","text":"border-block-start-color","type":"property","url":"https://drafts.csswg.org/css-borders-4/#propdef-border-block-start-color"}, "https://drafts.csswg.org/css-borders-4/#propdef-border-inline-end-color": {"displayText":"border-inline-end-color","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-borders","spec":"css-borders-4","status":"current","text":"border-inline-end-color","type":"property","url":"https://drafts.csswg.org/css-borders-4/#propdef-border-inline-end-color"}, "https://drafts.csswg.org/css-borders-4/#propdef-border-inline-start-color": {"displayText":"border-inline-start-color","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-borders","spec":"css-borders-4","status":"current","text":"border-inline-start-color","type":"property","url":"https://drafts.csswg.org/css-borders-4/#propdef-border-inline-start-color"}, "https://drafts.csswg.org/css-box-4/#propdef-margin-bottom": {"displayText":"margin-bottom","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-box","spec":"css-box-4","status":"current","text":"margin-bottom","type":"property","url":"https://drafts.csswg.org/css-box-4/#propdef-margin-bottom"}, "https://drafts.csswg.org/css-box-4/#propdef-margin-left": {"displayText":"margin-left","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-box","spec":"css-box-4","status":"current","text":"margin-left","type":"property","url":"https://drafts.csswg.org/css-box-4/#propdef-margin-left"}, "https://drafts.csswg.org/css-box-4/#propdef-margin-right": {"displayText":"margin-right","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-box","spec":"css-box-4","status":"current","text":"margin-right","type":"property","url":"https://drafts.csswg.org/css-box-4/#propdef-margin-right"}, "https://drafts.csswg.org/css-box-4/#propdef-margin-top": {"displayText":"margin-top","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-box","spec":"css-box-4","status":"current","text":"margin-top","type":"property","url":"https://drafts.csswg.org/css-box-4/#propdef-margin-top"}, "https://drafts.csswg.org/css-box-4/#propdef-padding-bottom": {"displayText":"padding-bottom","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-box","spec":"css-box-4","status":"current","text":"padding-bottom","type":"property","url":"https://drafts.csswg.org/css-box-4/#propdef-padding-bottom"}, "https://drafts.csswg.org/css-box-4/#propdef-padding-left": {"displayText":"padding-left","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-box","spec":"css-box-4","status":"current","text":"padding-left","type":"property","url":"https://drafts.csswg.org/css-box-4/#propdef-padding-left"}, "https://drafts.csswg.org/css-box-4/#propdef-padding-right": {"displayText":"padding-right","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-box","spec":"css-box-4","status":"current","text":"padding-right","type":"property","url":"https://drafts.csswg.org/css-box-4/#propdef-padding-right"}, "https://drafts.csswg.org/css-box-4/#propdef-padding-top": {"displayText":"padding-top","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-box","spec":"css-box-4","status":"current","text":"padding-top","type":"property","url":"https://drafts.csswg.org/css-box-4/#propdef-padding-top"}, "https://drafts.csswg.org/css-cascade-5/#at-ruledef-import": {"displayText":"@import","export":true,"for_":[],"level":"5","normative":true,"shortname":"css-cascade","spec":"css-cascade-5","status":"current","text":"@import","type":"at-rule","url":"https://drafts.csswg.org/css-cascade-5/#at-ruledef-import"}, "https://drafts.csswg.org/css-cascade-5/#computed-value": {"displayText":"computed value","export":true,"for_":[],"level":"5","normative":true,"shortname":"css-cascade","spec":"css-cascade-5","status":"current","text":"computed value","type":"dfn","url":"https://drafts.csswg.org/css-cascade-5/#computed-value"}, "https://drafts.csswg.org/css-cascade-5/#used-value": {"displayText":"used value","export":true,"for_":[],"level":"5","normative":true,"shortname":"css-cascade","spec":"css-cascade-5","status":"current","text":"used value","type":"dfn","url":"https://drafts.csswg.org/css-cascade-5/#used-value"}, "https://drafts.csswg.org/css-color-4/#propdef-color": {"displayText":"color","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-color","spec":"css-color-4","status":"current","text":"color","type":"property","url":"https://drafts.csswg.org/css-color-4/#propdef-color"}, "https://drafts.csswg.org/css-color-4/#typedef-color-alpha-value": {"displayText":"<alpha-value>","export":true,"for_":["<color>"],"level":"4","normative":true,"shortname":"css-color","spec":"css-color-4","status":"current","text":"<alpha-value>","type":"type","url":"https://drafts.csswg.org/css-color-4/#typedef-color-alpha-value"}, "https://drafts.csswg.org/css-color-5/#typedef-color": {"displayText":"<color>","export":true,"for_":[],"level":"5","normative":true,"shortname":"css-color","spec":"css-color-5","status":"current","text":"<color>","type":"type","url":"https://drafts.csswg.org/css-color-5/#typedef-color"}, "https://drafts.csswg.org/css-conditional-3/#cssmediarule": {"displayText":"CSSMediaRule","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-conditional","spec":"css-conditional-3","status":"current","text":"CSSMediaRule","type":"interface","url":"https://drafts.csswg.org/css-conditional-3/#cssmediarule"}, "https://drafts.csswg.org/css-conditional-3/#csssupportsrule": {"displayText":"CSSSupportsRule","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-conditional","spec":"css-conditional-3","status":"current","text":"CSSSupportsRule","type":"interface","url":"https://drafts.csswg.org/css-conditional-3/#csssupportsrule"}, "https://drafts.csswg.org/css-conditional-3/#typedef-supports-condition": {"displayText":"<supports-condition>","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-conditional","spec":"css-conditional-3","status":"current","text":"<supports-condition>","type":"type","url":"https://drafts.csswg.org/css-conditional-3/#typedef-supports-condition"}, "https://drafts.csswg.org/css-counter-styles-3/#csscounterstylerule": {"displayText":"CSSCounterStyleRule","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-counter-styles","spec":"css-counter-styles-3","status":"current","text":"CSSCounterStyleRule","type":"interface","url":"https://drafts.csswg.org/css-counter-styles-3/#csscounterstylerule"}, "https://drafts.csswg.org/css-display-4/#propdef-display": {"displayText":"display","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-display","spec":"css-display-4","status":"current","text":"display","type":"property","url":"https://drafts.csswg.org/css-display-4/#propdef-display"}, "https://drafts.csswg.org/css-display-4/#valdef-display-contents": {"displayText":"contents","export":true,"for_":["display","<display-box>"],"level":"4","normative":true,"shortname":"css-display","spec":"css-display-4","status":"current","text":"contents","type":"value","url":"https://drafts.csswg.org/css-display-4/#valdef-display-contents"}, "https://drafts.csswg.org/css-display-4/#valdef-display-none": {"displayText":"none","export":true,"for_":["display","<display-box>"],"level":"4","normative":true,"shortname":"css-display","spec":"css-display-4","status":"current","text":"none","type":"value","url":"https://drafts.csswg.org/css-display-4/#valdef-display-none"}, "https://drafts.csswg.org/css-fonts-4/#cssfontfeaturevaluesrule": {"displayText":"CSSFontFeatureValuesRule","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-fonts","spec":"css-fonts-4","status":"current","text":"CSSFontFeatureValuesRule","type":"interface","url":"https://drafts.csswg.org/css-fonts-4/#cssfontfeaturevaluesrule"}, "https://drafts.csswg.org/css-fonts-4/#family-name-value": {"displayText":"<family-name>","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-fonts","spec":"css-fonts-4","status":"current","text":"<family-name>","type":"type","url":"https://drafts.csswg.org/css-fonts-4/#family-name-value"}, "https://drafts.csswg.org/css-fonts-4/#propdef-font-feature-settings": {"displayText":"font-feature-settings","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-fonts","spec":"css-fonts-4","status":"current","text":"font-feature-settings","type":"property","url":"https://drafts.csswg.org/css-fonts-4/#propdef-font-feature-settings"}, "https://drafts.csswg.org/css-fonts-4/#propdef-font-size": {"displayText":"font-size","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-fonts","spec":"css-fonts-4","status":"current","text":"font-size","type":"property","url":"https://drafts.csswg.org/css-fonts-4/#propdef-font-size"}, "https://drafts.csswg.org/css-fonts-4/#propdef-font-stretch": {"displayText":"font-stretch","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-fonts","spec":"css-fonts-4","status":"current","text":"font-stretch","type":"property","url":"https://drafts.csswg.org/css-fonts-4/#propdef-font-stretch"}, "https://drafts.csswg.org/css-fonts-4/#propdef-font-style": {"displayText":"font-style","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-fonts","spec":"css-fonts-4","status":"current","text":"font-style","type":"property","url":"https://drafts.csswg.org/css-fonts-4/#propdef-font-style"}, "https://drafts.csswg.org/css-fonts-4/#propdef-font-variant": {"displayText":"font-variant","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-fonts","spec":"css-fonts-4","status":"current","text":"font-variant","type":"property","url":"https://drafts.csswg.org/css-fonts-4/#propdef-font-variant"}, "https://drafts.csswg.org/css-fonts-4/#propdef-font-weight": {"displayText":"font-weight","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-fonts","spec":"css-fonts-4","status":"current","text":"font-weight","type":"property","url":"https://drafts.csswg.org/css-fonts-4/#propdef-font-weight"}, "https://drafts.csswg.org/css-fonts-5/#cssfontfacerule": {"displayText":"CSSFontFaceRule","export":true,"for_":[],"level":"5","normative":true,"shortname":"css-fonts","spec":"css-fonts-5","status":"current","text":"CSSFontFaceRule","type":"interface","url":"https://drafts.csswg.org/css-fonts-5/#cssfontfacerule"}, "https://drafts.csswg.org/css-lists-3/#typedef-counter": {"displayText":"<counter>","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-lists","spec":"css-lists-3","status":"current","text":"<counter>","type":"type","url":"https://drafts.csswg.org/css-lists-3/#typedef-counter"}, "https://drafts.csswg.org/css-logical-1/#logical-property-group": {"displayText":"logical property group","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-logical","spec":"css-logical-1","status":"current","text":"logical property group","type":"dfn","url":"https://drafts.csswg.org/css-logical-1/#logical-property-group"}, "https://drafts.csswg.org/css-logical-1/#mapping-logic": {"displayText":"mapping logic","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-logical","spec":"css-logical-1","status":"current","text":"mapping logic","type":"dfn","url":"https://drafts.csswg.org/css-logical-1/#mapping-logic"}, "https://drafts.csswg.org/css-logical-1/#propdef-block-size": {"displayText":"block-size","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-logical","spec":"css-logical-1","status":"current","text":"block-size","type":"property","url":"https://drafts.csswg.org/css-logical-1/#propdef-block-size"}, "https://drafts.csswg.org/css-logical-1/#propdef-inline-size": {"displayText":"inline-size","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-logical","spec":"css-logical-1","status":"current","text":"inline-size","type":"property","url":"https://drafts.csswg.org/css-logical-1/#propdef-inline-size"}, "https://drafts.csswg.org/css-logical-1/#propdef-margin-block-end": {"displayText":"margin-block-end","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-logical","spec":"css-logical-1","status":"current","text":"margin-block-end","type":"property","url":"https://drafts.csswg.org/css-logical-1/#propdef-margin-block-end"}, "https://drafts.csswg.org/css-logical-1/#propdef-margin-block-start": {"displayText":"margin-block-start","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-logical","spec":"css-logical-1","status":"current","text":"margin-block-start","type":"property","url":"https://drafts.csswg.org/css-logical-1/#propdef-margin-block-start"}, "https://drafts.csswg.org/css-logical-1/#propdef-margin-inline-end": {"displayText":"margin-inline-end","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-logical","spec":"css-logical-1","status":"current","text":"margin-inline-end","type":"property","url":"https://drafts.csswg.org/css-logical-1/#propdef-margin-inline-end"}, "https://drafts.csswg.org/css-logical-1/#propdef-margin-inline-start": {"displayText":"margin-inline-start","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-logical","spec":"css-logical-1","status":"current","text":"margin-inline-start","type":"property","url":"https://drafts.csswg.org/css-logical-1/#propdef-margin-inline-start"}, "https://drafts.csswg.org/css-logical-1/#propdef-padding-block-end": {"displayText":"padding-block-end","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-logical","spec":"css-logical-1","status":"current","text":"padding-block-end","type":"property","url":"https://drafts.csswg.org/css-logical-1/#propdef-padding-block-end"}, "https://drafts.csswg.org/css-logical-1/#propdef-padding-block-start": {"displayText":"padding-block-start","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-logical","spec":"css-logical-1","status":"current","text":"padding-block-start","type":"property","url":"https://drafts.csswg.org/css-logical-1/#propdef-padding-block-start"}, "https://drafts.csswg.org/css-logical-1/#propdef-padding-inline-end": {"displayText":"padding-inline-end","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-logical","spec":"css-logical-1","status":"current","text":"padding-inline-end","type":"property","url":"https://drafts.csswg.org/css-logical-1/#propdef-padding-inline-end"}, "https://drafts.csswg.org/css-logical-1/#propdef-padding-inline-start": {"displayText":"padding-inline-start","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-logical","spec":"css-logical-1","status":"current","text":"padding-inline-start","type":"property","url":"https://drafts.csswg.org/css-logical-1/#propdef-padding-inline-start"}, "https://drafts.csswg.org/css-namespaces-3/#default-namespace": {"displayText":"default namespace","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-namespaces","spec":"css-namespaces-3","status":"current","text":"default namespace","type":"dfn","url":"https://drafts.csswg.org/css-namespaces-3/#default-namespace"}, "https://drafts.csswg.org/css-namespaces-3/#namespace-prefix": {"displayText":"namespace prefix","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-namespaces","spec":"css-namespaces-3","status":"current","text":"namespace prefix","type":"dfn","url":"https://drafts.csswg.org/css-namespaces-3/#namespace-prefix"}, "https://drafts.csswg.org/css-nesting-1/#nested-declarations-rule%E2%91%A0": {"displayText":"nested declarations rule","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-nesting","spec":"css-nesting-1","status":"current","text":"nested declarations rule","type":"dfn","url":"https://drafts.csswg.org/css-nesting-1/#nested-declarations-rule%E2%91%A0"}, "https://drafts.csswg.org/css-overflow-3/#propdef-overflow": {"displayText":"overflow","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-overflow","spec":"css-overflow-3","status":"current","text":"overflow","type":"property","url":"https://drafts.csswg.org/css-overflow-3/#propdef-overflow"}, "https://drafts.csswg.org/css-position-3/#propdef-bottom": {"displayText":"bottom","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-position","spec":"css-position-3","status":"current","text":"bottom","type":"property","url":"https://drafts.csswg.org/css-position-3/#propdef-bottom"}, "https://drafts.csswg.org/css-position-3/#propdef-inset-block-end": {"displayText":"inset-block-end","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-position","spec":"css-position-3","status":"current","text":"inset-block-end","type":"property","url":"https://drafts.csswg.org/css-position-3/#propdef-inset-block-end"}, "https://drafts.csswg.org/css-position-3/#propdef-inset-block-start": {"displayText":"inset-block-start","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-position","spec":"css-position-3","status":"current","text":"inset-block-start","type":"property","url":"https://drafts.csswg.org/css-position-3/#propdef-inset-block-start"}, "https://drafts.csswg.org/css-position-3/#propdef-inset-inline-end": {"displayText":"inset-inline-end","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-position","spec":"css-position-3","status":"current","text":"inset-inline-end","type":"property","url":"https://drafts.csswg.org/css-position-3/#propdef-inset-inline-end"}, "https://drafts.csswg.org/css-position-3/#propdef-inset-inline-start": {"displayText":"inset-inline-start","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-position","spec":"css-position-3","status":"current","text":"inset-inline-start","type":"property","url":"https://drafts.csswg.org/css-position-3/#propdef-inset-inline-start"}, "https://drafts.csswg.org/css-position-3/#propdef-left": {"displayText":"left","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-position","spec":"css-position-3","status":"current","text":"left","type":"property","url":"https://drafts.csswg.org/css-position-3/#propdef-left"}, "https://drafts.csswg.org/css-position-3/#propdef-right": {"displayText":"right","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-position","spec":"css-position-3","status":"current","text":"right","type":"property","url":"https://drafts.csswg.org/css-position-3/#propdef-right"}, "https://drafts.csswg.org/css-position-3/#propdef-top": {"displayText":"top","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-position","spec":"css-position-3","status":"current","text":"top","type":"property","url":"https://drafts.csswg.org/css-position-3/#propdef-top"}, "https://drafts.csswg.org/css-scoping-1/#flat-tree": {"displayText":"flat tree","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-scoping","spec":"css-scoping-1","status":"current","text":"flat tree","type":"dfn","url":"https://drafts.csswg.org/css-scoping-1/#flat-tree"}, "https://drafts.csswg.org/css-scoping-1/#selectordef-slotted": {"displayText":"::slotted()","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-scoping","spec":"css-scoping-1","status":"current","text":"::slotted()","type":"selector","url":"https://drafts.csswg.org/css-scoping-1/#selectordef-slotted"}, "https://drafts.csswg.org/css-shadow-parts-1/#selectordef-part": {"displayText":"::part()","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-shadow-parts","spec":"css-shadow-parts-1","status":"current","text":"::part()","type":"selector","url":"https://drafts.csswg.org/css-shadow-parts-1/#selectordef-part"}, "https://drafts.csswg.org/css-sizing-3/#propdef-height": {"displayText":"height","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-sizing","spec":"css-sizing-3","status":"current","text":"height","type":"property","url":"https://drafts.csswg.org/css-sizing-3/#propdef-height"}, "https://drafts.csswg.org/css-sizing-3/#propdef-width": {"displayText":"width","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-sizing","spec":"css-sizing-3","status":"current","text":"width","type":"property","url":"https://drafts.csswg.org/css-sizing-3/#propdef-width"}, "https://drafts.csswg.org/css-syntax-3/#css-parse-something-according-to-a-css-grammar": {"displayText":"parse","export":true,"for_":["CSS"],"level":"3","normative":true,"shortname":"css-syntax","spec":"css-syntax-3","status":"current","text":"parse","type":"dfn","url":"https://drafts.csswg.org/css-syntax-3/#css-parse-something-according-to-a-css-grammar"}, "https://drafts.csswg.org/css-syntax-3/#environment-encoding": {"displayText":"environment encoding","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-syntax","spec":"css-syntax-3","status":"current","text":"environment encoding","type":"dfn","url":"https://drafts.csswg.org/css-syntax-3/#environment-encoding"}, "https://drafts.csswg.org/css-syntax-3/#parse-a-blocks-contents": {"displayText":"parse a block's contents","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-syntax","spec":"css-syntax-3","status":"current","text":"parse a block's contents","type":"dfn","url":"https://drafts.csswg.org/css-syntax-3/#parse-a-blocks-contents"}, "https://drafts.csswg.org/css-syntax-3/#parse-a-list-of-component-values": {"displayText":"parse a list of component values","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-syntax","spec":"css-syntax-3","status":"current","text":"parse a list of component values","type":"dfn","url":"https://drafts.csswg.org/css-syntax-3/#parse-a-list-of-component-values"}, "https://drafts.csswg.org/css-syntax-3/#parse-a-rule": {"displayText":"parse a rule","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-syntax","spec":"css-syntax-3","status":"current","text":"parse a rule","type":"dfn","url":"https://drafts.csswg.org/css-syntax-3/#parse-a-rule"}, "https://drafts.csswg.org/css-syntax-3/#parse-a-stylesheets-contents": {"displayText":"parse a stylesheet's contents","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-syntax","spec":"css-syntax-3","status":"current","text":"parse a stylesheet's contents","type":"dfn","url":"https://drafts.csswg.org/css-syntax-3/#parse-a-stylesheets-contents"}, "https://drafts.csswg.org/css-syntax-3/#serialize-an-anb-value": {"displayText":"serialize an <an+b> value","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-syntax","spec":"css-syntax-3","status":"current","text":"serialize an <an+b> value","type":"dfn","url":"https://drafts.csswg.org/css-syntax-3/#serialize-an-anb-value"}, "https://drafts.csswg.org/css-syntax-3/#typedef-whitespace-token": {"displayText":"<whitespace-token>","export":true,"for_":[],"level":"3","normative":true,"shortname":"css-syntax","spec":"css-syntax-3","status":"current","text":"<whitespace-token>","type":"type","url":"https://drafts.csswg.org/css-syntax-3/#typedef-whitespace-token"}, "https://drafts.csswg.org/css-ui-4/#propdef-caret-color": {"displayText":"caret-color","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-ui","spec":"css-ui-4","status":"current","text":"caret-color","type":"property","url":"https://drafts.csswg.org/css-ui-4/#propdef-caret-color"}, "https://drafts.csswg.org/css-ui-4/#propdef-outline-color": {"displayText":"outline-color","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-ui","spec":"css-ui-4","status":"current","text":"outline-color","type":"property","url":"https://drafts.csswg.org/css-ui-4/#propdef-outline-color"}, "https://drafts.csswg.org/css-ui-4/#valdef-cursor-default": {"displayText":"default","export":true,"for_":["cursor"],"level":"4","normative":true,"shortname":"css-ui","spec":"css-ui-4","status":"current","text":"default","type":"value","url":"https://drafts.csswg.org/css-ui-4/#valdef-cursor-default"}, "https://drafts.csswg.org/css-values-4/#angle-value": {"displayText":"<angle>","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-values","spec":"css-values-4","status":"current","text":"<angle>","type":"type","url":"https://drafts.csswg.org/css-values-4/#angle-value"}, "https://drafts.csswg.org/css-values-4/#comb-any": {"displayText":"||","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-values","spec":"css-values-4","status":"current","text":"||","type":"grammar","url":"https://drafts.csswg.org/css-values-4/#comb-any"}, "https://drafts.csswg.org/css-values-4/#css-keyword": {"displayText":"keyword","export":true,"for_":["CSS"],"level":"4","normative":true,"shortname":"css-values","spec":"css-values-4","status":"current","text":"keyword","type":"dfn","url":"https://drafts.csswg.org/css-values-4/#css-keyword"}, "https://drafts.csswg.org/css-values-4/#frequency-value": {"displayText":"<frequency>","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-values","spec":"css-values-4","status":"current","text":"<frequency>","type":"type","url":"https://drafts.csswg.org/css-values-4/#frequency-value"}, "https://drafts.csswg.org/css-values-4/#integer-value": {"displayText":"<integer>","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-values","spec":"css-values-4","status":"current","text":"<integer>","type":"type","url":"https://drafts.csswg.org/css-values-4/#integer-value"}, "https://drafts.csswg.org/css-values-4/#length-value": {"displayText":"<length>","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-values","spec":"css-values-4","status":"current","text":"<length>","type":"type","url":"https://drafts.csswg.org/css-values-4/#length-value"}, "https://drafts.csswg.org/css-values-4/#number-value": {"displayText":"<number>","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-values","spec":"css-values-4","status":"current","text":"<number>","type":"type","url":"https://drafts.csswg.org/css-values-4/#number-value"}, "https://drafts.csswg.org/css-values-4/#percentage-value": {"displayText":"<percentage>","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-values","spec":"css-values-4","status":"current","text":"<percentage>","type":"type","url":"https://drafts.csswg.org/css-values-4/#percentage-value"}, "https://drafts.csswg.org/css-values-4/#px": {"displayText":"px","export":true,"for_":["<length>"],"level":"4","normative":true,"shortname":"css-values","spec":"css-values-4","status":"current","text":"px","type":"value","url":"https://drafts.csswg.org/css-values-4/#px"}, "https://drafts.csswg.org/css-values-4/#ratio-value": {"displayText":"<ratio>","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-values","spec":"css-values-4","status":"current","text":"<ratio>","type":"type","url":"https://drafts.csswg.org/css-values-4/#ratio-value"}, "https://drafts.csswg.org/css-values-4/#resolution-value": {"displayText":"<resolution>","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-values","spec":"css-values-4","status":"current","text":"<resolution>","type":"type","url":"https://drafts.csswg.org/css-values-4/#resolution-value"}, "https://drafts.csswg.org/css-values-4/#string-value": {"displayText":"<string>","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-values","spec":"css-values-4","status":"current","text":"<string>","type":"type","url":"https://drafts.csswg.org/css-values-4/#string-value"}, "https://drafts.csswg.org/css-values-4/#time-value": {"displayText":"<time>","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-values","spec":"css-values-4","status":"current","text":"<time>","type":"type","url":"https://drafts.csswg.org/css-values-4/#time-value"}, "https://drafts.csswg.org/css-values-4/#url-value": {"displayText":"<url>","export":true,"for_":[],"level":"4","normative":true,"shortname":"css-values","spec":"css-values-4","status":"current","text":"<url>","type":"type","url":"https://drafts.csswg.org/css-values-4/#url-value"}, "https://drafts.csswg.org/css-variables-1/#custom-property": {"displayText":"custom property","export":true,"for_":[],"level":"1","normative":true,"shortname":"css-variables","spec":"css-variables-1","status":"current","text":"custom property","type":"dfn","url":"https://drafts.csswg.org/css-variables-1/#custom-property"}, "https://drafts.csswg.org/css-variables-2/#guaranteed-invalid-value": {"displayText":"guaranteed-invalid value","export":true,"for_":[],"level":"2","normative":true,"shortname":"css-variables","spec":"css-variables-2","status":"current","text":"guaranteed-invalid value","type":"dfn","url":"https://drafts.csswg.org/css-variables-2/#guaranteed-invalid-value"}, "https://drafts.csswg.org/css2/#value-def-identifier": {"displayText":"<identifier>","export":true,"for_":[],"level":"2","normative":true,"shortname":"css","spec":"css2","status":"current","text":"<identifier>","type":"type","url":"https://drafts.csswg.org/css2/#value-def-identifier"}, "https://drafts.csswg.org/css2/#value-def-shape": {"displayText":"<shape>","export":true,"for_":[],"level":"2","normative":true,"shortname":"css","spec":"css2","status":"current","text":"<shape>","type":"type","url":"https://drafts.csswg.org/css2/#value-def-shape"}, "https://drafts.csswg.org/cssom-1/#concept-css-rule-parent-css-style-sheet": {"displayText":"parent CSS style sheet","export":false,"for_":["CSSRule"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"current","text":"parent css style sheet","type":"dfn","url":"https://drafts.csswg.org/cssom-1/#concept-css-rule-parent-css-style-sheet"}, "https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-alternate-flag": {"displayText":"alternate flag","export":false,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"current","text":"alternate flag","type":"dfn","url":"https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-alternate-flag"}, "https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-disabled-flag": {"displayText":"disabled flag","export":false,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"current","text":"disabled flag","type":"dfn","url":"https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-disabled-flag"}, "https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-location": {"displayText":"location","export":false,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"current","text":"location","type":"dfn","url":"https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-location"}, "https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-media": {"displayText":"media","export":false,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"current","text":"media","type":"dfn","url":"https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-media"}, "https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-origin-clean-flag": {"displayText":"origin-clean flag","export":false,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"current","text":"origin-clean flag","type":"dfn","url":"https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-origin-clean-flag"}, "https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-owner-css-rule": {"displayText":"owner CSS rule","export":false,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"current","text":"owner css rule","type":"dfn","url":"https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-owner-css-rule"}, "https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-owner-node": {"displayText":"owner node","export":false,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"current","text":"owner node","type":"dfn","url":"https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-owner-node"}, "https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-title": {"displayText":"title","export":false,"for_":["CSSStyleSheet"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"current","text":"title","type":"dfn","url":"https://drafts.csswg.org/cssom-1/#concept-css-style-sheet-title"}, "https://drafts.csswg.org/mediaqueries-4/#descdef-media-color": {"displayText":"color","export":true,"for_":["@media"],"level":"4","normative":true,"shortname":"mediaqueries","spec":"mediaqueries-4","status":"current","text":"color","type":"descriptor","url":"https://drafts.csswg.org/mediaqueries-4/#descdef-media-color"}, "https://drafts.csswg.org/mediaqueries-4/#valdef-media-orientation-landscape": {"displayText":"landscape","export":true,"for_":["@media/orientation"],"level":"4","normative":true,"shortname":"mediaqueries","spec":"mediaqueries-4","status":"current","text":"landscape","type":"value","url":"https://drafts.csswg.org/mediaqueries-4/#valdef-media-orientation-landscape"}, "https://drafts.csswg.org/mediaqueries-4/#valdef-media-orientation-portrait": {"displayText":"portrait","export":true,"for_":["@media/orientation"],"level":"4","normative":true,"shortname":"mediaqueries","spec":"mediaqueries-4","status":"current","text":"portrait","type":"value","url":"https://drafts.csswg.org/mediaqueries-4/#valdef-media-orientation-portrait"}, "https://drafts.csswg.org/mediaqueries-4/#valdef-media-scan-interlace": {"displayText":"interlace","export":true,"for_":["@media/scan"],"level":"4","normative":true,"shortname":"mediaqueries","spec":"mediaqueries-4","status":"current","text":"interlace","type":"value","url":"https://drafts.csswg.org/mediaqueries-4/#valdef-media-scan-interlace"}, "https://drafts.csswg.org/mediaqueries-4/#valdef-media-scan-progressive": {"displayText":"progressive","export":true,"for_":["@media/scan"],"level":"4","normative":true,"shortname":"mediaqueries","spec":"mediaqueries-4","status":"current","text":"progressive","type":"value","url":"https://drafts.csswg.org/mediaqueries-4/#valdef-media-scan-progressive"}, "https://drafts.csswg.org/mediaqueries-5/#media-feature": {"displayText":"media feature","export":true,"for_":[],"level":"5","normative":true,"shortname":"mediaqueries","spec":"mediaqueries-5","status":"current","text":"media feature","type":"dfn","url":"https://drafts.csswg.org/mediaqueries-5/#media-feature"}, "https://drafts.csswg.org/mediaqueries-5/#media-query": {"displayText":"media query","export":true,"for_":[],"level":"5","normative":true,"shortname":"mediaqueries","spec":"mediaqueries-5","status":"current","text":"media query","type":"dfn","url":"https://drafts.csswg.org/mediaqueries-5/#media-query"}, "https://drafts.csswg.org/mediaqueries-5/#media-query-list": {"displayText":"media query list","export":true,"for_":[],"level":"5","normative":true,"shortname":"mediaqueries","spec":"mediaqueries-5","status":"current","text":"media query list","type":"dfn","url":"https://drafts.csswg.org/mediaqueries-5/#media-query-list"}, "https://drafts.csswg.org/mediaqueries-5/#media-type": {"displayText":"media type","export":true,"for_":[],"level":"5","normative":true,"shortname":"mediaqueries","spec":"mediaqueries-5","status":"current","text":"media type","type":"dfn","url":"https://drafts.csswg.org/mediaqueries-5/#media-type"}, "https://drafts.csswg.org/selectors-3/#sel-after": {"displayText":"::after","export":true,"for_":[],"level":"3","normative":true,"shortname":"selectors","spec":"selectors-3","status":"current","text":"::after","type":"selector","url":"https://drafts.csswg.org/selectors-3/#sel-after"}, "https://drafts.csswg.org/selectors-3/#sel-before": {"displayText":"::before","export":true,"for_":[],"level":"3","normative":true,"shortname":"selectors","spec":"selectors-3","status":"current","text":"::before","type":"selector","url":"https://drafts.csswg.org/selectors-3/#sel-before"}, "https://drafts.csswg.org/selectors-4/#compound": {"displayText":"compound selector","export":true,"for_":[],"level":"4","normative":true,"shortname":"selectors","spec":"selectors-4","status":"current","text":"compound selector","type":"dfn","url":"https://drafts.csswg.org/selectors-4/#compound"}, "https://drafts.csswg.org/selectors-4/#simple": {"displayText":"simple selector","export":true,"for_":[],"level":"4","normative":true,"shortname":"selectors","spec":"selectors-4","status":"current","text":"simple selector","type":"dfn","url":"https://drafts.csswg.org/selectors-4/#simple"}, "https://drafts.csswg.org/selectors-4/#typedef-pseudo-element-selector": {"displayText":"<pseudo-element-selector>","export":true,"for_":[],"level":"4","normative":true,"shortname":"selectors","spec":"selectors-4","status":"current","text":"<pseudo-element-selector>","type":"type","url":"https://drafts.csswg.org/selectors-4/#typedef-pseudo-element-selector"}, "https://drafts.csswg.org/selectors-4/#universal-selector": {"displayText":"universal selector","export":true,"for_":[],"level":"4","normative":true,"shortname":"selectors","spec":"selectors-4","status":"current","text":"universal selector","type":"dfn","url":"https://drafts.csswg.org/selectors-4/#universal-selector"}, "https://encoding.spec.whatwg.org/#concept-encoding-get": {"displayText":"get an encoding","export":true,"for_":[],"level":"","normative":true,"shortname":"encoding","spec":"encoding","status":"anchor-block","text":"get an encoding","type":"dfn","url":"https://encoding.spec.whatwg.org/#concept-encoding-get"}, "https://fetch.spec.whatwg.org/#concept-fetch": {"displayText":"fetch","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"fetch","type":"dfn","url":"https://fetch.spec.whatwg.org/#concept-fetch"}, "https://fetch.spec.whatwg.org/#concept-network-error": {"displayText":"network error","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"network error","type":"dfn","url":"https://fetch.spec.whatwg.org/#concept-network-error"}, "https://fetch.spec.whatwg.org/#concept-request": {"displayText":"request","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"request","type":"dfn","url":"https://fetch.spec.whatwg.org/#concept-request"}, "https://fetch.spec.whatwg.org/#concept-request-origin": {"displayText":"origin","export":true,"for_":["request"],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"origin","type":"dfn","url":"https://fetch.spec.whatwg.org/#concept-request-origin"}, "https://fetch.spec.whatwg.org/#concept-request-referrer": {"displayText":"referrer","export":true,"for_":["request"],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"referrer","type":"dfn","url":"https://fetch.spec.whatwg.org/#concept-request-referrer"}, "https://fetch.spec.whatwg.org/#concept-request-url": {"displayText":"url","export":true,"for_":["request"],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"url","type":"dfn","url":"https://fetch.spec.whatwg.org/#concept-request-url"}, "https://html.spec.whatwg.org/multipage/browsers.html#browsing-context": {"displayText":"browsing context","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"browsing context","type":"dfn","url":"https://html.spec.whatwg.org/multipage/browsers.html#browsing-context"}, "https://html.spec.whatwg.org/multipage/browsers.html#concept-origin": {"displayText":"origin","export":true,"for_":[],"level":"1","normative":true,"shortname":"html","spec":"html","status":"current","text":"origin","type":"dfn","url":"https://html.spec.whatwg.org/multipage/browsers.html#concept-origin"}, "https://html.spec.whatwg.org/multipage/custom-elements.html#cereactions": {"displayText":"CEReactions","export":true,"for_":[],"level":"1","normative":true,"shortname":"html","spec":"html","status":"current","text":"CEReactions","type":"extended-attribute","url":"https://html.spec.whatwg.org/multipage/custom-elements.html#cereactions"}, "https://html.spec.whatwg.org/multipage/dom.html#htmlelement": {"displayText":"HTMLElement","export":true,"for_":[],"level":"1","normative":true,"shortname":"html","spec":"html","status":"current","text":"HTMLElement","type":"interface","url":"https://html.spec.whatwg.org/multipage/dom.html#htmlelement"}, "https://html.spec.whatwg.org/multipage/infrastructure.html#content-type": {"displayText":"content-type metadata","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"content-type metadata","type":"dfn","url":"https://html.spec.whatwg.org/multipage/infrastructure.html#content-type"}, "https://html.spec.whatwg.org/multipage/infrastructure.html#html-elements": {"displayText":"html elements","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"html elements","type":"dfn","url":"https://html.spec.whatwg.org/multipage/infrastructure.html#html-elements"}, "https://html.spec.whatwg.org/multipage/infrastructure.html#in-parallel": {"displayText":"in parallel","export":true,"for_":[],"level":"1","normative":true,"shortname":"html","spec":"html","status":"current","text":"in parallel","type":"dfn","url":"https://html.spec.whatwg.org/multipage/infrastructure.html#in-parallel"}, "https://html.spec.whatwg.org/multipage/infrastructure.html#tree-order": {"displayText":"tree order","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"tree order","type":"dfn","url":"https://html.spec.whatwg.org/multipage/infrastructure.html#tree-order"}, "https://html.spec.whatwg.org/multipage/nav-history-apis.html#concept-document-window": {"displayText":"associated Document","export":true,"for_":[],"level":"1","normative":true,"shortname":"html","spec":"html","status":"current","text":"associated document","type":"dfn","url":"https://html.spec.whatwg.org/multipage/nav-history-apis.html#concept-document-window"}, "https://html.spec.whatwg.org/multipage/nav-history-apis.html#window": {"displayText":"Window","export":true,"for_":[],"level":"1","normative":true,"shortname":"html","spec":"html","status":"current","text":"Window","type":"interface","url":"https://html.spec.whatwg.org/multipage/nav-history-apis.html#window"}, "https://html.spec.whatwg.org/multipage/rendering.html#being-rendered": {"displayText":"being rendered","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"being rendered","type":"dfn","url":"https://html.spec.whatwg.org/multipage/rendering.html#being-rendered"}, "https://html.spec.whatwg.org/multipage/semantics.html#a-style-sheet-that-is-blocking-scripts": {"displayText":"a style sheet that is blocking scripts","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"a style sheet that is blocking scripts","type":"dfn","url":"https://html.spec.whatwg.org/multipage/semantics.html#a-style-sheet-that-is-blocking-scripts"}, "https://html.spec.whatwg.org/multipage/semantics.html#contributes-a-script-blocking-style-sheet": {"displayText":"contributes a script-blocking style sheet","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"contributes a script-blocking style sheet","type":"dfn","url":"https://html.spec.whatwg.org/multipage/semantics.html#contributes-a-script-blocking-style-sheet"}, "https://html.spec.whatwg.org/multipage/semantics.html#link-options-base-url": {"displayText":"base URL","export":false,"for_":[],"level":"1","normative":true,"shortname":"html","spec":"html","status":"current","text":"base url","type":"dfn","url":"https://html.spec.whatwg.org/multipage/semantics.html#link-options-base-url"}, "https://html.spec.whatwg.org/multipage/semantics.html#script-blocking-style-sheet-set": {"displayText":"script-blocking style sheet set","export":true,"for_":["Document"],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"script-blocking style sheet set","type":"dfn","url":"https://html.spec.whatwg.org/multipage/semantics.html#script-blocking-style-sheet-set"}, "https://html.spec.whatwg.org/multipage/semantics.html#the-style-element": {"displayText":"style","export":true,"for_":[],"level":"1","normative":true,"shortname":"html","spec":"html","status":"current","text":"style","type":"element","url":"https://html.spec.whatwg.org/multipage/semantics.html#the-style-element"}, "https://html.spec.whatwg.org/multipage/urls-and-fetching.html#cors-same-origin": {"displayText":"CORS-same-origin","export":true,"for_":[],"level":"1","normative":true,"shortname":"html","spec":"html","status":"current","text":"cors-same-origin","type":"dfn","url":"https://html.spec.whatwg.org/multipage/urls-and-fetching.html#cors-same-origin"}, "https://html.spec.whatwg.org/multipage/urls-and-fetching.html#document-base-url": {"displayText":"document base url","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"document base url","type":"dfn","url":"https://html.spec.whatwg.org/multipage/urls-and-fetching.html#document-base-url"}, "https://html.spec.whatwg.org/multipage/webappapis.html#current-global-object": {"displayText":"current global object","export":true,"for_":[],"level":"1","normative":true,"shortname":"html","spec":"html","status":"current","text":"current global object","type":"dfn","url":"https://html.spec.whatwg.org/multipage/webappapis.html#current-global-object"}, "https://infra.spec.whatwg.org/#ascii-lowercase": {"displayText":"ASCII lowercase","export":true,"for_":[],"level":"1","normative":true,"shortname":"infra","spec":"infra","status":"current","text":"ascii lowercase","type":"dfn","url":"https://infra.spec.whatwg.org/#ascii-lowercase"}, "https://infra.spec.whatwg.org/#ascii-uppercase": {"displayText":"ASCII uppercase","export":true,"for_":[],"level":"1","normative":true,"shortname":"infra","spec":"infra","status":"current","text":"ascii uppercase","type":"dfn","url":"https://infra.spec.whatwg.org/#ascii-uppercase"}, "https://infra.spec.whatwg.org/#code-unit": {"displayText":"code unit","export":true,"for_":[],"level":"1","normative":true,"shortname":"infra","spec":"infra","status":"current","text":"code unit","type":"dfn","url":"https://infra.spec.whatwg.org/#code-unit"}, "https://infra.spec.whatwg.org/#iteration-break": {"displayText":"break","export":true,"for_":["iteration"],"level":"1","normative":true,"shortname":"infra","spec":"infra","status":"current","text":"break","type":"dfn","url":"https://infra.spec.whatwg.org/#iteration-break"}, "https://infra.spec.whatwg.org/#iteration-continue": {"displayText":"continue","export":true,"for_":["iteration"],"level":"1","normative":true,"shortname":"infra","spec":"infra","status":"current","text":"continue","type":"dfn","url":"https://infra.spec.whatwg.org/#iteration-continue"}, "https://infra.spec.whatwg.org/#list": {"displayText":"list","export":true,"for_":[],"level":"1","normative":true,"shortname":"infra","spec":"infra","status":"current","text":"list","type":"dfn","url":"https://infra.spec.whatwg.org/#list"}, "https://infra.spec.whatwg.org/#list-append": {"displayText":"append","export":true,"for_":["list"],"level":"1","normative":true,"shortname":"infra","spec":"infra","status":"current","text":"append","type":"dfn","url":"https://infra.spec.whatwg.org/#list-append"}, "https://infra.spec.whatwg.org/#list-iterate": {"displayText":"for each","export":true,"for_":["list","set"],"level":"1","normative":true,"shortname":"infra","spec":"infra","status":"current","text":"for each","type":"dfn","url":"https://infra.spec.whatwg.org/#list-iterate"}, "https://infra.spec.whatwg.org/#surrogate": {"displayText":"surrogate","export":true,"for_":[],"level":"1","normative":true,"shortname":"infra","spec":"infra","status":"current","text":"surrogate","type":"dfn","url":"https://infra.spec.whatwg.org/#surrogate"}, "https://svgwg.org/svg2-draft/types.html#InterfaceSVGElement": {"displayText":"SVGElement","export":true,"for_":[],"level":"2","normative":true,"shortname":"svg","spec":"svg2","status":"current","text":"SVGElement","type":"interface","url":"https://svgwg.org/svg2-draft/types.html#InterfaceSVGElement"}, "https://url.spec.whatwg.org/#absolute-url-string": {"displayText":"absolute-URL string","export":true,"for_":[],"level":"1","normative":true,"shortname":"url","spec":"url","status":"current","text":"absolute-url string","type":"dfn","url":"https://url.spec.whatwg.org/#absolute-url-string"}, "https://url.spec.whatwg.org/#concept-url": {"displayText":"URL","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"url","type":"dfn","url":"https://url.spec.whatwg.org/#concept-url"}, "https://url.spec.whatwg.org/#concept-url-parser": {"displayText":"URL parser","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"url parser","type":"dfn","url":"https://url.spec.whatwg.org/#concept-url-parser"}, "https://url.spec.whatwg.org/#concept-url-serializer": {"displayText":"URL serializer","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"url serializer","type":"dfn","url":"https://url.spec.whatwg.org/#concept-url-serializer"}, "https://w3c.github.io/mathml-core/#dom-mathmlelement": {"displayText":"MathMLElement","export":true,"for_":[],"level":"1","normative":true,"shortname":"mathml-core","spec":"mathml-core","status":"current","text":"MathMLElement","type":"interface","url":"https://w3c.github.io/mathml-core/#dom-mathmlelement"}, "https://webidl.spec.whatwg.org/#Exposed": {"displayText":"Exposed","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"Exposed","type":"extended-attribute","url":"https://webidl.spec.whatwg.org/#Exposed"}, "https://webidl.spec.whatwg.org/#LegacyNullToEmptyString": {"displayText":"LegacyNullToEmptyString","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"LegacyNullToEmptyString","type":"extended-attribute","url":"https://webidl.spec.whatwg.org/#LegacyNullToEmptyString"}, "https://webidl.spec.whatwg.org/#NewObject": {"displayText":"NewObject","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"NewObject","type":"extended-attribute","url":"https://webidl.spec.whatwg.org/#NewObject"}, "https://webidl.spec.whatwg.org/#PutForwards": {"displayText":"PutForwards","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"PutForwards","type":"extended-attribute","url":"https://webidl.spec.whatwg.org/#PutForwards"}, "https://webidl.spec.whatwg.org/#SameObject": {"displayText":"SameObject","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"SameObject","type":"extended-attribute","url":"https://webidl.spec.whatwg.org/#SameObject"}, "https://webidl.spec.whatwg.org/#exceptiondef-typeerror": {"displayText":"TypeError","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"TypeError","type":"exception","url":"https://webidl.spec.whatwg.org/#exceptiondef-typeerror"}, "https://webidl.spec.whatwg.org/#hierarchyrequesterror": {"displayText":"HierarchyRequestError","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"HierarchyRequestError","type":"exception","url":"https://webidl.spec.whatwg.org/#hierarchyrequesterror"}, "https://webidl.spec.whatwg.org/#idl-DOMException": {"displayText":"DOMException","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"DOMException","type":"interface","url":"https://webidl.spec.whatwg.org/#idl-DOMException"}, "https://webidl.spec.whatwg.org/#idl-DOMString": {"displayText":"DOMString","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"DOMString","type":"interface","url":"https://webidl.spec.whatwg.org/#idl-DOMString"}, "https://webidl.spec.whatwg.org/#idl-USVString": {"displayText":"USVString","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"USVString","type":"interface","url":"https://webidl.spec.whatwg.org/#idl-USVString"}, "https://webidl.spec.whatwg.org/#idl-boolean": {"displayText":"boolean","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"boolean","type":"interface","url":"https://webidl.spec.whatwg.org/#idl-boolean"}, "https://webidl.spec.whatwg.org/#idl-observable-array": {"displayText":"ObservableArray","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"ObservableArray","type":"interface","url":"https://webidl.spec.whatwg.org/#idl-observable-array"}, "https://webidl.spec.whatwg.org/#idl-promise": {"displayText":"Promise","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"Promise","type":"interface","url":"https://webidl.spec.whatwg.org/#idl-promise"}, "https://webidl.spec.whatwg.org/#idl-undefined": {"displayText":"undefined","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"undefined","type":"interface","url":"https://webidl.spec.whatwg.org/#idl-undefined"}, "https://webidl.spec.whatwg.org/#idl-unsigned-long": {"displayText":"unsigned long","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"unsigned long","type":"interface","url":"https://webidl.spec.whatwg.org/#idl-unsigned-long"}, "https://webidl.spec.whatwg.org/#idl-unsigned-short": {"displayText":"unsigned short","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"unsigned short","type":"interface","url":"https://webidl.spec.whatwg.org/#idl-unsigned-short"}, "https://webidl.spec.whatwg.org/#indexsizeerror": {"displayText":"IndexSizeError","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"IndexSizeError","type":"exception","url":"https://webidl.spec.whatwg.org/#indexsizeerror"}, "https://webidl.spec.whatwg.org/#invalidstateerror": {"displayText":"InvalidStateError","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"InvalidStateError","type":"exception","url":"https://webidl.spec.whatwg.org/#invalidstateerror"}, "https://webidl.spec.whatwg.org/#nomodificationallowederror": {"displayText":"NoModificationAllowedError","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"NoModificationAllowedError","type":"exception","url":"https://webidl.spec.whatwg.org/#nomodificationallowederror"}, "https://webidl.spec.whatwg.org/#notallowederror": {"displayText":"NotAllowedError","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"NotAllowedError","type":"exception","url":"https://webidl.spec.whatwg.org/#notallowederror"}, "https://webidl.spec.whatwg.org/#notfounderror": {"displayText":"NotFoundError","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"NotFoundError","type":"exception","url":"https://webidl.spec.whatwg.org/#notfounderror"}, "https://webidl.spec.whatwg.org/#observable-array-attribute-backing-list": {"displayText":"backing list","export":true,"for_":["observable array attribute"],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"backing list","type":"dfn","url":"https://webidl.spec.whatwg.org/#observable-array-attribute-backing-list"}, "https://webidl.spec.whatwg.org/#observable-array-attribute-set-an-indexed-value": {"displayText":"set an indexed value","export":true,"for_":["observable array attribute"],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"set an indexed value","type":"dfn","url":"https://webidl.spec.whatwg.org/#observable-array-attribute-set-an-indexed-value"}, "https://webidl.spec.whatwg.org/#securityerror": {"displayText":"SecurityError","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"SecurityError","type":"exception","url":"https://webidl.spec.whatwg.org/#securityerror"}, "https://webidl.spec.whatwg.org/#syntaxerror": {"displayText":"SyntaxError","export":true,"for_":[],"level":"1","normative":true,"shortname":"webidl","spec":"webidl","status":"current","text":"SyntaxError","type":"exception","url":"https://webidl.spec.whatwg.org/#syntaxerror"}, "https://www.w3.org/TR/css-nesting-1/#dom-cssstylerule-cssrules": {"displayText":"cssRules","export":true,"for_":["CSSStyleRule"],"level":"1","normative":true,"shortname":"css-nesting","spec":"css-nesting-1","status":"snapshot","text":"cssRules","type":"attribute","url":"https://www.w3.org/TR/css-nesting-1/#dom-cssstylerule-cssrules"}, "https://www.w3.org/TR/cssom-1/#dom-cssstyledeclaration-webkit-cased-attribute": {"displayText":"webkit-cased attribute","export":true,"for_":["CSSStyleDeclaration"],"level":"1","normative":true,"shortname":"cssom","spec":"cssom-1","status":"snapshot","text":"webkit-cased attribute","type":"attribute","url":"https://www.w3.org/TR/cssom-1/#dom-cssstyledeclaration-webkit-cased-attribute"}, "https://www.w3.org/TR/xml-stylesheet/#dt-pseudo-attribute": {"displayText":"pseudo-attribute","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"pseudo-attribute","type":"dfn","url":"https://www.w3.org/TR/xml-stylesheet/#dt-pseudo-attribute"}, "https://www.w3.org/TR/xml-stylesheet/#dt-xml-stylesheet": {"displayText":"xml-stylesheet processing instruction","export":true,"for_":[],"level":"1","normative":true,"shortname":"cssom","spec":"","status":"anchor-block","text":"xml-stylesheet processing instruction","type":"dfn","url":"https://www.w3.org/TR/xml-stylesheet/#dt-xml-stylesheet"}, }; function mkRefHint(link, ref) { const linkText = link.textContent; let dfnTextElements = ''; if (ref.displayText.toLowerCase() != linkText.toLowerCase()) { // Give the original term if it's being displayed in a different way. // But allow casing differences, they're insignificant. dfnTextElements = mk.li({}, mk.b({}, "Term: "), mk.span({}, ref.displayText) ); } const forList = ref.for_; let forListElements; if(forList.length == 0) { forListElements = []; } else if(forList.length == 1) { forListElements = mk.li({}, mk.b({}, "For: "), mk.span({}, forList[0]), ); } else { forListElements = mk.li({}, mk.b({}, "For: "), mk.ul({}, ...forList.map(forItem => mk.li({}, mk.span({}, forItem) ), ), ), ); } const url = ref.url; const safeUrl = encodeURIComponent(url); const hintPanel = mk.aside({ class: "ref-hint", id: `ref-hint-for-${safeUrl}`, "data-for": url, "aria-labelled-by": `ref-hint-for-${safeUrl}`, }, mk.ul({}, dfnTextElements, mk.li({}, mk.b({}, "URL: "), mk.a({ href: url, class: "ref" }, url), ), mk.li({}, mk.b({}, "Type: "), mk.span({}, `${ref.type}`), ), mk.li({}, mk.b({}, "Spec: "), mk.span({}, `${ref.spec ? ref.spec : ''}`), ), forListElements ), ); hintPanel.forLink = link; setupRefHintEventListeners(link, hintPanel); return hintPanel; } function hideAllRefHints() { queryAll(".ref-hint").forEach(el=>hideRefHint(el)); } function hideRefHint(refHint) { const link = refHint.forLink; link.setAttribute("aria-expanded", "false"); if(refHint.teardownEventListeners) { refHint.teardownEventListeners(); } refHint.remove(); } function showRefHint(link) { if(link.classList.contains("dfn-link")) return; const url = link.getAttribute("href"); const refHintKey = link.getAttribute("data-refhint-key"); let key = url; if(refHintKey) { key = refHintKey + "_" + url; } const ref = refsData[key]; if(!ref) return; hideAllRefHints(); // Only display one at this time. const refHint = mkRefHint(link, ref); append(document.body, refHint); link.setAttribute("aria-expanded", "true"); positionRefHint(refHint); } function setupRefHintEventListeners(link, refHint) { if (refHint.teardownEventListeners) return; // Add event handlers to hide the refHint after the user moves away // from both the link and refHint, if not hovering either within one second. let timeout = null; const startHidingRefHint = (event) => { if (timeout) { clearTimeout(timeout); } timeout = setTimeout(() => { hideRefHint(refHint); }, 1000); } const resetHidingRefHint = (event) => { if (timeout) clearTimeout(timeout); timeout = null; }; link.addEventListener("mouseleave", startHidingRefHint); link.addEventListener("mouseenter", resetHidingRefHint); link.addEventListener("blur", startHidingRefHint); link.addEventListener("focus", resetHidingRefHint); refHint.addEventListener("mouseleave", startHidingRefHint); refHint.addEventListener("mouseenter", resetHidingRefHint); refHint.addEventListener("blur", startHidingRefHint); refHint.addEventListener("focus", resetHidingRefHint); refHint.teardownEventListeners = () => { // remove event listeners resetHidingRefHint(); link.removeEventListener("mouseleave", startHidingRefHint); link.removeEventListener("mouseenter", resetHidingRefHint); link.removeEventListener("blur", startHidingRefHint); link.removeEventListener("focus", resetHidingRefHint); refHint.removeEventListener("mouseleave", startHidingRefHint); refHint.removeEventListener("mouseenter", resetHidingRefHint); refHint.removeEventListener("blur", startHidingRefHint); refHint.removeEventListener("focus", resetHidingRefHint); }; } function positionRefHint(refHint) { const link = refHint.forLink; const linkPos = getBounds(link); refHint.style.top = linkPos.bottom + "px"; refHint.style.left = linkPos.left + "px"; const panelPos = refHint.getBoundingClientRect(); const panelMargin = 8; const maxRight = document.body.parentNode.clientWidth - panelMargin; if (panelPos.right > maxRight) { const overflowAmount = panelPos.right - maxRight; const newLeft = Math.max(panelMargin, linkPos.left - overflowAmount); refHint.style.left = newLeft + "px"; } } // TODO: shared util // Returns the root-level absolute position {left and top} of element. function getBounds(el, relativeTo=document.body) { const relativeRect = relativeTo.getBoundingClientRect(); const elRect = el.getBoundingClientRect(); const top = elRect.top - relativeRect.top; const left = elRect.left - relativeRect.left; return { top, left, bottom: top + elRect.height, right: left + elRect.width, } } function showRefHintListener(e) { // If the target isn't in a link (or is a link), // just ignore it. let link = e.target.closest("a"); if(!link) return; // If the target is in a ref-hint panel // (aka a link in the already-open one), // also just ignore it. if(link.closest(".ref-hint")) return; // Otherwise, show the panel for the link. showRefHint(link); } function hideAllHintsListener(e) { // If the click is inside a ref-hint panel, ignore it. if(e.target.closest(".ref-hint")) return; // Otherwise, close all the current panels. hideAllRefHints(); } document.addEventListener("DOMContentLoaded", () => { document.body.addEventListener("mousedown", showRefHintListener); document.body.addEventListener("focus", showRefHintListener); document.body.addEventListener("click", hideAllHintsListener); }); window.addEventListener("resize", () => { // Hide any open ref hint. hideAllRefHints(); }); } </script> <script>/* Boilerplate: script-var-click-highlighting */ "use strict"; { /* Color-choosing design: * Colors are ordered by goodness. * On clicking a var, give it the earliest color with the lowest usage in the algorithm. * On re-clicking, re-use the var's most recent color if that's not currently being used elsewhere. */ const COLOR_COUNT = 7; document.addEventListener("click", e=>{ if(e.target.nodeName == "VAR") { highlightSameAlgoVars(e.target); } }); function highlightSameAlgoVars(v) { // Find the algorithm container. let algoContainer = findAlgoContainer(v); // Not highlighting document-global vars, // too likely to be unrelated. if(algoContainer == null) return; const varName = nameFromVar(v); if(!v.hasAttribute("data-var-color")) { const newColor = chooseHighlightColor(algoContainer, v); for(const el of algoContainer.querySelectorAll("var")) { if(nameFromVar(el) == varName) { el.setAttribute("data-var-color", newColor); el.setAttribute("data-var-last-color", newColor); } } } else { for(const el of algoContainer.querySelectorAll("var")) { if(nameFromVar(el) == varName) { el.removeAttribute("data-var-color"); } } } } function findAlgoContainer(el) { while(el != document.body) { if(el.hasAttribute("data-algorithm")) return el; el = el.parentNode; } return null; } function nameFromVar(el) { return el.textContent.replace(/(\s|\xa0)+/g, " ").trim(); } function colorCountsFromContainer(container) { const namesFromColor = Array.from({length:COLOR_COUNT}, x=>new Set()); for(let v of container.querySelectorAll("var[data-var-color]")) { let color = +v.getAttribute("data-var-color"); namesFromColor[color].add(nameFromVar(v)); } return namesFromColor.map(x=>x.size); } function leastUsedColor(colors) { // Find the earliest color with the lowest count. let minCount = Infinity; let minColor = null; for(var i = 0; i < colors.length; i++) { if(colors[i] < minCount) { minColor = i; minCount = colors[i]; } } return minColor; } function chooseHighlightColor(container, v) { const colorCounts = colorCountsFromContainer(container); if(v.hasAttribute("data-var-last-color")) { let color = +v.getAttribute("data-var-last-color"); if(colorCounts[color] == 0) return color; } return leastUsedColor(colorCounts); } } </script>