Sélecteurs adjacents non reconnus par IE ?

HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
Répondre
SX1
Salamandre
Messages : 48
Inscription : 02 sept. 2003, 01:13

Sélecteurs adjacents non reconnus par IE ?

Message par SX1 »

Bonjour,

Sur mon site tous les h1 s'affichent avec une boule bleue devant, sauf si ils sont précédés d'une image.

En CSS j'ai donc une class pour h1 avec

Code : Tout sélectionner

h1 {
display: list-item;
	list-style-image:url("img/bluball.png");
	list-style-position: inside; }
pour la boule bleue

puis j'ai l'exclusion avec

Code : Tout sélectionner

.imgstandard4 + h1 {
	display: block;
	list-style-image: none; }
Sous moz 1.6 pas de pb, mais MSIE 6 m'affiche toujours la boule bleue même avec l'image devant . MSIE 6 à un soucis, ou c'est moi qui loupe un truc ?
Nicolas.
phoenix
Lézard vert
Messages : 154
Inscription : 19 déc. 2003, 19:46

Message par phoenix »

ça serait pas la notation avec le "+" qui poserait probléme as tu essayé comme ça :

Code : Tout sélectionner

.imgstandard4 h1 
Perso ça fait pas longtemps que je me suis plongé dans les feuilles de style mais je n'ai jamaisvu cette notation.
bobo
Iguane
Messages : 764
Inscription : 18 août 2003, 11:04

Message par bobo »

phoenix a écrit :Perso ça fait pas longtemps que je me suis plongé dans les feuilles de style mais je n'ai jamais vu cette notation.
Le + est le sélecteur adjacent direct, il permet de sélectionner un élément qui suit immédiatement un autre. Mais IE ne supporte pas cette notation.
Les standards c'est bon, mangez en !
Flore & Sébastien
Unité dans la diversité.
SX1
Salamandre
Messages : 48
Inscription : 02 sept. 2003, 01:13

Message par SX1 »

:( Il y a-t-il une solution à la place de "+" alors ???

J'ai tout essayé

Code : Tout sélectionner

  genre ">" ou  "espace vide"  ou  "*" 
Ya rien qui marche dans mon cas (simple je crois) sous IE.

Quant-est-ce que les PC seront vendus avec Mozilla obligatoirement ?[/code]
Nicolas.
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

tu as essayé h1 .imgstandard4 (dans l'autre sens) ? Je l'utilise pas mal.
SX1
Salamandre
Messages : 48
Inscription : 02 sept. 2003, 01:13

Message par SX1 »

J'essaye à l'instant : gag !
La prévisu de topstylelite me donne un retour logique (pas de boule bleue)
mais ni IE ni Moz ne reconnaissent l'astuce : boule bleue devant h1 partout.
Mais là il doit y avoir un truc pourri dans mon html, je chercherai.
Merci.
Nicolas.
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message par Benoit »

Je me demande si tu ne dois pas utiliser !important pour écraser la règle que tu as définie préalablement sur h1.
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Je viens de tester ça à l'instant.
Impossible de faire marcher le "+" avec FB :shock: (ni ie évidemment !)
Par contre h1.imgstandard4 (sans l'espace :oops: ) marche très bien (tu as bien <h1 class="imgstandard4">, le style ne porte pas sur l'image non ?)

Il faut bien sûr que h1.imgstandard4 soit défini après h1...
bobo
Iguane
Messages : 764
Inscription : 18 août 2003, 11:04

Message par bobo »

calimo a écrit :Je viens de tester ça à l'instant.
Impossible de faire marcher le "+" avec FB :shock: (ni ie évidemment !)
Par contre h1.imgstandard4 (sans l'espace :oops: ) marche très bien (tu as bien <h1 class="imgstandard4">, le style ne porte pas sur l'image non ?)

Il faut bien sûr que h1.imgstandard4 soit défini après h1...
Ah mon avis, c'est plutôt quelque chose du genre :

Code : Tout sélectionner

<img class="imgstandard4" src="boule_bleue"><h1>Mon titre</h1>
auquel cas le '+' devrais bien marcher (avec Mozilla & Cie)
Les standards c'est bon, mangez en !
Flore & Sébastien
Unité dans la diversité.
SX1
Salamandre
Messages : 48
Inscription : 02 sept. 2003, 01:13

Message par SX1 »

Heu, j'ai du mal m'exprimer car c'est :

1 style par défaut pout tout h1 (avec boule bleue)

mais si h1 suit immédiatement imgstandard4 alors pas de boule bleue.

d'ou l'idée de départ imgstandard4 + h1 = h1' sans boule bleue, qui ne marche pas sous IE.

Je n'ai jamais utilisé !important, je teste ce soir et je reviens.

Merci à tous.
Nicolas.
bobo
Iguane
Messages : 764
Inscription : 18 août 2003, 11:04

Message par bobo »

SX1 a écrit :Heu, j'ai du mal m'exprimer car c'est :
J'avais bien compris ce que tu voulais faire, et ta solution est bonne pour les navigateurs supportants le sélecteur +. Pour IE, malheureusement, tu ne pourras pas t'en sortir sans modifier le HTML (ou alors il y a une technique de sioux que j'ignore). Il te faudra ajouter une classe aux <h1> précédés d'un imgstandard4
Les standards c'est bon, mangez en !
Flore & Sébastien
Unité dans la diversité.
phoenix
Lézard vert
Messages : 154
Inscription : 19 déc. 2003, 19:46

Message par phoenix »

Il me semble que j'ai fait un truc du même genre mais c'etait un id et pas une class ceci dit je ne garanti rien je débarque dans l'utilisation des css
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message par Benoit »

Quelqu'un est en train de s'amuser à écrire une interface de compatibilité IE/CSS2 qu'il suffit d'inclure dans sa feuille de style pour pouvoir bénéficier de ce genre de sélecteurs :

http://dean.edwards.name/IE7/
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 3 invités