Réduire la redistribution est un meilleur choix, car le coût du redessinage est relativement faible, tandis que le coût de la redistribution est important : 1. Lorsque le style d'apparence des éléments change, le navigateur redessine ces éléments, mais la mise en page ne change pas ; 2. Lorsque les attributs de mise en page d'un élément changent, le navigateur recalcule les attributs géométriques de l'élément et reconstruit la mise en page de la page entière.
Le système d'exploitation de ce tutoriel : système Windows 10, ordinateur Dell G3.
La redistribution, la repeinture et la mise en page sont différentes étapes du processus de rendu d'une page Web et elles ont des impacts différents sur les performances du site Web.
Redessiner : lorsque le style d'apparence (tel que la couleur, l'arrière-plan) des éléments change, le navigateur redessine ces éléments, mais la mise en page ne change pas. La surcharge de performances liée au redessinage est relativement faible et n’entraînera pas de modifications de la mise en page.
Reflow : lorsque les propriétés de mise en page d'un élément (telles que la position, la taille) changent, le navigateur recalcule les propriétés géométriques de l'élément et reconstruit la mise en page de la page entière. Reflow a une surcharge de performances importante, entraînera une réorganisation de la page et d'autres éléments peuvent également être affectés.
Ainsi, les frais généraux de redessinage sont relativement faibles, tandis que les frais généraux de refusion sont importants. De manière générale, la réduction des reflows est une meilleure option car elle a un plus grand impact sur les performances des pages.
Voici quelques moyens de réduire les reflows :
Utilisez les animations CSS3 : les animations CSS3 utilisent l'accélération GPU, ce qui peut réduire le nombre de reflows.
Modification par lots des styles : évitez de modifier fréquemment le style d'un seul élément, mais regroupez plutôt plusieurs modifications ensemble pour réduire le nombre de refusions.
Utiliser des fragments de document virtuel (Document Fragment) : en créant des fragments de document virtuel, effectuez des opérations DOM en mémoire et enfin ajoutez les fragments de document à la page en une seule fois, réduisant ainsi le nombre de refusions.
Utilisez des transitions ou des transformations CSS3 : ces propriétés peuvent tirer parti de l'accélération GPU et réduire le nombre de reflows.
Évitez la synchronisation forcée de la mise en page : En évitant l'utilisation de certaines propriétés ou méthodes qui déclenchent la redistribution, comme offsetTop, offsetLeft, etc.
Vous devez choisir la stratégie d'optimisation appropriée en fonction de la situation spécifique. Si vous effectuez simplement quelques modifications de style simples, le coût de redessinage peut être faible, mais si des modifications de mise en page complexes sont impliquées, vous devez veiller à réduire le nombre de redistributions.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!