Heim Web-Frontend CSS-Tutorial Mehr zur Inhaltsprüfbarkeit

Mehr zur Inhaltsprüfbarkeit

Apr 01, 2025 am 04:50 AM

Attribute content-visibility von CSS: Leistungsverbesserung und Zugänglichkeitsprobleme

Im August 2020 wurde das CSS-Attribut content-visibility in Chrombrowsern verwendet, und Una Kravets und Vladimir Levin schrieben einen Artikel darüber. Um seine Leistungsvorteile vollständig zu nutzen, muss es in Verbindung mit contain-intrinsic-size verwendet werden, die eine Schätzung der Höhe großer Inhaltsbrocken auf der Seite erfordert. Der seltsamste Teil davon ist, dass Sie eine ungefähre Vermutung über die Höhe dieser großen Stücke machen müssen.

Ich habe schon einmal eine Frage gestellt: einfach die Höhe? Was passiert, wenn die Vermutung falsch ist? Wird es die Leistung beeinflussen? Wenn es einen großen Unterschied zwischen einem großen Bildschirm und einem kleinen Bildschirm gibt, wird dieser Wert (oder sollte) in einem anderen Ansichtsfenster geändert werden?

Jake Archibald und Das Surma haben kürzlich ein Video gemacht, um diese Probleme zu klären. Mit ungefähr 7 Minuten und 30 Sekunden des Videos können Sie sehen, wie verwirrend das ist. Jake verwendete eine große HTML -Spezifikationsseite als Demonstration und fügte einen Wrapper für große Stücke von HTML -Inhalten hinzu und wandte den folgenden Code an:

 Abschnitt {
  Inhaltssicherheit: Auto; /* Verzögerungszeichnung*//
  enthält intrinsische Größe: 1px 5000px; /* Erraten Sie die Inhaltsgröße, die Breite spielt keine Rolle*/
}
Nach dem Login kopieren

Offensichtlich ist 5000px nicht die Höhe des Elements, sondern die Größe des Inhalts dieses Elements. Dies ist wichtig, da es die Höhe des übergeordneten Elements auf diesen Wert erhöht, es sei denn, das übergeordnete Element überschreibt es mit seinem eigenen Höheattribut. Die Magie davon ist, dass der Browser nur den ersten Abschnitt zeichnet (die Höhe der Ansichtsfenster dürfte weniger als 5000 PX beträgt) und die Verzögerung des Restes verzögert. Es ist ein bisschen wie fauler Laden, aber es funktioniert auf allem, nicht nur in den Medien. Es wird davon ausgegangen, dass der nächste Abschnitt eine Höhe von 5000 PX hat, aber sobald sein Oberteil sichtbar ist, wird er tatsächlich gezeichnet und die richtige Höhe wird bestimmt. Wenn Ihre Seite also nur große Inhaltsblöcke ist, die zusammengestapelt sind, sollte die Verwendung einer sehr großen Anzahl gut funktionieren. Wenn Ihre Website komplizierter ist, seien Sie glücklich.

Dies ist ein tolles Video, das Sie auschecken sollten: Videolink

Dies ist ein weiteres Beispiel dafür, was Sie Ihrem Browser auf Website -Informationen zur Verfügung stellen müssen, damit dies die Leistung verbessern kann. Der Browser selbst kann diese Informationen finden, kann jedoch erst nach der Durchführung von Betriebskosten erfolgen. Sie müssen es also im Voraus sagen und so einige Arten von zusätzlichen Arbeiten vermeiden. Wenn wir für reaktionsschnelle Bilder das srcset -Attribut verwenden, um Bilder bereitzustellen und den Browser im Voraus ihre Größe zu mitteilen, einschließlich eines sizes , das CSS -Verhaltensinformationen enthält, kann es im Voraus berechnet werden und nur die besten Bilder werden heruntergeladen. In ähnlicher Weise können wir für will-change in CSS den Browser im Voraus mitteilen, dass wir den Umzug so machen, dass er voroptimiert werden kann, andernfalls kann er dies nicht tun. Das ist verständlich, aber ein wenig langweilig. Es ist, als würden wir eine stuff-you-need-to-know.manifest Sie für Sie mit der Manifest-Datei zur Verfügung stellen, bevor der Browser etwas anderes macht-aber das wäre eine zusätzliche Anfrage!

Auch Barrierefreiheitsprobleme sind wichtig. Steve Faulkner getestet angewendet, um content-visibility: auto auf Bilder und Absätze:

Inhalt ist visuell versteckt, aber in Jaws und NVDA werden versteckte Bilder angekündigt, aber der Inhalt des Elements wird nicht bekannt gegeben. Dies bezieht sich darauf, wie der Inhalt der Bild- und Absatzelemente im Browser -Zugehörigkeitsbaum dargestellt wird: Das Bild wird in der Zugehörigkeitsbaum mit ALT -Text als Namensname angezeigt. Der Inhalt von Absatzelementen befindet sich nicht im Breacing -Baum.

