CSSPageRule

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.

* Some parts of this feature may have varying levels of support.

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, die vom Dokument geladen werden.

CSS

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

css
@page {
  margin: 1cm;
}

JavaScript

Der Code iteriert durch alle Stylesheets im Dokument und durch alle cssRules in jedem Stylesheet und protokolliert den Index des Stylesheets, die Anzahl der Regeln und den Typ jedes Regelobjekts. Wir erkennen dann CSSPageRule-Objekte anhand ihres Typs (ohne Informationen damit zu verarbeiten).

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 (const rule of myRules) {
    log(`rule: ${rule}`);
    if (rule instanceof CSSPageRule) {
      // Do something with CSSPageRule
    }
  }
}

Ergebnisse

Die Ergebnisse werden unten gezeigt. Wie Sie sehen können, gibt es zwei Stylesheets, die diesem Hauptdokument und dem Beispielcodefenster 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