Question

Est-il possible d'utiliser l'élément dans les sélecteurs de noscript CSS?

noscript p {
    font-weight: bold;
}
Était-ce utile?

La solution

Oui! Vous pouvez certainement le faire.

En fait, beaucoup ( tous? ) navigateurs prennent en charge le ciblage toute étiquette arbitraire en utilisant CSS. balises « officielles » dans le code HTML spécifications ne définissent ce qu'un navigateur doit faire avec eux. Mais CSS est un langage qui cible toute la saveur de XML, de sorte que vous pouvez dire et dans la plupart foo {font-weight:bold;} navigateurs, sortira <foo> hello world </foo> gras.

Darko Z précise, IE6 / 7 ne pas ajouter des éléments arbitraires (non standard) pour les DOM automatiquement à partir de la source; ils doivent être ajoutés par programme.

Autres conseils

J'ai un bug IE garder à l'esprit. Si, comme OP, vous voulez juste le style de texte dans la balise noscript et non la balise noscript lui-même, s'il vous plaît ne pas tenir compte de cette ..

Dites que vous voulez faire rouge arrière-plan de la balise noscript. Dans IE8, il affichera avec JS activé. Juste la boîte elle-même, pas le texte à l'intérieur.

Donc cette combinaison n'est pas bon:

CSS

noscript {
    background-color: red;
}

HTML

<noscript>Turn on your damned JavaScript! What is this, 1999?</noscript>

Mais cette solution de contournement fonctionne très bien:

CSS

noscript div {
    background-color: red;
}

HTML

<noscript><div>Turn on your damned JavaScript! What is this, 1999?</div></noscript>

Bizarrement, je ne vois que ce comportement dans IE8, non IE7. Et qui sait 6 ..

En plus de réponse Rex M - IE 6/7 (? 6 def, 7 peut-être) ne sera pas un style de étiquette arbitraire pour vous. Mais la chance pour vous avec tous beaucoup de problèmes IE il y a une solution de contournement.

Dites que vous voulez le style d'un élément appelé foo. Pour obtenir IE de le reconnaître comme un élément styleable vous devez inclure cette ligne quelque part dans votre JS:

document.createElement('foo');

Vous n'avez pas besoin d'ajouter, juste créer.

donnera le coup d'IE dans un style qui élément pour vous avec la règle CSS:

foo { font-weight:bold; }
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top