Heim > Web-Frontend > CSS-Tutorial > Rezepte zur Erkennung von Unterstützung für CSS-AT-Rules

Rezepte zur Erkennung von Unterstützung für CSS-AT-Rules

尊渡假赌尊渡假赌尊渡假赌
Freigeben: 2025-03-08 11:55:16
Original
926 Leute haben es durchsucht

Recipes for Detecting Support for CSS At-Rules

Die @supports AT-Rule, die zunächst auf Eigenschafts-/Wert-Paarprüfungen beschränkt ist, unterstützt jetzt Selektorprüfungen über selector() und Schriftformat/Technologieprüfungen mit font-format() und font-tech(). Das direkte Testen anderer AT-RULE-Unterstützung bleibt jedoch eine Herausforderung. Die geplante at-rule() -Wrapper -Funktion ist, während er vielversprechend ist, eine weit verbreitete Browser -Implementierung.

In diesem Artikel werden die Problemumgehungen zum Erkennen von Unterstützung bei der Region untersucht und auf Bramus '"verräterischen" Immobilienansatz aufgebaut. Diese Methode nutzt das Vorhandensein verwandter Eigenschaften, die neben spezifischen AT-Rülen versandt werden, um die Unterstützung zu schließen. Wenn eine verwandte, überprüfbare Eigenschaft unterstützt wird, wird wahrscheinlich auch das nicht testbare AT-RULE unterstützt.

Mehrere AT-Rules werden untersucht, kategorisiert nach ihrem Browser-Unterstützung:

Basisunterstützung (zuverlässige Erkennung):

  • @container Größe Abfragen: leicht mit Eigenschaften wie container-type, container-name oder container zu testen. Wenn eine davon unterstützt wird, wird @container wahrscheinlich unterstützt.
@supports (container-type: size) {
  /* Size queries are supported! */
}
Nach dem Login kopieren
  • @font-feature-values: Die font-variant-alternates Eigenschaft dient als verräterische Anzeige.
@supports (font-variant-alternates: swash(custom-ident)) {
  /* @font-feature-values is supported! */
}
Nach dem Login kopieren
  • @font-palette-values: Die font-palette Eigenschaft bietet einen zuverlässigen Test.
@supports (font-palette: normal) {
  /* @font-palette-values is supported! */
}
Nach dem Login kopieren

Teilnahmebereich (benötigte Problemumgehungen):

  • @container Stilabfragen: Fehlen einer spezifischen verräterischen Eigenschaft, wird ein progressiver Verbesserungsansatz verwendet. Basisstile werden definiert und dann in einem @container -Block für die Unterstützung von Browsern überschrieben.
.container {
  --supports-style-queries: true;
}

.container .child {
  /* Base styles */
}

@container style(--supports-style-queries: true) {
  /* Container queries are supported! */
  .child {
    /* Override base styles */
  }
}
Nach dem Login kopieren
  • @counter-style: Die Unterstützung für <custom-ident></custom-ident> -Werte in list-style-type zeigt @counter-style Unterstützung an.
@supports (list-style: custom-ident) {
  /* @counter-style is supported! */
}
Nach dem Login kopieren
  • @position-try: Eigenschaften wie anchor-name oder position-try können zur Erkennung verwendet werden.
@supports (position-try: flip-block) {
  /* @position-try is supported! */
}
Nach dem Login kopieren
  • @scope: Ähnlich wie bei Stilabfragen wird eine progressive Verbesserungsstrategie verwendet, wobei Basisstile in einem @scope Block überschrieben sind.
.foo .element {
  /* Base style */
}

@scope (.foo) to (.bar) {
  :scope .element {
    /* @scope is supported, override base style */
  }
}
Nach dem Login kopieren
  • @view-transition: Die view-transition-name -Funktion oder die selector() -Funktion mit ::view-transition-group kann verwendet werden.
@supports (view-transition-name: custom-ident) {
  /* @view-transition is supported! */
}
Nach dem Login kopieren

ungelöste Herausforderungen:

Der Artikel identifiziert @layer, @property und @starting-style als AT-Rules, für die zuverlässige Erkennungsmethoden trotz angemessener Browserunterstützung schwer fassbar bleiben. Weitere Untersuchungen werden gefördert. Der Autor schlägt vor, dass ein progressiver Verbesserungsansatz für @layer.

funktionieren könnte

Dieser umfassende Leitfaden bietet praktische Rezepte zum Erkennen von AT-RULE-Unterstützung in CSS und bietet Lösungen für verschiedene Ebenen der Browserkompatibilität. Der "verteilte" Immobilienansatz erweist sich als wertvoll, aber einige AT-Rules erfordern immer noch innovative Teststrategien.

Das obige ist der detaillierte Inhalt vonRezepte zur Erkennung von Unterstützung für CSS-AT-Rules. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage