Pb de taille de cellules avec rowspan :'(

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Pb de taille de cellules avec rowspan :'(

par Pidj24 » 09 nov. 2005, 00:54

bon ben charabia et cyrano merci pour votre aide, tout fonctionne comme il le faut ;)

Ciao et Merci !
Pierre

par Pidj24 » 07 nov. 2005, 22:34

C'est pécisément ce que j'ai dit, ça ne change pas grand chose au niveau du navigateur.
Quand je disais "En tout cas au niveau technique apparament ça ne change pas grand chose..." c'était dans le sens "j'ai cru comprendre d'après ce que tu viens de dire que ....." :)
Rassure-toi, je t'ai lu jusqu'au bout :p

Donc le fait de mettre la balise, c'est plus par convention quoi si je comprend bien c'est ça ? *-)

Merci !
Ciao
Pierre

par Cyrano » 07 nov. 2005, 22:14

C'est pécisément ce que j'ai dit, ça ne change pas grand chose au niveau du navigateur.

Alors je dois préciser, à la lecture de ta réponse, un détail important.
Un code peut être (conforme et invalide) ou (conforme et valide), mais s'il est non conforme, il sera de toutes façon invalide.

Ce qui détermine la conformité, c'est le respect de la syntaxe du langage. Ce qui détermine sa validité, c'est son rattachement explicite à une DTD via la balise DOCTYPE.

Ceci dit, ce n'est pas très difficile de rendre un code valide et d'obtenir l'affichage souhaité. Il faut de l'obstination et se documenter un minimum.

par Pidj24 » 07 nov. 2005, 22:07

hmm, ah ok... :)

Et euh, y a-t-il un avantage à ce que notre page soit conforme aux normes W3C ? *-) enfin on fait quelque chose de pas bien si on ne met pas de balise ? En tout cas au niveau technique apparament ça ne change pas grand chose...

Merci !
++
Pierre

par Cyrano » 07 nov. 2005, 21:40

Si tu ne mets rien, ton code sera peut-être conforme, mais il ne sera pas (et ne pourra pas être) valide selon les standards du W3C tout simplement.

Au niveau des navigateurs, ça ne changera pas grand chose.

Il est quand même préférable d'avoir une balise DOCTYPE qui n'est pas, je le signale au passage, une balise HTML mais une balise SGML et en XHTML la seule qu'on écrive en majuscule et qu'on ne ferme pas.
Cette balise pointe sur une DTD (Document Type Definition), document qui détermine la structure et les éléments valides dans la version du langage utilisé.

par Pidj24 » 07 nov. 2005, 20:00

rhalalala c dingue cqu'une ligne de code à laquelle on accorde peu d'importance peut tout changer :p

Au fait, j'ai une autre question:

Qu'est-ce qu'il vaut mieux entre mettre
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
ou bien rien ?

Que se passe-t-il en fait quand on ne met rien ? Il met quoi par défaut ?

Merci en tout cas !
Ciao
Pierre

par charabia » 31 oct. 2005, 22:25

C'est ton doctype qui te cause ce soucis. Remplaces le par celui ci :

Code : Tout sélectionner

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
Et ça marchera ;)

par Pidj24 » 31 oct. 2005, 19:37

hmm, voilà un code:

Code : Tout sélectionner

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Test</title> <style> #tabcent { height: 100%; width: 100%; } </style> </head> <body> <table width="100%" border="1"> <tr><td height="400">h=400</td> <td> <table id="tabcent" border="1"> <tr><td height="15">up</td></tr> <tr><td>middle<br>(partie extensible... :s)</td></tr> <tr><td height="15">down</td></tr> </table> </td></tr></table> </body> </html>
et cela donné ça chez moi:
Image

:S

Ciao
Pierre

(PS: Je pars en vacances jusqu'à vendredi, donc c'est normal si je ne donne pas de nouvelles jusque là...)

par charabia » 31 oct. 2005, 17:45

Mmmmhhh c'est louche moi aussi c'est sur IE6 et là je viens de retester....ça fonctionne.

Copies le code entier de ta page ici que je teste.

par Pidj24 » 31 oct. 2005, 17:43

euuuh, non c'est avec IE6...

Avec le code que je t'ai donné tel quel sur le message précédent... :S

par charabia » 31 oct. 2005, 12:35

