Forum d'entraide PHPFrance

Venez poser vos questions PHP, MySQL, HTML, CSS, Javascript, Gestion de serveurs à la communauté PHPfrance

Vers le contenu

» Masquer les résultats de la recherche

Recherche dynamique PHPfrance

  1. Effectuez une recherche, les résultats s'afficheront dynamiquement ici.

CSS et LI capricieux

Questions concernant le HTML, HTML5, xHTML et les CSS.

CSS et LI capricieux

Messagepar arthur77 03 Fév 2012, 20:32

Bonjour,

voila, aujourd'hui est un jour terrible car j'ai honte de poser cette question :oops: Eh oui les malheureux <li> d'une liste se décalent à chaque fois sur leur droite, malrés toutes mes tentatives de CSS !

Une capture d'écran :

Image

Le CSS qui intervient dans cette zone :

#menu, #menu ul /* Liste */     
 {         position: relative;
          float: right;
          padding : 0;
          margin : 0;
        text-align: right;
          list-style : none;
          line-height : 21px;
          text-align : center;
 }
 

 #menu /* Ensemble du menu */
 {
         font-weight : bold;
         font-family : Arial;
         font-size : 12px;
 }

 #menu a /* Contenu des listes */
 {
         padding : 0;
         background : #fff;         
         color : #000;
         text-decoration : none;
         width : 144px;
 }

 #menu li /* Elements des listes */     
 {
         float : left;
         /* pour IE qui ne reconnaît pas "transparent" */
         border-right : 1px solid #fff;
 }

 /* IE ne reconnaissant pas le sélecteur ">" */
 html>body #menu li
 {
         border-right: 1px solid transparent ;
 }

 #menu li ul /* Sous-listes */
 {
         position: absolute;
         width: 144px;
         left: -999em;
 }


 #menu li ul li /* Éléments de sous-listes */
 {
         /* pour IE qui ne reconnaît pas "transparent" (comme précédemment) */
         border-top : 1px solid #fff;
 }

 /* IE ne reconnaissant pas le sélecteur ">" */
 html>body #menu li ul li               
 {
         border-top : 1px solid transparent;
 }

 #menu li ul ul
 {
         margin    : -22px 0 0 144px ; 
         /* pour IE qui ne reconnaît pas "transparent" (comme précédemment) */
         border-left     : 1px solid #fff ; 
 }

 /* IE ne reconnaissant pas le sélecteur ">" */
 html>body #menu li ul ul               
 {
         border-left     : 1px solid transparent ;
 }

 #menu a:hover /* Lorsque la souris passe sur un des liens */   
 {
         color: #194898;
         background: #fff;
 }

 #menu li:hover ul ul, #menu li.sfhover ul ul /* Sous-sous-listes lorsque la souris passe sur un élément de liste */
 {
         left: -999em;
 }

 #menu li:hover ul, #menu li li:hover ul, #menu li.sfhover ul, #menu li li.sfhover ul  /* Sous-listes lorsque la souris passe sur un élément de liste ET sous-sous-lites lorsque la souris passe sur un élément de sous-liste */
 {
         left: auto;
         min-height: 0;
 }


Et le HTML de cette liste :

Syntaxe: [ Télécharger ] [ Masquer ]
Code html
<ul id="menu" >
       
                        <li>a</li>
                        <li>b</li>
                        <li>c</li>
                        <li>
                        d
                        <ul>   
                                <?php
                                //recuperation des notifs de l'user
                                $sql = 'SELECT * FROM notifications WHERE id_user='.$_SESSION['id'].' ORDER BY timestamp DESC LIMIT 0, 10';
                                $reqf = $connexion->
query($sql);
                                $reqf->setFetchMode(PDO::FETCH_OBJ);
                                        while ($dataf = $reqf->fetch())
                                                {
                                                echo '<li><a href="'.$dataf->lien.'" >'.$dataf->texte.'</a></li><br />';
                                                }
                                ?>
                        </ul>
                        </li>


Je m'en remet à vos âmes charitables, merci ! :)
arthur77
J'ai codé une fonction !
 
Messages: 183
Inscription: 17 Aoû 2011, 23:06

Publicité

Re: CSS et LI capricieux

Messagepar momox 04 Fév 2012, 12:14

Pas besoin d'un
après un <li>
momox
Mammouth
 
Messages: 1396
Inscription: 15 Oct 2005, 10:19
Localisation: Créteil (94)

Re: CSS et LI capricieux

Messagepar arthur77 05 Fév 2012, 01:19

Désolé ton message n'est pas bien passé je ne vois pas ce dont il n'y a pas besoin justement :cry:
arthur77
J'ai codé une fonction !
 
Messages: 183
Inscription: 17 Aoû 2011, 23:06

Re: CSS et LI capricieux

Messagepar momox 05 Fév 2012, 01:39

Syntaxe: [ Télécharger ] [ Masquer ]
Code html
<br />

J'ai oublié de mettre les balises...
Tu as mis un saut de ligne après ton li dans ta boucle.
momox
Mammouth
 
Messages: 1396
Inscription: 15 Oct 2005, 10:19
Localisation: Créteil (94)

Re: CSS et LI capricieux

Messagepar arthur77 05 Fév 2012, 20:10

Maintenant tous les liens sont collés sur une seule ligne ...
arthur77
J'ai codé une fonction !
 
Messages: 183
Inscription: 17 Aoû 2011, 23:06

Re: CSS et LI capricieux

Messagepar momox 06 Fév 2012, 02:31

Parces que tu appliques un float à tous les li contenus dans ton ul#menu
Soit tu utilises le selecteur d'ascendant direct ">", soit tu définis une classe pour les elements de ton menu, que les li de tes notifications n'auront pas.
momox
Mammouth
 
Messages: 1396
Inscription: 15 Oct 2005, 10:19
Localisation: Créteil (94)

Re: CSS et LI capricieux

Messagepar arthur77 06 Fév 2012, 12:39

Je suis désolé mais je ne m'y connais presque pas en CSS (d'habitude c'est mon designer qui s'en occupe) et je ne vois pas trop comment faire :oops: ...
arthur77
J'ai codé une fonction !
 
Messages: 183
Inscription: 17 Aoû 2011, 23:06

Re: CSS et LI capricieux

Messagepar momox 06 Fév 2012, 13:03

Lis le tutoriel css du site du zéro, ca va t'aider.
momox
Mammouth
 
Messages: 1396
Inscription: 15 Oct 2005, 10:19
Localisation: Créteil (94)

Re: CSS et LI capricieux

Messagepar arthur77 06 Fév 2012, 15:35

Une classe comme tu as dit et un "clear: both;" dessus et le tour est joué, merci :wink:
arthur77
J'ai codé une fonction !
 
Messages: 183
Inscription: 17 Aoû 2011, 23:06


Retourner vers HTML, Html5, CSS

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité

  • Publicité