[CSS] Largeur de tableaux dans un div

Largeur de tableaux dans un div [CSS] - HTML/CSS - Programmation

Marsh Posté le 22-01-2003 à 12:55:29    

Bonjour,
 
Comment faire pour q'un tableau se comporte comme un div au niveau de sa largeur ? Si j'ai bien compris, un div sans largeur spécifiée prend toute la place disponible, et ceci qq soit le navigateur apparemment. Par contre, un tableau sans largeur spécifiée ne prend que la largeur dont il a besoin.
 
Pour ma part, j'aimerais bien que ce tableau (qui est un vrai tableau, pas un élément de mise en page) prenne toute la place disponible.
 
Pour illutrer tout ça, un exemple. Le code :
 

Code :
  1. <div id="contenu">
  2. <table border="1" style="width:100%;">
  3.    <tr>
  4.     <td>contenu du tableau</td>
  5.    </tr>
  6.   </table>
  7. </div>


 
avec le style du div défini comme ça :
 

Code :
  1. #contenu {
  2. margin: 0px 20px 0px 150px;
  3. padding: 0px 0px 2px 0px;
  4. background: #F0F0DF;
  5. }


 
Résultat sous IE 6.0 : le tableau déborde à droite, et sa largeur est déinfie par rapport à la largeur de la fenêtre, et non du div conteneur :(
Résultat sous Moz : Ce que je veux, le tableau se déploie juste sur la largeur du div
 
Si je définit à 100% la largeur de mon div conteneur, le phénomène s'inverse.
 
Y aurait-il par hasard une solution "propre" à ce problème (propre = sans test du navigateur, et sans toucher au propriété de mon div) ?

Reply

Marsh Posté le 22-01-2003 à 12:55:29   

Reply

Marsh Posté le 22-01-2003 à 21:51:58    

Le problème s'est que IE gère asser mal les largeurs de div. Il vaut mieux lui mettre width: 100%, sinon tu ne vas pas y arriver.
 
Par contre, tu pourrais peut-être te passer de ton div et appliquer les styles du div directement sur le tableau.

Reply

Marsh Posté le 22-01-2003 à 22:19:42    

Hélas, je ne peux pas me passer de mon div, car il fait partie de ma mise en page, et est lui-même contenu dans un autre div...  
J'ai bien essayé de mettre le width du div à 100%, mais ca fout la mise en page en l'air avec les autres navigateurs, car tout ça est encore contenu dans un autre div :(
 
Merci quand même de ta réponse :)

Reply

Marsh Posté le 26-01-2003 à 14:41:18    

Il faut que IE 6 se mette en mode Standard. Définis un DOCTYPE HTML 4.01 Strict ou XHMTL 1.0 Strict (voir XHTML 1.1) au début de ton document. Ainsi IE 6 se comportera comme Mozilla.
 


---------------
Incongru : une FAQ abandonnée sur les Standards du Web - FAQ périmée de blabla@Prog
Reply

Sujets relatifs:

Leave a Replay

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