Avatar billede seekasr Nybegynder
17. januar 2004 - 16:21 Der er 18 kommentarer og
3 løsninger

Table height 100%: Kan man det?

Hej

Er det muligt på en eller anden måde at give en table 100% højde? Det fungerer tilsyneladende ikke på samme måde som med width, hvor man jo bare skriver det.

Men spørgsmålet er altså: Hvordan får man en tabel til at strække sig 100% i højden?

Vh
seekasr
Avatar billede ztyxx Nybegynder
17. januar 2004 - 16:22 #1
height="100%" burde virke
Avatar billede badmanndk Nybegynder
17. januar 2004 - 16:23 #2
hvis du bruger Dreamweaver f.eks. kan du ikke se det før du laver et prewiev i browseren
Avatar billede riversen Nybegynder
17. januar 2004 - 16:24 #3
style="height: 100%"
Avatar billede seekasr Nybegynder
17. januar 2004 - 16:24 #4
ztyxx: Som jeg skriver fungerer det åbentbart ikke ligesom width - derfor virker det du skriver ikke.

badmanndk: Det gør jeg ikke.

Skal måske lige nævne at jeg fisker efter noget, der virker til XHTML 1.1.

Vh
seek
Avatar billede seekasr Nybegynder
17. januar 2004 - 16:33 #5
Jeg har vist ikke formuleret problemet godt nok.

Jeg har en <td> der har en varierende højde. I den td vil jeg gerne have to felter, hvor den ene er helt i topppen af td'en, og den anden er helt i bunden. Hvordan gør man det?

Det jeg har prøvet er at lave en ny table inde i den første td. Den skal så have en højde på 100% før at fylde hele den første <td>. I den nye table har jeg så lavet to td'er, en med vertical-align: top, og en med vertical-align: bottom. Men de står bare lige under hinanden, og bliver ikke "delt" og placeret hhv. i toppen og i bunden af den første td.

Håber det gør det mere tydeligt - kan godt se den oprindelige beskrivelse er for dårlig.

Vh
seek
Avatar billede Slettet bruger
17. januar 2004 - 16:44 #6
Kan du måske uploade koden, med nogle tydelige bordere. Jeg har lidt svært ved at forestille mig det!
Avatar billede viciodk Praktikant
17. januar 2004 - 16:47 #7
Du skal lave tabellen med

<table border="0" style="height:100%;" cellpadding="0" cellspacing="0">

Samtidig skal du i dit stylesheet skrive:

html { height: 100%; }
body { height: 100%; margin: 0;}
Avatar billede roenving Novice
17. januar 2004 - 17:24 #8
<td style="position:relative;height:500px">
  <table style="height:100%">
    <tr>
      <td>Noget</td>
    </tr>
  </table>
</td>
Avatar billede seekasr Nybegynder
17. januar 2004 - 18:27 #9
Viciodk: Det er ikke det jeg leder efter.
roenving: Forstår ikke hvad det skal gøre?

Jeg prøver at paste koden engang, så håber jeg det fremgår mere tydeligt:

----------------------

<td> <!-- Har varierende højde -->
<table cellpadding="0" cellspacing="0" style="height: 100%;">
  <tr>
  <td style="vertical-align: top;">
  <!-- Dette skal altså være i toppen af feltet -->
  </td>
  </tr>
  <tr>
  <td style="vertical-align: bottom;">
  <!-- Dette skal altså være i bunden af feltet -->
  </td>
  </tr>
</table>
</td>

----------------------

Tak for kommentarerne,
seek
Avatar billede frkolsen Nybegynder
17. januar 2004 - 23:44 #10
Hvad med en løsning a la

<table border="1" cellspacing="0" cellpadding="0" width="90%">
    <tr>
        <td rowspan="2">&nbsp;</td>
        <td>topcelle</td>
        <td rowspan="2">&nbsp;</td>
    </tr>
    <tr>
        <td>bundcelle</td>
    </tr>
</table>
Avatar billede seekasr Nybegynder
18. januar 2004 - 01:40 #11
frkolsen: Det er selvfølgelig en mulighed, og det er måske også sådan jeg burde have gjort fra start. Men den nuværende tabelstruktur gør at det ikke er muligt.

Så jeg er stadig på udkig efter en løsning på det andet problem.

/seek
Avatar billede frkolsen Nybegynder
18. januar 2004 - 22:55 #12
<style type="text/css">
<!--
.top {
    position: absolute;
    left: 0px;
    top: 0px;
}
.bund {
    position: absolute;
    left: 0px;
    bottom: 0px;
}
</style>

<td> <!-- Har varierende højde -->
<div class="top">Dette skal altså være i toppen af feltet</div>
<div class="bund">Dette skal altså være i bunden af feltet</div>
</td>
Avatar billede frkolsen Nybegynder
18. januar 2004 - 22:56 #13
Det er godt nok ikke en tabel, men ka ske det kan bruges alligevel?
Avatar billede frkolsen Nybegynder
18. januar 2004 - 23:04 #14
hov jeg glemte
td { position: relative;}
men sorry, kun IE spiser den :-(
Avatar billede exp Juniormester
18. januar 2004 - 23:08 #15
Du skal give det omkransende element højde først...

Hvs du vil have en tabel der fylder hele browservinduet ud, skal du tilføje

html, body {
height:100%;
width:100%;
margin:0px;
padding:0px;
}

til dit css.
Men vær opmærksom på, at ikke alle browsere understøtter dette helt ens...
Avatar billede roenving Novice
18. januar 2004 - 23:50 #16
-- ideen i den, jeg skrev er præcis det, exp henviser til: Hvis et omkransende element har en defineret højde kan man bruge height:100% til at få elementet til at udfylde hele det omkransende element ...

Men det kræver, at det omkransende element har den definerede højde !-)
Avatar billede seekasr Nybegynder
19. januar 2004 - 20:26 #17
Tak for svar - det er vist det nærmeste man kommer hvis man laver det på den måde, jeg har gjort.

roenving, frkolsen og exp har vist svaret lige godt, så hvis i lige vil oprette et svar alle sammen?

Vh
seek
Avatar billede frkolsen Nybegynder
19. januar 2004 - 21:00 #18
;-)
Avatar billede roenving Novice
20. januar 2004 - 07:01 #19
Oki, velbekomme '-)
Avatar billede seekasr Nybegynder
20. januar 2004 - 14:24 #20
Takker :)
Avatar billede roenving Novice
24. januar 2004 - 17:41 #21
-- og tak for points ;~}
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