Analyse des styleSheets
Analyse des règles CSS déclarées dans la page en utilisant la propriété styleSheets de l'objet document.
Un titre de section
Juste du texte dans un paragraphe
Un paragraphe d'informations
Principe
On parcourt les document.styleSheets
présentes dans le document, pour chaque règles de celles-ci, on regarde si il existe au moins un élément accessible via le sélecteur de la règle (cssRule.selectorText
), on utilise pour ce faire la méthode querySelector(cssRule.selectorText)
.
Si l'on trouve un élément alors on stocke le sélecteur dans un array
.
Ensuite on récupère tous les éléments ayant une classe CSS déclarée en utilisant la méthode document.querySelectorAll("[class]")
, il ne nous reste plus qu'à tester que pour chaque élément la ou les classes qu'il possède sont dans le tableau de récupération des sélecteurs.
Voilà pour le principe de base.
Résultat analyse de la page
Règles CSS utilisées
Règles CSS non utilisées
Liste des sélecteurs utilisés
Éléments corrigés
Règles @
Remarques
Les feuilles de styles doivent appartenir au même domaine pour pouvoir être analysés.
Les sélecteurs non valides ne sont pas pris en compte.
Les règles @, @import, @media ..., ne sont pas prises en compte.
Les pseudo-éléments, tout comme certaines pseudo-classes, ne sont pas pris en compte.
Les règles relatives aux éléments ajoutés dynamiquement au document sont considérées comme inutilisées.
La mise en place de classe CSS sur des éléments peut également servir à cibler ces éléments en JavaScript.