CSSPageRule

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2015.

CSSPageRule repräsentiert eine einzelne CSS-@page-Regel.

CSSRule CSSGroupingRule CSSPageRule

Instanzeigenschaften

Erbt Eigenschaften von seinen Vorfahren CSSGroupingRule und CSSRule.

CSSPageRule.selectorText

Repräsentiert den Text des Seiten-Selectors, der mit der At-Regel verknüpft ist.

CSSPageRule.style Schreibgeschützt

Gibt den Deklarationsblock zurück, der mit der At-Regel verknüpft ist.

Instanzmethoden

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 werden.

CSS

Unten definieren wir Stile für die Seite mit einer @page-Regel.

css
@page {
  margin: 1cm;
}

JavaScript

Der Code iteriert durch alle Blätter im Dokument und durch alle cssRules in jedem Blatt, wobei der Blattindex, die Anzahl der Regeln und der Typ jedes Regelobjekts protokolliert werden. Wir erkennen dann CSSPageRule-Objekte anhand ihres Typs (tun jedoch nichts mit der Information).

js
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 (let i = 0; i < myRules.length; i++) {
    log(`rule: ${myRules[i]}`);
    if (myRules[i] instanceof CSSPageRule) {
      //... Do something with CSSPageRule
    }
  }
}

Ergebnisse

Die Ergebnisse sind unten gezeigt. Wie Sie sehen können, gibt es zwei Blätter, die diesem Hauptdokument und dem Beispielcode-Rahmen entsprechen, und jedes hat eine Anzahl von Regeln, von denen nur eine unsere CSSPageRule ist.

Spezifikationen

Specification
CSS Object Model (CSSOM)
# the-csspagerule-interface

Browser-Kompatibilität

BCD tables only load in the browser