Question de base sur les tableaux HTML

Question de base sur les tableaux HTML - HTML/CSS - Programmation

Marsh Posté le 28-04-2006 à 13:42:35    

Bonjour,
 
C'est tout con mais pourquoi le tableau créé par le code suivant toutes les lignes on la même hauteur plutot que de d'adapter la heuteur à chaque lignes selons le nombre de caractères contenus

Code :
  1. <table id="zoneTxt" cellspacing="0" cellpadding="0" border="2" style="border-style:solid;width:200px" height="1">
  2. <tr>
  3.  <td valign="baseline" height="1"><span>&nbsp;-&nbsp;</span></td>
  4.  <td height="1" valign="baseline"><span>le Point1 on fait ca puis</span></td>
  5. </tr><tr>
  6.  <td valign="baseline" height="1"><span>&nbsp;-&nbsp;</span></td>
  7.  <td height="1" valign="baseline"><span>Point2 du bla bla et encore du blabla</span></td>
  8. </tr><tr>
  9.  <td valign="baseline" height="1"><span>&nbsp;-&nbsp;</span></td>
  10.  <td height="1" valign="baseline"><span>Point3 on s en fout!!!!</span></td>
  11. </tr>
  12. </table>


 
D'avance merci
 
Ben

Reply

Marsh Posté le 28-04-2006 à 13:42:35   

Reply

Marsh Posté le 28-04-2006 à 14:08:10    

the big ben a écrit :

pourquoi le tableau créé par le code suivant toutes les lignes on la même hauteur plutot que de d'adapter la heuteur à chaque lignes selons le nombre de caractères contenus


the big ben a écrit :

Code :
  1. <table>
  2.         <tr>
  3.         <td valign="baseline" height="1">...</td>
  4.                 <td height="1" valign="baseline">...</td>
  5. </tr><tr>
  6.         <td valign="baseline" height="1">...</td>
  7.                 <td height="1" valign="baseline">...</td>
  8. </tr><tr>
  9.         <td valign="baseline" height="1">...</td>
  10.                 <td height="1" valign="baseline">...</td>
  11. </tr>
  12. </table>



height ça sert a quoi à ton avis ( ou ça veut dire quoi en anglais?)?:o
 
Par ailleurs c'est "un peu caca" d'utiliser un tableau pour ça, tu devrais faire:

Code :
  1. <ul>
  2. <li>1</li>
  3. <li>2</li>
  4. <li>3</li>
  5. </ul>


Et le styler par css
 
edit: :whistle:


Message édité par anapajari le 28-04-2006 à 14:47:24
Reply

Marsh Posté le 28-04-2006 à 14:19:16    

et tu crois que si j'ai mis height=1 c'est pour qu'il ai une taille de 40px???
 
Par ailleur si tu m'explique comment faire des balise ul et li dans un WebControl en ASP .NET mais sans avoir accès au code ASP (donc juste au .Net) je les ferai avec plaisir mais j'ai cherché et pas trouvé!

Reply

Marsh Posté le 28-04-2006 à 14:20:16    

Bonjour,
 
L'attribut Height de la balise TD existe. il n'y a pas de problème.
Mais je crois que la hauteur est en pixels par défaut, et qu'il s'agit d'une hauteur minimum, mais pas d'une hauteur maximum.
 