Er stellte fest, dass durch die Spezifikation, die auf diese Weise versteckte Inhalte nicht für die Bildschirmleser zur Verfügung gestellt werden sollten. Ich kann beide Fälle verstehen, z. B. das Verstecken von allem wie display: none , was bedeutet, dass nichts im Breacing -Baum ist. Oder behalten Sie alles im Breacing -Baum. Jetzt befindet es sich in einem Zwischenzustand. Möglicherweise sehen Sie eine Reihe von isolierten Bildern im Barrierefreiheitbaum ohne einen anderen Kontext mit Ausnahme ihres Alt -Textes. Dies ist ein interessantes Beispiel dafür, dass die neue Technologie, die eingeführt wird, rauer sein kann, als Sie gerne sehen würden.

Apropos Alt -Texte, wir alle wissen, dass sie nicht leer sein sollten, wenn sie wichtige Dinge darstellen, die für Menschen beschrieben werden müssen, die sie nicht sehen können. Dave sagt, sie sollten wie Absätze sein :

Ich habe endlich die einfachste Verbindung hergestellt: Der Alt -Text ist wie ein Absatz. Textbilder. Ich weiß, dass dies grundlegend ist, aber es hilft mir zu verstehen, wie man einen guten Alt -Text und die Quellreihenfolge meines Codes schreibt.

Ich möchte hier nicht zu negativ sein! Die Leistungssteigerungen für die Einrichtung langer Bildlaufseiten mit content-visibility sind riesig, was großartig ist. Es ist gut, zwei Codezeilen zu verwenden, um dem Browser mitzuteilen, was nicht gezeichnet werden kann.

  1. Ich sage immer wieder "Zeichnen", aber ich weiß nicht, ob dies wirklich der richtige Begriff ist oder ob dies genauer ist. In der Spezifikation wird Dinge wie "Ermöglichung von Benutzeragenten ermöglichen, möglicherweise viel Layout auszulassen und die Arbeit zu rendern, bevor sie es brauchen" (Betonung meiner).

Mehr zur Inhaltsprüfbarkeit

Das obige ist der detaillierte Inhalt vonMehr zur Inhaltsprüfbarkeit. 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

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Java-Tutorial
1664
14
PHP-Tutorial
1266
29
C#-Tutorial
1239
24
Google -Schriftarten variable Schriftarten Google -Schriftarten variable Schriftarten Apr 09, 2025 am 10:42 AM

Ich sehe, dass Google -Schriftarten ein neues Design (Tweet) ausgelöst haben. Im Vergleich zur letzten großen Neugestaltung fühlt sich dies viel iterativer an. Ich kann den Unterschied kaum erkennen

So erstellen Sie einen animierten Countdown -Timer mit HTML, CSS und JavaScript So erstellen Sie einen animierten Countdown -Timer mit HTML, CSS und JavaScript Apr 11, 2025 am 11:29 AM

Haben Sie jemals einen Countdown -Timer für ein Projekt benötigt? Für so etwas ist es möglicherweise natürlich, nach einem Plugin zu greifen, aber es ist tatsächlich viel mehr

HTML -Datenattributehandbuch HTML -Datenattributehandbuch Apr 11, 2025 am 11:50 AM

Alles, was Sie schon immer über Datenattribute in HTML, CSS und JavaScript wissen wollten.

Ein Beweis für das Konzept, um Sass schneller zu machen Ein Beweis für das Konzept, um Sass schneller zu machen Apr 16, 2025 am 10:38 AM

Zu Beginn eines neuen Projekts erfolgt die SASS -Zusammenstellung im Blinzeln eines Auges. Dies fühlt sich gut an, besonders wenn es mit Browsersync kombiniert ist, das nachlädt

Wie wir eine statische Site erstellt haben, die Tartan -Muster in SVG erzeugt Wie wir eine statische Site erstellt haben, die Tartan -Muster in SVG erzeugt Apr 09, 2025 am 11:29 AM

Tartan ist ein gemustertes Tuch, das normalerweise mit Schottland verbunden ist, insbesondere mit ihren modischen Kilts. Auf Tartanify.com haben wir über 5.000 Tartan gesammelt

So erstellen Sie Vue -Komponenten in einem WordPress -Thema So erstellen Sie Vue -Komponenten in einem WordPress -Thema Apr 11, 2025 am 11:03 AM

Mit der Inline-Template-Anweisung können wir reichhaltige Vue-Komponenten als fortschreitende Verbesserung gegenüber vorhandenem WordPress-Markup erstellen.

PHP ist A-OK für die Vorlagen PHP ist A-OK für die Vorlagen Apr 11, 2025 am 11:04 AM

PHP -Vorlagen erhält oft einen schlechten Rap für die Erleichterung von unterdurchschnittlichem Code - aber das muss nicht der Fall sein. Schauen wir uns an, wie PHP -Projekte eine Basis durchsetzen können

Ein Vergleich statischer Formanbieter Ein Vergleich statischer Formanbieter Apr 16, 2025 am 11:20 AM

Versuchen wir, hier einen Begriff zu prägen: "Statischer Formanbieter". Sie bringen Ihre HTML

See all articles