Document: styleSheets property
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
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.
Value
The returned list is ordered as follows:
- StyleSheets retrieved from
Link
headers are placed first, sorted in header order. - StyleSheets retrieved from the DOM are placed after, sorted in tree order.
Examples
>Retrieving a specific stylesheet by its title
js
function getStyleSheet(uniqueTitle) {
for (const sheet of document.styleSheets) {
if (sheet.title === uniqueTitle) {
return sheet;
}
}
}
Accessing rules in the stylesheet
You can access these stylesheets and their rules individually using the stylesheet, style, and CSSRule
objects, as demonstrated in this example, which prints out all of the style rule selectors to the console.
js
for (const styleSheet of document.styleSheets) {
for (const rule of styleSheet.cssRules) {
console.log(`${rule.selectorText}\n`);
}
}
For a document with a single stylesheet in which the following three rules are defined:
css
body {
background-color: darkblue;
}
p {
font-family: "Arial";
font-size: 10pt;
margin-left: 0.125in;
}
#lumpy {
display: none;
}
This script outputs the following:
BODY P #LUMPY
Specifications
Specification |
---|
CSS Object Model (CSSOM)> # dom-documentorshadowroot-stylesheets> |
Browser compatibility
Loading…