AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  Connexion  

Partagez | 
 

 [PHP]Faire un div avec numéro de ligne aligné à droite

Aller en bas 
AuteurMessage
Térence
Utilisateur confirmé: Rang *****
avatar

Messages : 2213
Localisation : Oui

MessageSujet: [PHP]Faire un div avec numéro de ligne aligné à droite   Dim 2 Sep 2012 - 15:04

Bonjour à tous,

Voilà je créer un site et j'ai besoin d'y insérer du code (que l'utilisateur puisse voir) ; j'ai donc fait un div spécial (un fieldset en fait) et j'ai mis des numéros devant chaque ligne :

Spoiler:
 

Mon problème est que les numéros de ligne sont alignés à gauche et que comme chaque numéro est dans un span différent (balise inline donc pas moyen de faire du float ou du text-align) je ne peux pas l'aligner à droite...
J'ai donc essayé de rajouter des 0 devant les numéros de ligne qui n'ont qu'un caractère (01 à la place de 1) mais même ainsi, le texte n'est pas correctement aligné...

Voici mon code (il y a du php objet) :

objet Code :

Code:

public function get_code()
      {
         //colorisation
         
         $tab_code=explode("\n",$this->_code);   // remplacer \n par <br/> si pb avec input text
         $this->_code="";
         for ($i=0;$i<count($tab_code);$i+=1)
            {
            $i_formate=$i+1;
            while (strlen(($i_formate))<strlen(count($tab_code)))
               {
               $i_formate="0".$i_formate;
               }
            $this->_code.="<span class='num_ligne'>".($i_formate)."</span>".addslashes(htmlspecialchars($tab_code[$i]))."<br/>";
            }
         
         return "<fieldset class='code'><legend><span class='lime'>Code</span> : ".$this->_language."</legend>".$this->_code."</fieldset>";
      }


page (non objet):

Code:


require "Code.class.php";
               
               $regex=new Code("Regex","gehfd\nuidufdosfus\nidjfds\nofd\njdf\njjdf'<strong>hello\n</strong>\njj\nk\n\nk");
               $regex=$regex->get_code();
               ?>
               Votre Regex : <?php echo $regex ?>


Le problème réside dans le fait que je fais un span par numéro de ligne ; si je pouvais faire un seul div avec tous les numéros de ligne, je pourrais les aligner.
Je ne peux pas faire un div qui commence avant la boucle for et finit juste après puisque le code serait alors inclus dans le div et la couleur du texte serait changée.

Merci d'avance pour votre aide.

PS : je ne suis pas sûr d'avoir été très clair ; alors si vous ne comprenez pas mon problème, n'hésitez pas à me le signaler et je reformulerai autrement.
Revenir en haut Aller en bas
DarkYoshi
Utilisateur confirmé: Rang **
avatar

Messages : 323
Localisation : Dans un caniveau
Projet Actuel : pou pou pou dipou pwet <3

MessageSujet: Re: [PHP]Faire un div avec numéro de ligne aligné à droite   Dim 2 Sep 2012 - 15:48

A mon avis le plus simple serait de faire un bloc pour afficher les lignes (grace a une fonction) et un second bloc avec un second div pour afficher le code, du coup avec deux boites a part tu peux les positionner comme tu prefere.

_________________
Arretez de donnez des noms de tarlouzes aux ouragans comme Sandy.... Donnez leur un vrai nom comme F*CKING DEATH HURRICANE MEGATRON 3000 !!!!!! Et LA, fuiront vraiment
Revenir en haut Aller en bas
http://anthony-nougarede.com/
Térence
Utilisateur confirmé: Rang *****
avatar

Messages : 2213
Localisation : Oui

MessageSujet: Re: [PHP]Faire un div avec numéro de ligne aligné à droite   Dim 2 Sep 2012 - 15:59

Ouais je pense que je vais faire comme ca, merci ; au pire si ca marche pas j'ai trouvé une font ou tous les caractères de la même taille donc c'est aligné quand je rajoute des 0.

En tous cas merci !
Revenir en haut Aller en bas
DarkYoshi
Utilisateur confirmé: Rang **
avatar

Messages : 323
Localisation : Dans un caniveau
Projet Actuel : pou pou pou dipou pwet <3

MessageSujet: Re: [PHP]Faire un div avec numéro de ligne aligné à droite   Dim 2 Sep 2012 - 16:03

Pendant que je galérais a ouvrir mon panaché j'ai pensé que ce serait surement plus simple d'adapter ton code pour faire un tableau, de X lignes et 2 colonnes, colonne des chiffres où tu as besoin de la mettre et pas très large, l'autre qui prend 95% de la largeur. Et une proprieté toute bete pour effacer les lignes :p

_________________
Arretez de donnez des noms de tarlouzes aux ouragans comme Sandy.... Donnez leur un vrai nom comme F*CKING DEATH HURRICANE MEGATRON 3000 !!!!!! Et LA, fuiront vraiment
Revenir en haut Aller en bas
http://anthony-nougarede.com/
Térence
Utilisateur confirmé: Rang *****
avatar

Messages : 2213
Localisation : Oui

MessageSujet: Re: [PHP]Faire un div avec numéro de ligne aligné à droite   Dim 2 Sep 2012 - 16:07

snif ****** je vais me flinguer je galère pendant des heures et lui il me trouve la solution en 5 minutes....
Merci j'y aurai jamais pensé ; alors que j'utilise des tableaux sur toutes mes pages...
Revenir en haut Aller en bas
Invité
Invité



MessageSujet: Re: [PHP]Faire un div avec numéro de ligne aligné à droite   Dim 2 Sep 2012 - 16:11

J'ai pas bien compris pourquoi tu ne pouvais pas appliquer ce que tu veux à <span>.

<span style="text-align: right;">
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
avatar

Messages : 2213
Localisation : Oui

MessageSujet: Re: [PHP]Faire un div avec numéro de ligne aligné à droite   Dim 2 Sep 2012 - 16:29

span est une balise inline ; donc on peut pas utiliser text-align sinon ca rendrait n'importe quoi (imagine un lien aligné a droite ; il chevaucherait le reste du texte...)
Revenir en haut Aller en bas
Oculus
Utilisateur confirmé: Rang *****


Messages : 1688

MessageSujet: Re: [PHP]Faire un div avec numéro de ligne aligné à droite   Dim 2 Sep 2012 - 16:30

En faite tu veux faire une balise code avec les numéros des lignes à coté :
Code:
<?php
$_texte = "<h1>Test</h1> \\n <p>Coucou </p> <br />";
$_texte = explode('\n', $_texte);

echo '<ol>';

foreach($_texte as $_ligne)
    echo '<li>'.htmlentities($_ligne).'</li>';

echo '</ol>';

?>
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
avatar

Messages : 2213
Localisation : Oui

MessageSujet: Re: [PHP]Faire un div avec numéro de ligne aligné à droite   Dim 2 Sep 2012 - 16:33

je suis pas sur qu'on puisse aligner à droite juste les numéros ; a mon avis il va aligner le contenu du la balise il
Revenir en haut Aller en bas
Oculus
Utilisateur confirmé: Rang *****


Messages : 1688

MessageSujet: Re: [PHP]Faire un div avec numéro de ligne aligné à droite   Dim 2 Sep 2012 - 16:35

Quoi ?
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
avatar

Messages : 2213
Localisation : Oui

MessageSujet: Re: [PHP]Faire un div avec numéro de ligne aligné à droite   Dim 2 Sep 2012 - 17:06

Je pense que la balise li est une balise de type block (mais je suis pas sur)
Revenir en haut Aller en bas
Oculus
Utilisateur confirmé: Rang *****


Messages : 1688

MessageSujet: Re: [PHP]Faire un div avec numéro de ligne aligné à droite   Dim 2 Sep 2012 - 17:19

Oui et donc quel est le problème ? As tu testé le code ?
Revenir en haut Aller en bas
Térence
Utilisateur confirmé: Rang *****
avatar

Messages : 2213
Localisation : Oui

MessageSujet: Re: [PHP]Faire un div avec numéro de ligne aligné à droite   Dim 2 Sep 2012 - 18:42

Non je peux pas je suis sur tablette ; je testerais demain mais le problème avec ul c'est que le numéro est aligné a gauche et que je vois pas comment l'aligner à droite sans pour autant aligner le reste de la ligne à droite...
Revenir en haut Aller en bas
Contenu sponsorisé




MessageSujet: Re: [PHP]Faire un div avec numéro de ligne aligné à droite   

Revenir en haut Aller en bas
 
[PHP]Faire un div avec numéro de ligne aligné à droite
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Qui veut faire du sport avec moi??
» Comment faire une Signature avec photo
» Faire des personnages avec son clavier.
» faire une phrase avec le dernier mot
» spécial fannissa : quoi faire avec des frites

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Programmation-
Sauter vers: