28172 sujets

CSS et mise en forme, CSS3

Bonjour à tous,

Je dispose d'un CMS que je souhaite personnaliser uniquement en CSS. Certains éléments sont affichés et je souhaite donc les masquer sous avoir à toucher au code. Pour les div, c'est facile, mais je souhaite également masquer des éléments se trouvant entre balises <li>.
Le site de base ressemble à ceci http://www.lyc-plaineneauphle-trappes.ac-versailles.fr/ sur lequel je veux pouvoir masquer les éléments "fixes" de la barre d'outils horizontale (Contenu, Sommaire, Recherche).

J'ai utilisé le code suivant qui fonctionne très bien, sauf qu'il masque tous les deuxième et troisième éléments <li>, fils de balise <ul>. Il va donc me masquer ce que je souhaite (lien "Contenu" et "Sommaire" en haut, mais également tous les autres éléments de la page qui répondent à ces critères (liste des articles récents, éléments de menu...), donc ce que je ne souhaite pas.

Le code est le suivant :

ul  > li:first-child +li{display:none;} /* Masque Contenu*/
ul  > li:first-child +li+li{display:none;} /* Masque Sommaire*/


Comment le modifier pour que cela ne s'applique que dans la div #menuhorizontal ?
J'ai testé ceci sans succès :

#menuhorizontal  ul  > li:first-child +li{display:none;} /* Masque Contenu*/


Merci beaucoup à ceux qui pourront me donner un coup de main.
Bonjour,

Il vous faut revoir l'héritage en CSS :

#menuhorizontal  ul  > li:first-child +li{display:none;} 
Ce code ciblera la liste UL se trouvant dans un parrent ayant l'id #menuhorizontal

ul#menuhorizontal  > li:first-child +li{display:none;} 
Ce code par contre ciblera la liste ul donc l'id est #menuhorizontal

Par contre ce code ne fonctionne pas sur IE6 (et peut-être pas IE7 non plus).


Quelle est la raison qui fait qu'il n'est pas possible de modifier le code HTML ?
a écrit :
ul#menuhorizontal  > li:first-child +li{display:none;} 
Ce code par contre ciblera la liste ul donc l'id est #menuhorizontal

Par contre ce code ne fonctionne pas sur IE6 (et peut-être pas IE7 non plus).


Merci ! Cela fonctionne parfaitement sous FF 3.5, IE 8 et Chrome 2.

a écrit :
Quelle est la raison qui fait qu'il n'est pas possible de modifier le code HTML ?


C'est un CMS proposé à des établissements scolaires, il ne doit pas être nécessaire de modifier le code HTML à chaque mise à jour de SPIP ou du squelette, d'autant plus que les compétences des webmestres sont très inégales dans les centaines d'établissements de l'académie.
Modifié par juliendelmas (17 Aug 2009 - 17:13)