EDIT : Après relecture de la question, je crois comprendre que le problème serait que la ligne contenant le tiret est aussi haute que la ligne contenant un texte normal. Mais, c'est un comportement normal, car en réalité la  hauteur d'un caractère n'est pas celle uniquement celle de ses pixels noirs, elle inclut aussi l'espace au dessus et en dessous.
Il est possible de faire une barre colorée d'une hauteur inférieure à celle d'un caractère, en ne mettant qu'un espace ordinaire dedans, car l'espace à une hauteur inférieure (je ne sais plus si c'est 0 ou 1) à celle des autres caractères.
Cela dit, si c'est pour faire des cadres, il existe de meilleures moyens que d'employer un TD, comme par exemple utiliser border et tous ses styles associés.

Message cité 1 fois
Message édité par olivthill le 28-04-2006 à 14:39:20
Reply

Marsh Posté le 28-04-2006 à 14:27:09    

Oui en effect je pense aussi que la hauteur est en px mais de toutes facons si j'ajoute des px partout dans mon code ca ne change rien il étend de toutes facons ce qui serait normal si le texte de la ligne en question dépassait la taille mais pourquoi si une de mes lignes dépasse la taille du soup toutes les lignes deviennent plus "haute"???
 
Ceci dit l'utilisation des css ne me dérange mais bon dans ce cas précis ce n'est pas la solution la plus simple a mettre en oeuvre!

Reply

Marsh Posté le 28-04-2006 à 14:31:12    

olivthill a écrit :

L'attribut Height de la balise TD existe. il n'y a pas de problème.
Mais je crois que la hauteur est en pixels par défaut, et qu'il s'agit d'une hauteur minimum, mais pas d'une hauteur maximum.


Jamais dit que ça existait [edit]pas[/edit], je sous-entendais juste que ça reglais la taille du td.
From http://www.w3.org/TR/html4/struct/tables.html#h-11.2.6

Citation :

height = length [CN]
    Deprecated. This attribute supplies user agents with a recommended cell height.


 

olivthill a écrit :

(Ne fais pas attention à quelques commentaires négatifs à propos de l'emploi des tableaux dans des pages HTML, ce forum compte quelques talibans parmi ses membres.)


Ce n'est pas un commentaire négatif, c'est juste que si tu regardes le rendu du html qu'il donne tu as:


 - le Point1 on fait ca puis
 - Point2 du bla bla et encore du blabla
 - Point3 on s en fout!!!!


Hors il existe des balises pour faire exactement ça, alors pourquoi s'en priver??? ( et je me sens pas taliban en le disant hein ...)


Message édité par anapajari le 28-04-2006 à 14:32:06
Reply

Marsh Posté le 28-04-2006 à 14:55:25    

Citation :

C'est tout con mais pourquoi le tableau créé par le code suivant toutes les lignes on la même hauteur


 
Tout simplement car la hauteur du contenu de toutes ces lignes est la même (la hauteur d'un caractère).
 
Ce n'est pas parceque le caractère '-' semble plus "fin" que sa hauteur est inférieure à au caractère 'P'

Reply

Marsh Posté le 28-04-2006 à 15:34:04    

Bon un petit exemple vaut mieux qu'un long discours donc voici ce que ca donne actuellement:
http://www.pharmacommerce.be/Brol/tabPoBo1.JPG
Et j'aimerais que les 2 ligne (en rouge) soit relevées comme indiqué ici:
http://www.pharmacommerce.be/Brol/tabPoBo2.JPG
Donc au final :
http://www.pharmacommerce.be/Brol/tabPoBo3.JPG

Reply

Marsh Posté le 28-04-2006 à 16:26:12    

si tu vires l'attribut height de tes td et de ton tableau il se passe quoi?
 
note: tu peux aussi virer les span qui servent pas a grand chose!

Reply

Marsh Posté le 29-04-2006 à 17:36:00    

ca ne change rien si je vire le height...  
Les span sont générés automatiquement via mes objets ASP mais de toutes facons en les virants aussi ca ne change rien non plus!

Reply

Marsh Posté le 29-04-2006 à 17:36:00   

Reply

Marsh Posté le 30-04-2006 à 15:40:48    

??
Le code tel que tu l'as donné ci-dessus donne exactement le résultat que tu souhaites (autant sur FF1.5 que IE 6 que Opéra7.54)...
Peut-être devrais-tu donner l'url de ta page pour voir ce qui pourrait en perturber l'affichage ?

Reply

Marsh Posté le 30-04-2006 à 15:49:58    

<ul>
<li></li>
<li></li>
<li></li>
</ul>

Reply

Marsh Posté le 02-05-2006 à 11:49:37    

Bha si tu veux je l'ai foutu ici:
http://www.pharmacommerce.be/Brol/tab.htm
Et effectivement ca passe sur firefox mais par sur IE
 
Mais par contre arretez de me dire des ul et il ou alors dites moi avec quel composant ASP (Systel.Web.Ui.Webcontrols) on peut les générer!

Message cité 1 fois
Message édité par the big ben le 02-05-2006 à 11:50:55
Reply

Marsh Posté le 02-05-2006 à 14:55:21    

oui c'est bien ce que j'ai dit au dessus ca n'empeche que je ne peut pas laisser tomber les utilisateurs d'IE surtout que c'est pour un site consulté par au moins 98% d'utilisateurs IE (chez nos clients)

Reply

Marsh Posté le 02-05-2006 à 14:56:35    

the big ben a écrit :

Bha si tu veux je l'ai foutu ici:
http://www.pharmacommerce.be/Brol/tab.htm
Et effectivement ca passe sur firefox mais par sur IE


 
Chez moi ça passait très bien sous IE parce que je n'étais pas en caractères taille moyenne mais petite.
Le problème est du à la largeur des colonnes et à ton &nbsp; situé après ton tiret qui passe à la ligne du dessous, mettant chaque ligne du tableau sur 2 lignes. Pour l'éviter tu peux mettre un nowrap dans les cellules de tiret, par exemple.
 
Autrement je ne maîtrise pas l'asp mais ça doit pas être bien plus difficile de générer des li que des table ?

Reply

Marsh Posté le 02-05-2006 à 15:56:46    

arf oui c'est juste ca je suis vraiment con un grand merci
 
Non c'est surement assez simple c'est juste que je ne connais pas le control qui le fait c'est tout!

Reply

Marsh Posté le 02-05-2006 à 15:59:31    

Enfait il y a forcément moyen de redefinir le template qui génère ce caca :/

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed