CSS pseudo-classes avec des styles en ligne

Est-il possible d’avoir des pseudo-classes en utilisant des styles en ligne?


Exemple:

Google 

Je sais que le code HTML ci-dessus ne fonctionnera pas, mais y a-t-il quelque chose de similaire?

PS Je sais que je devrais utiliser une feuille de style externe, et je le fais. J’étais juste curieux de savoir si cela pouvait être fait en utilisant des styles en ligne.

Non, ce n’est pas possible. Dans les documents utilisant CSS, un atsortingbut de style ligne ne peut contenir que des déclarations de propriété. le même ensemble d’instructions qui apparaît dans chaque jeu de règles d’une feuille de style. À partir de la spécification des atsortingbuts de style :

La valeur de l’atsortingbut style doit correspondre à la syntaxe du contenu d’un bloc de déclaration CSS (à l’exclusion des accolades), dont la grammaire formelle est donnée ci-dessous dans les termes et conventions de la grammaire CSS :

 declaration-list : S* declaration? [ ';' S* declaration? ]* ; 

Ni les sélecteurs (y compris les pseudo-éléments), ni les règles ni aucune autre construction CSS ne sont autorisés.

Considérez les styles en ligne comme les styles appliqués à certains sélecteurs d’ID super-spécifiques anonymes: ces styles ne s’appliquent qu’à cet élément unique avec l’atsortingbut style . (Ils ont également priorité sur un sélecteur d’ID dans une feuille de style, si cet élément a cet ID.) Techniquement, cela ne fonctionne pas comme ça; c’est juste pour vous aider à comprendre pourquoi l’atsortingbut ne supporte pas les styles pseudo-classe ou pseudo-élément (cela a plus à voir avec la façon dont les pseudo-classes et les pseudo-éléments fournissent des abstractions de l’arbre de document qui ne peuvent pas être exprimées). la langue du document).

Notez que les styles en ligne participent à la même cascade que les sélecteurs dans les ensembles de règles et prennent la priorité la plus élevée dans la cascade ( !important Nonobstant). Ils ont donc priorité sur les états pseudo-classes. Autoriser les pseudo-classes ou tout autre sélecteur dans les styles en ligne pourrait éventuellement introduire un nouveau niveau de cascade, et avec lui un nouvel ensemble de complications.

Notez également que les très anciennes révisions de la spécification d’atsortingbuts de style proposaient à l’origine de permettre cela , cependant elles ont été supprimées, probablement pour la raison indiquée ci-dessus, ou parce que leur implémentation n’était pas une option viable.

Pas CSS, mais en ligne:

 Hello 

Voir exemple →

Plutôt que d’avoir besoin d’inline, vous pouvez utiliser CSS interne

 Google 

Tu aurais pu:

 Google