Avatar billede nightowl24 Nybegynder
24. november 2005 - 16:36 Der er 13 kommentarer og
1 løsning

Problem med variabel tabelcelle størrelse

Hej

Jeg har et problem med en tabel og har her vedlagt noget htmlkode der skal skitsere problemet.

Det blå og hvide felt skal indeholde menu og indhold og skal kunne varieres i højden. Problemet, som man kan se på tabel 1 er at de øvrige felter ligeledes skifter højde når der lægges meget indhold ind i det blå felt, selvom der er angivet en fast højde. Findes der en løsning på problemet?

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Untitled Document</title>
</head>

<body>
<table style="width: 750px; float: left;" cellpadding="0" cellspacing="0">
<tr>
  <td style="height: 18px;background-color: #ccc;">&nbsp;</td>
  <td rowspan="4" style="background-color: blue;"><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></td>
</tr>
<tr>
  <td><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></td>
</tr>
<tr>
  <td style="height:18px;background-color: #ccc;">&nbsp;</td>
</tr>
<tr>
  <td style="height:100px;background-color: #aaa;">&nbsp;</td>
</tr>
</table>


<table style="width: 750px; float: right;" cellpadding="0" cellspacing="0">
<tr>
  <td style="height: 18px;background-color: #ccc;">&nbsp;</td>
  <td rowspan="4" style="background-color: blue;"><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></td>
</tr>
<tr>
  <td><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></td>
</tr>
<tr>
  <td style="height:18px;background-color: #ccc;">&nbsp;</td>
</tr>
<tr>
  <td style="height:100px;background-color: #aaa;">&nbsp;</td>
</tr>
</table>

</body>
</html>

/Nightowl
Avatar billede jamiros Novice
24. november 2005 - 16:47 #1
<table style="width: 750px; float: left;" cellpadding="0" cellspacing="0">
<tr height="28">
  <td style="height: 18px;background-color: #ccc;" height="28">&nbsp;</td>
  <td rowspan="4" style="background-color: blue;"><p>&nbsp;</p><p>&nbsp;</p>
                    <p>&nbsp;</p>
                    <p>&nbsp;</p>
                    <p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></td>
</tr>
<tr>
  <td><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></td>
</tr>
<tr height="28">
  <td style="height:18px;background-color: #ccc;" height="28">&nbsp;</td>
</tr>
<tr height="28">
  <td style="height:100px;background-color: #aaa;" height="28">&nbsp;</td>
</tr>
</table>
Avatar billede nightowl24 Nybegynder
25. november 2005 - 08:40 #2
Det bliver det ikke meget bedre af, faktisk værre. Hvor får du tallet 28 fra?
Avatar billede nightowl24 Nybegynder
25. november 2005 - 08:55 #3
Kan lige tilføje at det åbenbart kun er et problem i IE, det virker efter hensigten i firefox
Avatar billede johan.o Nybegynder
25. november 2005 - 10:09 #4
Jeg har prøvet at kigge i IE 6 og det ser da vist ok ud med dine celle højder ??

Placeringen af tabel 2 er derimod lidt 'mærkelig' men det skyldtes nok 'float' og en skærmbredde på 1024px.

Mvh. Johan
Avatar billede nightowl24 Nybegynder
25. november 2005 - 10:17 #5
Du kan ikke se at der er en smule forskel på højden af de lysegrå celler i de 2 tabeller?
Avatar billede johan.o Nybegynder
25. november 2005 - 10:23 #6
Når jeg kigger på denne kode, som er en lille omskrivning uden nogen ændringer andet end at de to tabeller er lidt mindre i bredden og den første er 'vendt' således at jeg kan sammenligne de felter vi snakker om, så nej, der er ingen forskel.

Mvh. Johan

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Untitled Document</title>
<style type="text/css">

td { border: 1px solid #FF0000; }

</style>
</head>

<body>
<table style="width: 250px; float: left;" cellpadding="0" cellspacing="0">
<tr>
  <td rowspan="4" style="background-color: blue;">&nbsp;</td>
  <td style="height: 18px;background-color: #ccc;">&nbsp;</td>
</tr>
<tr>
  <td>&nbsp;</td>
</tr>
<tr>
  <td style="height:18px;background-color: #ccc;">&nbsp;</td>
</tr>
<tr>
  <td style="height:100px;background-color: #aaa;">&nbsp;</td>
</tr>
</table>


<table style="width: 250px; float: left;" cellpadding="0" cellspacing="0">
<tr>
  <td style="height: 18px;background-color: #ccc;">&nbsp;</td>
  <td rowspan="4" style="background-color: blue;"><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></td>
</tr>
<tr>
  <td><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p><p>&nbsp;</p></td>
</tr>
<tr>
  <td style="height:18px;background-color: #ccc;">&nbsp;</td>
</tr>
<tr>
  <td style="height:100px;background-color: #aaa;">&nbsp;</td>
</tr>
</table>

</body>
</html>
Avatar billede johan.o Nybegynder
25. november 2005 - 10:24 #7
Ja okay, jeg har også sat border på cellerne for at kunne se præcis hvor de er, men det betyder heller ikke noget. :)

Mvh. Johan
Avatar billede nightowl24 Nybegynder
25. november 2005 - 10:30 #8
Hvis du tilføjer nogle flere <p>&nbsp;</p> til cellen der spanner over 4 rækker opstår problemet
Avatar billede johan.o Nybegynder
25. november 2005 - 10:44 #9
Ja okay, nu ser jeg problemet....'think-mode' :)

Mvh. Johan
Avatar billede johan.o Nybegynder
25. november 2005 - 11:31 #10
Hm, jeg prøvede lidt frem og tilbage men der var ikke rigtig 'bonus' så jeg gik ind og læste det her :

http://www.w3.org/TR/CSS21/tables.html#height-layout

Der står jo at der ikke er fastsat en css standard for hvordan tabel-celle højde skal opfører sig hvis, som i dit tilfælde, at en celle ved siden af spænder over flere rækker og er højerer end de tilstødende cellers sammenlagte højde.

Nå, kan man så sige !

Mvh. Johan
Avatar billede johan.o Nybegynder
25. november 2005 - 11:32 #11
En evt. introduktion af max og min height kan sikkert rette op på dette, men det hjælper dig jo ikke meget lige nu.

Mvh. Johan
Avatar billede nightowl24 Nybegynder
25. november 2005 - 11:46 #12
Nej, det gør det ikke - irriterende når det nu virker som det skal i firefox, men så må der jo findes en anden må at løse problemet på.
Avatar billede nightowl24 Nybegynder
29. november 2005 - 13:03 #13
Det endte med at jeg lavede om på strukturen så jeg slap for min rowspan. Smid et svar johan.o
Avatar billede johan.o Nybegynder
29. november 2005 - 13:12 #14
Værsgo :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester