Heim > Artikel > Web-Frontend > 11 Dinge, die Sie bei der Verbesserung der Effizienz beim Rendern von CSS-Webseiten beachten sollten_Experience Exchange
1. Anzahl der Ziffern sowie Groß- und Kleinschreibung für hexadezimale Farbwerte
Beim Schreiben hexadezimaler Farbwerte können Sie Kleinbuchstaben verwenden oder diese in 3 Ziffern weglassen. Es wurden keine spezifischen Daten zu dieser Methode gefunden Das Schreiben zeigt, ob es Auswirkungen auf die Rendering-Effizienz des Browsers hat. Der Standardstandard für hexadezimale Farbwerte ist jedoch die Großschreibung und die 6-stellige Schreibweise. Wenn man in unbekannten Situationen kein Risiko eingehen möchte, verringert sich die Rendering-Effizienz.
* Abgelehnt – Farbe:#f3a; um festzulegen oder abzurufen, ob das Objekt angezeigt werden soll. Die Anzeige ausgeblendeter Objekte behält keinen physischen Platz, und die Sichtbarkeit behält den physischen Platz bei, der von ausgeblendeten Objekten eingenommen wird. Wenn der Browser den belegten physischen Speicherplatz rendert, werden Ressourcen verbraucht.
* Abgelehnt - Sichtbarkeit:ausgeblendet;
3 🎜> ähnelt der Beziehung zwischen Anzeige und Sichtbarkeit, mit keinem bzw. reserviertem Platz. Mehr über border:0; Obwohl der Rand ausgeblendet werden kann, bleibt die Verwendung von border-color/border-style für Sie erhalten.
* Abgelehnt – Rand: 0; >
Ein Hintergrundbild mit einer Breite und Höhe von 1 Pixel. Obwohl die Dateigröße sehr klein ist, erfordert das Rendern eines Panels mit einer Breite und Höhe von 500 Pixeln eine wiederholte Kachelung. Die Verbesserung der Effizienz beim Rendern von Hintergrundbildern hängt von der Bildgröße und dem Volumen ab. Die größte Bilddateigröße beträgt weiterhin etwa 70 KB.
* Abgelehnt – Hintergrundbilder mit Breite und Höhe unter 8 Pixel anordnen
* Empfohlen – Hintergrundbilder mit mäßiger Lautstärke und Größe
5. Verwenden Sie IE-Filter mit Vorsicht
IE-Filter verbrauchen nicht nur Ressourcen, sondern weisen auch Kompatibilitätsprobleme auf. Es gibt einen Filter, der PNG transparent macht. Sie können die Verwendung dieses Filters vermeiden, indem Sie GIF oder JPG transparent erscheinen lassen. Es wird empfohlen, in IE6 nur GIF-Transparenz zu verwenden, da IE7 und höher bereits PNG-Transparenz unterstützen.
* Ablehnung, der Missbrauch von IE-Filtern verbraucht nicht nur Ressourcen, sondern führt auch zu Kompatibilitätsproblemen.
* Es wird empfohlen, es zu verwenden. Wählen Sie am besten andere Methoden, um die Verwendung von Filtern zu vermeiden.
6. *{margin:0; padding:0;}, um Unterschiede im Browserstil zu vermeiden
Der Platzhalter * initialisiert alle Tags und das Rendern im Browser nimmt eine gewisse Zeit in Anspruch . Ressource. Einige Tags sind in verschiedenen Browsern fast gleich, oder einige Tags werden nicht mehr empfohlen (da sie nicht erneut initialisiert werden müssen). Dies kann einige Ressourcen sparen.
* Abgelehnt, Platzhalter * verwenden
* Abgelehnt, div span button b table und andere Tags sollten in Platzhaltern enthalten sein, um interne und externe Füllstile zu steuern
* Empfohlen, Seien Sie selektiv. Verwenden Sie Platzhalter, um den Innen- und Außenauffüllstil zu steuern.
7. Fügen Sie keine zusätzlichen Tags hinzu, um die Klasse oder ID zu beschreiben.
Wenn Sie einen Selektor haben, der die ID als Schlüsselselektor verwendet, fügen Sie bitte keine zusätzlichen Tag-Namen hinzu. Da die ID eindeutig ist, sollten Sie die Matching-Effizienz nicht aus einem nicht vorhandenen Grund verringern.
* Abgelehnt – button#backButton { }
* Abgelehnt – .menu-left #newMenuIcon { }
* Empfohlen – #backButton { }
* Es wird empfohlen, - #newMenuIcon { } zu verwenden
8 Versuchen Sie, die speziellste Klasse zum Speichern des Selektors auszuwählen
Einer der Hauptgründe für die Verringerung der Systemeffizienz ist, dass wir das verwenden Label-Klasse Zu viele Selektoren. Indem wir dem Element eine Klasse hinzufügen, können wir die Kategorie in Klassenklassen unterteilen, sodass wir keine Zeit damit verschwenden müssen, zu viele Selektoren für ein Tag abzugleichen.
* Abgelehnt – treeitem[mailfolder="true"] > treerow > treecell { }
* Empfohlen - .treecell-mailfolder { }
9. Nachkommenauswahl vermeiden
Der Nachkommenselektor ist der ressourcenintensivste Selektor in CSS. Es ist wirklich sehr ressourcenintensiv, insbesondere wenn der Selektor eine Label-Klasse oder eine allgemeine Klasse verwendet. In vielen Fällen wollen wir wirklich einen Unterselektor. Sofern nicht ausdrücklich angegeben, ist die Verwendung von Nachkommenselektoren in UI-CSS strengstens untersagt.
* Nicht einverstanden – Treehead Treerow Treecell { }
* Besser, aber immer noch nicht gut (siehe nächster Artikel) – Treehead > Treerow > Treecell { }
10 Keine Unterselektoren in Klassen einbeziehen
Verwenden Sie keine Unterselektoren in Tag-Klassen. Andernfalls erhöht jedes Vorkommen eines Elements zusätzlich die Matching-Zeit.(Vor allem, wenn der Selektor wahrscheinlich übereinstimmt)
* Veraltet – Treehead > Treerow > Treecell { }
* Empfohlen – .treecell-header { }
11. Achten Sie auf die Verwendung aller Unterselektoren
Geben Sie Unterselektoren sorgfältig ein. Wenn Ihnen eine Möglichkeit einfällt, es nicht zu verwenden, dann verwenden Sie es nicht. Insbesondere RDF-Bäume und -Menüs verwenden häufig Unterselektoren wie diesen.
* Abgelehnt - treeitem[IsImapServer="true"] > treerow > .tree-folderpane-icon { }
Bitte beachten Sie, dass RDF-Attribute in Vorlagen kopiert werden können! Dadurch können wir RDF-Attribute auf untergeordnete XUL-Elemente kopieren, die wir basierend auf diesem Attribut ändern möchten.
* Es wird empfohlen, - .tree-folderpane-icon[IsImapServer="true"] { }
zu verwenden