Iframe irony: Adblock Plus is probably the reason Firefox and Chrome are such memory hogs | ExtremeTech

C’est connu depuis longtemps : AdBlock Plus est responsable d’une grosse partie du bouffage de mémoire dans Firefox.

Ici on a quelques chiffres : il y a un fichier CSS de 4Mo dans AdBlock… 4Mo, bordel… C’est énorme.

Les navigateurs fonctionnent en analysant le HTML d’un côté, et le CSS de l’autre. Les propriétés CSS sont appliquées sur le HTML grâces aux règles CSS (un cadre #cadre a la couleur « bleue », par exemple). Plus il y a de règles de ce genre, plus le navigateur bouffe de la mémoire et du CPU.

Surtout quand ce sont des règles du style « un élément dans un paragraphe dans n’importe quel 3e élément d’une liste de la partie principale du second bloc de la page », ou en CSS : « body > div:nth-of-type(2) > main > ul > li:nth-of-type(3) > p * { } ».

C’est pour ça que remplacer des lignes compliquées comme ça par des éléments nommés (avec ID) redonne beaucoup de vitesse à votre site : les éléments nommés sont par définition unique, et le parseur n’a pas à reparser tout le document pour trouver des occurrences de l’imbrication « body > main > ul > li:nth-of-type(3) > p * », mais il a juste a trouver l’élément avec le nom et arrêter la recherche à la première (et seule) occurrence.

AdBlock est sûrement complet, mais il ralentit toute la machine.

Le blockage des éléments externes, tels que les requêtes sur les iFrame (pub) ou les scripts externes (réseaux sociaux) suffit en général a bloquer la plus grande partie des nuisances liées à l’espionnage sur les sites.