Tu es sur quel navigateur ? Je viens de tester sur IE ça marche très bien, le tableau tabcent prend bien le 100% en hauteur. Je n'ai pas testé sur firefox... :roll:

par Pidj24 » 31 oct. 2005, 11:42

hmm

Code : Tout sélectionner

<head> <style> #tabcent { height: 100%; width: 100%; } </style> </head> <body> <table width="100%" border="1"> <tr><td height="400">h=400</td> <td> <table id="tabcent" border="1"> <tr><td height="15">up</td></tr> <tr><td>middle<br>(partie extensible... :s)</td></tr> <tr><td height="15">down</td></tr> </table> </td></tr></table> </body>
fonctionne pas chez moi :S

Enfin c-à-d que le tableau tabcent se centre au milieu de sa cellule, mais il s'étend pas verticalement... *-)


Merci
Bye
Pierre

par charabia » 31 oct. 2005, 01:22

Utilises la CSS :

Code : Tout sélectionner

<style> #tabcent { height: 100%; width: 100%; } </style>
Et tu appelles ton tableau

Code : Tout sélectionner

<table id="tabcent">
ça fonctionnera pour ton design compliqué ;)

par Pidj24 » 30 oct. 2005, 15:03

height="100%" existe même en parent ? ^o) mais alors avec html et body {height:100%;} paske <table height="100%"> ça fonctionne pas :p

Bon tu m'a demandé un exemple, jvais essayer de l'expliquer par 3 exemples...

Exemple 1: les menus et le contenu ont plus ou mois la même taille:
ça c'est la structure mais ça foire déjà au niveau des tailles.

Code : Tout sélectionner

