CSSPageRule
Baseline
Weitgehend verfügbar
*
Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit Juli 2015 browserübergreifend verfügbar.
* Einige Teile dieser Funktion werden möglicherweise unterschiedlich gut unterstützt.
CSSPageRule repräsentiert eine einzelne CSS @page Regel.
Instanz-Eigenschaften
Erbt Eigenschaften von seinen Vorfahren CSSGroupingRule und CSSRule.
CSSPageRule.selectorText-
Repräsentiert den Text des Seitenselektors, der mit der At-Regel verbunden ist.
CSSPageRule.styleSchreibgeschützt-
Gibt den Deklarationsblock zurück, der mit der At-Regel verbunden ist.
Instanz-Methoden
Erbt Methoden von seinen Vorfahren CSSGroupingRule und CSSRule.
Beispiele
>Filtern nach Seitenregeln
Dieses Beispiel zeigt, wie Sie CSSPageRule Objekte für @page Regeln finden können, die vom Dokument geladen wurden.
CSS
Unten definieren wir Stile für die Seite mit einer @page Regel.
@page {
margin: 1cm;
}
JavaScript
Der Code durchläuft alle Stylesheets im Dokument und alle cssRules in jedem Sheet, protokolliert den Sheet-Index, die Anzahl der Regeln und den Typ jedes Regelobjekts.
Wir erkennen dann CSSPageRule Objekte anhand ihres Typs (tun jedoch nichts mit der Information).
for (
let sheetCount = 0;
sheetCount < document.styleSheets.length;
sheetCount++
) {
const sheet = document.styleSheets[sheetCount].cssRules;
log(`styleSheet: ${sheetCount}`);
const myRules = document.styleSheets[sheetCount].cssRules;
log(`rules: ${myRules.length}`);
for (const rule of myRules) {
log(`rule: ${rule}`);
if (rule instanceof CSSPageRule) {
// Do something with CSSPageRule
}
}
}
Ergebnisse
Die Ergebnisse sind unten gezeigt.
Wie Sie sehen können, gibt es zwei Stylesheets, die diesem Hauptdokument und dem Beispielcode-Rahmen entsprechen, und jedes hat eine Anzahl von Regeln, von denen nur eine unsere CSSPageRule ist.
Spezifikationen
| Spezifikation |
|---|
| CSS Object Model (CSSOM)> # the-csspagerule-interface> |