Der Rendering-Mechanismus des Browsers1. Browser verwenden zwei Engines zur Seitenverarbeitung, und unterschiedliche Browser verwenden unterschiedliche Rendering-Engines Rendering-Engine: JS-Engine 2. Der Browser analysiert HTML in DOM-Baum, CSS analysieren in CSSOM (CSS-Objektmodell); 3. Anschließend werden DOM-Baum und CSSOM kombiniert, um Renderbaum (Renderbaum); 4. Nachdem der Renderbaum abgeschlossen ist, wird der Browser das Layout entsprechend dem Renderbaum erstellen. Nachdem das Layout abgeschlossen ist, wird ein „Boxmodell“ ausgegeben, das die Position und Größe jedes Knotens in der Ansicht genau erfasst und alle Messungen in physikalische Pixelwerte auf dem Bildschirm umwandelt. (Dieser Schritt führt zu 5. Nachdem das Layout abgeschlossen ist, gibt der Browser sofort ein Paint-Stup-Ereignis aus, um den Renderbaum in Bildschirmpixel umzuwandeln. (Dieser Schritt führt zu 6. Nach den obigen Schritten wird die Seite auf dem Bildschirm angezeigt. Beachten Sie, dass ein Reflow zwangsläufig zu einem Neuzeichnen führt, ein Neuzeichnen jedoch nicht unbedingt zu einem Reflow. Reflow und NeulackierungUmformenKonzept: Wenn sich ein Teil oder der gesamte Renderbaum aufgrund von Änderungen in der Struktur, Größe, dem Layout usw. der Elemente ändert, rendert der Browser einen Teil oder den gesamten DOM erneut. Betonen Sie, dass sich Position und Abstand der Elementknoten geändert haben. Aktionen, die Reflux verursachen:
Neu zeichnenKonzept: Wenn sich der Stil eines Seitenelements ändert, ohne dass seine Position im Dokumentfluss dadurch beeinflusst wird, weist der Browser dem Element einfach den neuen Stil zu und zeichnet es neu. Betonen Sie den Stil von Elementknoten, beispielsweise die Farbe, die durchgezogene Linie wird zu einer gestrichelten Linie (ohne Änderung von Position und Abstand). Operationen, die ein Neuzeichnen bewirken:
Oben finden Sie ausführliche Informationen zu den Prinzipien und Unterschieden von Reflow und Repaint, die in Webinterviews häufig gestellt werden. Weitere Informationen zu Reflow und Repaint in Webinterviews finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM! Das könnte Sie auch interessieren:
|
<<: So verwenden Sie libudev in Linux, um die VID und PID eines USB-Geräts abzurufen
>>: So stellen Sie über Navicat eine Remoteverbindung zu MySQL her
Problembeschreibung Ein Spring + Angular-Projekt ...
Bevor wir über die strukturelle Auszeichnung von ...
Der Code sieht folgendermaßen aus: <!DOCTYPE h...
Dieser Artikel stellt hauptsächlich die Analyse d...
Kontextdefinition und Zweck Der Kontext bietet ei...
In diesem Artikelbeispiel wird der spezifische Co...
Inhaltsverzeichnis Problembeschreibung Historisch...
Installieren Sie Jenkins über Yum 1. Installation...
Inhaltsverzeichnis 1. Maven-Abhängigkeit 2. Menüb...
Xhtml hat viele Tags, die nicht häufig verwendet w...
Vorwort Heutzutage wird in Projekten häufig die A...
Thema Heute werde ich Ihnen zeigen, wie Sie mit C...
Typische Layoutbeispiele Wie im obigen Bild gezei...
Inhaltsverzeichnis Vorbereiten Fünf Waffen für … ...
Einleitung: Der Interface-Designer Joshua Porter h...