Avatar billede nitro_ Nybegynder
08. juli 2004 - 01:00 Der er 11 kommentarer og
1 løsning

Problem med height:100% når jeg scroller

Hej med jer.

Jeg har fået sat min hjemmeside sammen, men når jeg gør browser-vinduet så
lille at al teksten ikke kan være deri, som hvis man kører 800*600 eller
hvis der kommer mere tekst, opstår der et problem når man scroller på siden.
Det er faktisk nemmest at se hvad problemet er hvis I selv prøver, men det
er at "stregerne" ikke følger med ned.

Siden er her: http://hvidkildehusene.dk/je/

Jeg vil helst ikke gå væk fra height:100%, da siden er perfekt hvis
browservinduet er stort nok til at man kan se al teksten.

Er der nogle der kan hjælpe mig med at komme af med dette problem?

På forhånd tak,
Jesper
Avatar billede roenving Novice
08. juli 2004 - 01:22 #1
Kunne ikke lade være at grine højt !-)

'Hej, jeg kender en, som kan levere det perfekte i web-design. Han er måske ikke så hurtig, men han kan alt muligt. Kan du matche hans pris ?-)'

'Hvem er det?'

'Han hedder Eksperten.dk, kender du ham?'

Hvis du skal ændre det, skal du aktivt (dvs. ved hjælp af javascript !-) synkronisere onload og onresize ...

For øvrigt forstod jeg ikke lige at du har en mline og en rightline, ville det ikke være meget nemmere at bruge en border på elementet ?-)

-- og jeg bemærkede at du næsten kun havde id-selektorer, kunne det ikke betale sig at bruge en smule cascading, når du nu bruger Cascading StyleSheets ?o]

Men et synkroniseringsscript, som du så kalder onload og onresize (du skal selvfølgelig indsætte de id'er, som skal synkroniseres -- også body må godt have et id !-)

<script type="text/javascript">
var elms = ['left','middle','right'];

function synchronizeDivs(){
  var maxH = 0;//her sættes den minimumshøjde du ønsker !-)
  for(i=0;elms.length>i;i++){
    maxH = Math.max(maxH,document.getElementById(elms[i]).offsetHeight);
  }
  for(i=0;elms.length>i;i++){
    document.getElementById(elms[i]).style.height=maxH + 'px';
  }
}
</script>
Avatar billede thedeathart Nybegynder
08. juli 2004 - 01:25 #2
man kunne da måske også bruge nogle: position: absolute;
Avatar billede roenving Novice
08. juli 2004 - 01:31 #3
Nej !-)

?-)
Avatar billede nitro_ Nybegynder
08. juli 2004 - 01:32 #4
hej roenving. Tak for svaret, men jeg ville være glad hvis du forklarede lidt mere hvad der præcist skal gøres. Har aldrig arbejdet med javascript før, så kan ikke lige gennemskue hvad jeg præcist skal gøre for at det kommer til at virke :)
Avatar billede roenving Novice
08. juli 2004 - 01:37 #5
I denne linje indsætter du id'er på de elementer, som skal have den samme højde:

var elms = ['left','middle','right'];

Det skulle være til at gennemskue, hvordan navnene skal stå, og som nævnt må du også gerne give body et id !-)

Hvis du har en højde, som du ikke vil have elementerne kommer under, kan du indsætte den i stedet for nullet i den linje, hvor det er markeret ...

-- og så laver du body sådan:

<body ... onresize="synchronizeDivs()" onload="synchronizeDivs()">
Avatar billede roenving Novice
08. juli 2004 - 01:39 #6
-- scriptet skal stå inden for <html> og </html>, så du har frit valg ...

-- jeg plejer dog at placere den slags script, som ikke skriver til dokumentet on-the-fly i head-sektionen, så jeg senere kan flytte det ud i en ekstern fil !-)
Avatar billede nitro_ Nybegynder
08. juli 2004 - 02:01 #7
Tak for al hjælpen. Jeg har dog fundet en anden løsning uden javascript. Simpelthen bare at kopiere de tre "streger" på langs med kun et par pixels højde og så sætte det som baggrund i #main. Jeg satte den også som baggrund i body med position 50% 0 og repeat-y. Så virker det i hvert fald i IE, firefox og Opera.

Den eneste fejl jeg kan se nu, er at det er ligesom firefox sætter en bred venstre margin på menuen, så den står midt i det hele, i stedet for ude til venstre som i IE og i Opera.
Avatar billede roenving Novice
08. juli 2004 - 02:03 #8
Du har ikke lagt det op endnu ?-)
Avatar billede nitro_ Nybegynder
08. juli 2004 - 02:04 #9
nej, men det har jeg netop nu :)
Avatar billede nitro_ Nybegynder
08. juli 2004 - 02:20 #10
roenving jeg ville lige høre om du ville/kunne hjælpe med det her problem eller om jeg bare skal lade det ligge/lave en ny tråd hvis jeg ikke finder ud af det.
Avatar billede roenving Novice
08. juli 2004 - 13:12 #11
Jeg har ikke testet, men det ser ud som om der er en padding, så den ville jeg prøve at pille ved !-)

-- enten på .menutekst eller på #leftmenu ...

-- og jeg havde slet ikke set det i første omgang, så det forstyrrer jo ikke designet !o]
Avatar billede nitro_ Nybegynder
10. juli 2004 - 14:41 #12
Okay, jeg lukker
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