<font size="1"> <table width="100%" border="1" style="font-size: 10px;"> <tr> <td width="171" height="1" rowspan="2" colspan="2">Partie des menus<br>(je met height=1 car la<br>partie en dessous<br>doit s'étendre)<br><br> rowspan=2</td> <td width="16" height="17">coin 1</td> <td height="17">----- dessus du cadre du contenu. extensible à l'horiz. ----- height=17</td> <td width="16" height="17">coin 2</td> </tr> <tr> <!-- la première partie est déjà contenue dans le <td rowspan="2"> --> <td width="16" rowspan="2">g<br>a<br>u<br>c<br>h<br>e</td> <td rowspan="2">Texte du contenu de la page...<br>Doit s'étendre horizontalement,<br>et verticalement aussi en fonction de la hauteur des menus.</td> <td width="16" rowspan="2">d<br>r<br>o<br>i<br>t<br>e</td> </tr> <tr> <td width="170" rowspan="2">Partie qui doit s'étendre<br>horizontalement en fonction<br>de la hauteur du texte<br>de contenu de la page.</td> <td width="1" rowspan="2">|<br>e<br>x<br>t<br>e<br>n<br>s<br>.<br>|</td> <!-- la partie contenu est déjà précisée avec <td rowspan="2"> --> </tr> <tr> <!-- la partie en dessous des menus est déjà précisée avec <td rowspan="2"> --> <td width="16" height="17">coin 3</td> <td height="17">----- Dessous du cadre du contenu de la page. Extensible horiz. ----- height=17</td> <td width="16" height="17">coin 4</td> </tr> </table><br> Chaque coin est censé faire 16 en width, et 17 en height.<br> Les bords de gauche et de droite du cadre du contenu sont censés faire 16 en width et être extensibles verticalement.<br> Les bords du haut et du bas du cadre du contenu sont censés faire 17 en height.<br><br> Le "cadre du contenu" est le cadre qui contient les "coins 1,2,3,4", pas le tableau général... </font>

Bon maintenant un exemple où les menus sont plus longs que le texte du contenu:

Code : Tout sélectionner

<font size="1"> <table width="100%" border="1" style="font-size: 10px;"> <tr> <td width="171" height="1" rowspan="2" colspan="2">Partie des menus<br>(je met height=1 car la<br>partie en dessous<br>doit s'étendre)<br><br> rowspan=2<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br></td> <td width="16" height="17">coin 1</td> <td height="17">----- dessus du cadre du contenu. extensible à l'horiz. ----- height=17</td> <td width="16" height="17">coin 2</td> </tr> <tr> <!-- la première partie est déjà contenue dans le <td rowspan="2"> --> <td width="16" rowspan="2">g<br>a<br>u<br>c<br>h<br>e</td> <td rowspan="2">Texte du contenu de la page...<br>Doit s'étendre horizontalement,<br>et verticalement aussi en fonction de la hauteur des menus.</td> <td width="16" rowspan="2">d<br>r<br>o<br>i<br>t<br>e</td> </tr> <tr> <td width="170" rowspan="2">Partie qui doit s'étendre<br>horizontalement en fonction<br>de la hauteur du texte<br>de contenu de la page.</td> <td width="1" rowspan="2">|<br>e<br>x<br>t<br>e<br>n<br>s<br>.<br>|</td> <!-- la partie contenu est déjà précisée avec <td rowspan="2"> --> </tr> <tr> <!-- la partie en dessous des menus est déjà précisée avec <td rowspan="2"> --> <td width="16" height="17">coin 3</td> <td height="17">----- Dessous du cadre du contenu de la page. Extensible horiz. ----- height=17</td> <td width="16" height="17">coin 4</td> </tr> </table><br> Chaque coin est censé faire 16 en width, et 17 en height.<br> Les bords de gauche et de droite du cadre du contenu sont censés faire 16 en width et être extensibles verticalement.<br> Les bords du haut et du bas du cadre du contenu sont censés faire 17 en height.<br><br> Le "cadre du contenu" est le cadre qui contient les "coins 1,2,3,4", pas le tableau général... </font>

Et maintenant un exemple où le contenu est plus long que les menus:

Code : Tout sélectionner

<font size="1"> <table width="100%" border="1" style="font-size: 10px;"> <tr> <td width="171" height="1" rowspan="2" colspan="2">Partie des menus<br>(je met height=1 car la<br>partie en dessous<br>doit s'étendre)<br><br> rowspan=2<br><font color="#FF0000">Les menus ne sont pas longs!</font></td> <td width="16" height="17">coin 1</td> <td height="17">----- dessus du cadre du contenu. extensible à l'horiz. ----- height=17</td> <td width="16" height="17">coin 2</td> </tr> <tr> <!-- la première partie est déjà contenue dans le <td rowspan="2"> --> <td width="16" rowspan="2">g<br>a<br>u<br>c<br>h<br>e</td> <td rowspan="2">Texte du contenu de la page...<br>Doit s'étendre horizontalement,<br>et verticalement aussi en fonction de la hauteur des menus. <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br></td> <td width="16" rowspan="2">d<br>r<br>o<br>i<br>t<br>e</td> </tr> <tr> <td width="170" rowspan="2">Partie qui doit s'étendre<br>horizontalement en fonction<br>de la hauteur du texte<br>de contenu de la page.<br><br> <font color="#FF0000">C'est cette partie-ci<br>qui doit s'étendre!</font></td> <td width="1" rowspan="2">|<br>e<br>x<br>t<br>e<br>n<br>s<br>.<br>|</td> <!-- la partie contenu est déjà précisée avec <td rowspan="2"> --> </tr> <tr> <!-- la partie en dessous des menus est déjà précisée avec <td rowspan="2"> --> <td width="16" height="17">coin 3</td> <td height="17">----- Dessous du cadre du contenu de la page. Extensible horiz. ----- height=17</td> <td width="16" height="17">coin 4</td> </tr> </table><br> Chaque coin est censé faire 16 en width, et 17 en height.<br> Les bords de gauche et de droite du cadre du contenu sont censés faire 16 en width et être extensibles verticalement.<br> Les bords du haut et du bas du cadre du contenu sont censés faire 17 en height.<br><br> Le "cadre du contenu" est le cadre qui contient les "coins 1,2,3,4", pas le tableau général... </font>

Voilà comme ça tu peux te faire une idée de mon problème... :D

Une idée ? :p


Merci à tous !
Bye
Pierre

par charabia » 30 oct. 2005, 12:53

lol pfiouuuu j'ai un peu de mal à suivre. Tu as un exemple où on pourrait jeter un oeil à ton problème ?

A la base, le height=100% d'une tableau existe mais ne fonctionne que sur le tableau externe (le premier). Dès lors que tu imbriques des tableaux dans des tableaux, le height des tableaux internes n'est plus pris en compte.