Avatar billede biohazard_666 Nybegynder
26. oktober 2010 - 20:14 Der er 11 kommentarer og
1 løsning

100% højde på interne DIV-elementer?

Hej Eksperter!

Jeg sidder og leger lidt med en design-ide, men sidder lige pt. fuldstændig fast.
Har forsøgt at google, men ingen af de svar jeg finder, giver noget resultat på mit problem.

Problemet er, at jeg på siden https://cs.au.dk/~ldr/ har nogle DIV's (class = content-box, som gerne skal være 100 % i højden, men kan simpelthen ikke få dem til at blive det, lige meget hvad jeg går.
Jeg har vha. Google Chrome set, at det ikke er alle mine parent DIV's, der er height = 100 %, hvilket jo nok er problemet - eller hvad?

Hvis en venlig sjæl vil hjælpe med at løse dette problem, vil jeg blive super glad :)

Mvh
Lars
Avatar billede Slettet bruger
26. oktober 2010 - 21:24 #1
Skal vi ikke bare tage den hurtigt:

html, body {
  height: 100%;
}
body: {
  margin: 0;
  padding: 0;
}
Avatar billede biohazard_666 Nybegynder
26. oktober 2010 - 21:53 #2
Hej Kimsey

Jeg har allerede html og body sat til 100 % samt margin og padding som 0 på body.
Det er heller ikke de ydre DIV, der er problemet. De fungere helt fint med 100 % height. Problemet er de DIV-bokse du kan se, hvor der står "Og så tester vi lige igen :)". De har hver især nogle forskellige borders, og som du kan se, er højden ikke 100 %. Når man ser på de enkelte elementer i Google Chrome, kan man se at div#wrapper og div#content fint nok er 100 % height, men div#body, div#body-content, div.wrap og div#content_box_wrapper er ikke 100 % på trods af at både min-height: 100% og height: 100% i samtlige elementers CSS.
Avatar billede Slettet bruger
26. oktober 2010 - 22:39 #3
Godt spøgsmål. Du fik mig virkelig på arbejde der.
Jeg kan ikke give dig den præcise (W3C) grund til at det ikke virker som det skal, men jeg kan give dig min fortolkning:

100% højde regnes efter den definerede højde på faderobjektet. Hvis dette ikke har en defineret højde (men f.eks. kun en minimumshøjde), er fallback'en vist bare auto.

For at se hvad jeg mener kan du prøve at ændre alle defineringer af minimumshøjde til defineringer af højden. Det skaber andre problemer, men fikser også dit primære problem.

(Desuden, hvorfor er nogle af dine div's sat til inline-display? Det giver ikke rigtig nogen mening :P)
Avatar billede biohazard_666 Nybegynder
26. oktober 2010 - 22:49 #4
Hehe det er godt det ikke kun er mig, der har fået hovedbrud af det her :) Kan nemlig heller ikke umiddelbart gennemskue den.

Jeg har forstået det på samme måde som du forklarer det, med at en DIV's højde er relativ til dens parent. Problemer er bare, at jeg har defineret både height og min-height til 100% på samtlige objekter. Jeg kan prøve at fjerne minimumshøjden og se om det giver noget resultat.

Mht. mine inline-display, så var det bare noget jeg hentede som inspiration fra et andet script. Har ikke arbejdet super meget med 100 % CSS designs, så jeg hapser lidt alle mulige steder fra - hvilket indimellem bliver noget rod :p
Avatar billede Slettet bruger
26. oktober 2010 - 22:55 #5
Height mangler på både #wrapper og #content_box_wrapper
Avatar billede Slettet bruger
26. oktober 2010 - 22:55 #6
(Men var det mig der skulle kode siden var jeg startet forfra med det samme. Det er noget spagettikode, det der.)
Avatar billede biohazard_666 Nybegynder
26. oktober 2010 - 23:33 #7
Ups - der var lige sneget sig en fejl ind under #content_box_wrapper CSS, men den her nu fået sin height.
Som jeg kan se det, er det div#body, der ikke får height: 100% sat ordentlig fra div#content.

Og mangler stadig lige at få ryddet op i koden, efter at jeg har prøvet en helt masse ting :) Som sagt, er det et "førstegangsprojekt" i ren CSS-design, hvor jeg kigger på andre sider og snupper lidt hist og pist - så ved desværre endnu ikke bedre, end at det bliver noget smadderværk :/
Avatar billede Slettet bruger
26. oktober 2010 - 23:45 #8
Hmm... Jeg har tænkt lidt over det, og tror altså jeg vil anbefale dig en tabel. Jeg er kraftig modstander af tabeller til andet af tabulært data, men i dette her tilfælde tror jeg det er den eneste løsning der involverer at skyde knoppen af sig selv af bare anstrengelse.
Avatar billede biohazard_666 Nybegynder
27. oktober 2010 - 00:44 #9
Hmm. Du kan have ret. Har også overvejet det, men ville jo gerne se om jeg kunne lave det uden :)
Jeg laver en løsning med en tabel, og gemmer den nuværende, hvis der kommer en ind i tråden med en genial ide i løbet af en dag eller to.

Du er velkommen til at svare, så får du point om et par dage, hvis der ikke kommer andre svar :)
Avatar billede Slettet bruger
27. oktober 2010 - 08:58 #10
Du kan måske godt lave det uden, men ikke over det design du har i forvejen.
Avatar billede Slettet bruger
28. oktober 2010 - 12:49 #11
Har ind imellem samme problem. Bruger
overflow:auto;
på de div, der ikke vil som jeg vil
Avatar billede biohazard_666 Nybegynder
22. november 2010 - 15:31 #12
Havde helt glemt den her.
Endte med at lave det meste om :)
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