Répétition de div et retour chariot

monoski Messages postés 132 Date d'inscription mercredi 15 avril 2009 Statut Membre Dernière intervention 13 mai 2013 - 26 juin 2010 à 11:24
inwebo Messages postés 380 Date d'inscription lundi 12 novembre 2007 Statut Membre Dernière intervention 23 octobre 2014 - 6 juil. 2010 à 10:17
Voila sur mon site j'ai des div de 60 pixels par 60 pixels qui se reproduisent en fonction de la valeur prise par une boucle php de type for() définie par une requête mysql.


Seulement au bout d'une certaine valeur de la requête lorsque les div arrivent à l'extrémité de l'écran, un retour chariot est produit ce qui fait qu'au lieu d'être sur la même ligne elles sont situées sur 2 lignes.

J'aimerai savoir s'il existe un moyen via css ou html ou XML d'éviter ce retour chariot !

Voilà merci, si vous avez besoin d'autres informations je suis disponible !

Bonne journée tout le monde ! Et merci pour votre lecture.

5 réponses

kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
26 juin 2010 à 13:28
Salut,

Il y a trop peu d'infos pour t'aider.
Déjà si les div s'alignent côte à côte il doit exister un css.
Quel est il ?
Quel est le code nécessaire à la compréhension de cet agencement ?
Un lien direct vers la page en question peut être ?

Cordialement,



Kohntark -
0
monoski Messages postés 132 Date d'inscription mercredi 15 avril 2009 Statut Membre Dernière intervention 13 mai 2013 1
26 juin 2010 à 17:24
Voici le code de base vachement épuré mais le principe est là :
$recup = mysql_query("SELECT nom,posx,posy FROM persos WHERE nom='$pseudo'") or die(mysql_error());

    $fetch = mysql_fetch_assoc($recup);
                                                
        $posx = $fetch['posx'];
        $posy = $fetch['posy'];
                                                
        $compteurX = $posx - 4;
        $compteurY = $posy + 4;

        $finX = $posx + 4;
        $finY = $posy - 4;
                                        
        $debutX = $posx - 4;

        while($compteurY >= $finY) {
                echo '
', "\n";
       
                while($compteurX <= $finX) {
                        echo "\t\t\t\t\t\t\t", '
';
                        $test = mysql_query("SELECT nom,skin FROM persos WHERE posx='$compteurX' AND    posy='$compteurY'") or die(mysql_error());
                        if(mysql_num_rows($test) == 1) {
                                $data = mysql_fetch_assoc($test);
                                echo '

';
                        }
                        echo '
', "\n";
                        $compteurX++;
                }
                                
        echo "\t\t\t\t\t\t", '
', "\n";
        $compteurX = $debutX; // <===============ICI
        $compteurY--;
        }

mysql_close();




et le css :

.ligneMap { 
        height: 60px; 
        clear: left;
}
.caseMap { 
        width: 60px; 
        height: 60px; 
        float: left; 
        background-image: url('images/arene_fond.png'); 
        border: 1px solid white;
}


Voilà !
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
27 juin 2010 à 17:18
J'ai peur de ne pas bien comprendre ce que tu veux faire.

Ton retour se fait lorsque la première boucle while($compteurX <= $finX) { se termine (création d'un nouveau div :

)
Etant donné qu'il y a un clear:left dans la classe ligneMap tu "retournes à la ligne"
En supprimant cette propriété css tous tes div devraient être sur la même ligne.

... mais j'ai sans doute loupé quelque chose.

Cordialement,


Kohntark -
0
monoski Messages postés 132 Date d'inscription mercredi 15 avril 2009 Statut Membre Dernière intervention 13 mai 2013 1
27 juin 2010 à 17:28
Oui et ya un retour chariot aussi à l'intérieur de ligneMap lorsque le cumul des div appelées casemap est plus large que l'espace laissé par l'écran. Ya pas de scroll si tu veux.

Si t'as une idée !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
inwebo Messages postés 380 Date d'inscription lundi 12 novembre 2007 Statut Membre Dernière intervention 23 octobre 2014
6 juil. 2010 à 10:17
Bonjour peut être avec la propriété white-space:nowrap; ? la propriété overflow ? ou alors j'ai pas compris.


________________________________________
( $toBe || !$toBe ) = $this->Question();
0
Rejoignez-nous