28172 sujets

CSS et mise en forme, CSS3

Bonjour,

J'ai besoin d'utiliser une expression régulière dans mon CSS pour m'épargner de rédiger un morceau de code en javascript.

Voilà ce que ça donne en français:
Pour tout DIV dont l'id commence par "identifiant", masquer le contenu

En CSS:
div[id ^= 'identifiant'] {display:none;}

Ca marche avec IE7 et Firefox 3, mais pas avec l'ami IE6.

Des pistes? Merci à vous les cocos Smiley cligne
Modifié par pingping (28 Apr 2009 - 15:57)
Salut coco,

même si la notation reprend celle des expressions régulières je ne suis pas sûr que ce soit une bonne idée de reprendre ce terme car les nouveaux sélecteurs d'attributs de CSS3 ne permettent concrètement de ne cibler que des attributs commençant par..., finissant par... ou contenant... (on est loin de la puissance des vraies regexp).

Quoi qu'il en soit c'est sûr qu'IE6, qui ne sait déjà pas interpréter tous les sélecteurs de CSS2.1, ne comprend rien aux sélecteurs propres à CSS3 ! C'est également le cas pour bon nombre d'autres navigateurs qui ne sont pas à leur dernière version ou dont la dernière version ne reprendrait pas toutes les "propositions" actuelles (puisque CSS3 n'est pas encore validé !).

La vraie question est de savoir si c'est une bonne idée d'utiliser dès maintenant CSS3 (et cela dépend surtout de la cible qui est visée : site perso ou pro). Smiley cligne

Edit: un article sur mediabox liste d'ailleurs les navigateurs compatibles.
Modifié par Heyoan (28 Apr 2009 - 15:19)