Avatar billede saudoo Nybegynder
08. september 2005 - 12:28 Der er 14 kommentarer og
1 løsning

Problmer med fixed divs, overflow og højde.

Hej Eksperten,

Håber virkelig i kan hjælpe mig med denne. For jeg er gået mere eller mindre amok over det. :)

Det er kun en skoleopgave, så bliv ikke alt for forskrækket.

Siden ligger her:
http://www.humanslair.dk/homesite/

Hvis nogle vil arbejde med den, har jeg pakket alle filerne, så de kan se resultatet derhjemme:
http://www.humanslair.dk/homesite/homesite.zip

Mit problem er at når jeg vil se indholdet, i den div der hedder "indhold" fungerer det godt nok i InternetExplorer. Men i Firefox hopper den ned forbi den div der hedder bund. Det er cool nok den hopper ned bag ved, da dens z-index er mindre. Men den burde ikke være så lang.

Dens længe burde ligge imellem div'sne "top" og "bund". :\


Håber i kan hjælpe mig.

Jakob
Avatar billede olebole Juniormester
08. september 2005 - 12:33 #1
<ole>

Jamen, med denne kommentar:
    <!-- Limpid ? IE in quirks mode -->

- ødelægger du selv alle IE's muligheder for at tolke CSS på en begavet måde  :)

/mvh
</bole>
Avatar billede saudoo Nybegynder
08. september 2005 - 12:34 #2
Den er nødvendig for at kunne lave en slags fixed div i IE.

Iøvrigt er det jo i Firefox det hele går galt. :)
Avatar billede olebole Juniormester
08. september 2005 - 12:36 #3
Ja, det tror da pokker ... FF tolker CSS korrekt - men det har du ødelagt i IE med din kommentar  :)
Du er nødt til at skrive en ordentlig DTD. Ellers er IE's visning helt tilfældig ... som du jo allerede har opdaget (dog uden at vide det)  ;o)
Avatar billede saudoo Nybegynder
08. september 2005 - 12:38 #4
Men problemet for mig er jo bare at IE ikke understøtter position: fixed;
Hvilke andre muligher findes da? :P
Avatar billede olebole Juniormester
08. september 2005 - 12:39 #5
Dit 'baggrunds-div' har du givet højden 100%. 100% af hvad? CSS forskriver utvetydigt, at en relativ højde skal beregnes udfra det omkransende elements højde - som altså explicit skal sættes:

html, body {
  height: 100%;
  padding: 0;
  margin: 0;
}
Avatar billede saudoo Nybegynder
08. september 2005 - 12:46 #6
Hm.. Efter hvad jeg ved, kan man godt sætte både HTML og BODY til height: 100%;

Det er hvad jeg har gjort, og derefter mit div til 100% af det. Den ligger også som position: fixed;, så den følger med når man scroller ned. :) Dette dog ikke i IE, uden quirks mode.

Men det kan jeg så forstå nu at jeg skal glemme alt om.. :P
Avatar billede olebole Juniormester
08. september 2005 - 13:32 #7
yups ... men det andet kan du løse med noget enkelt JS:

<script type="text/JavaScript">
window.onload = window.onscroll = function() {
    document.getElementById("gnu").style.top = (document.documentElement.scrollTop + 40) + "px";
}
</script>

<div id="gnu" style="position:absolute;width:140px;height:350px;background:red">&nbsp;</div>
Avatar billede saudoo Nybegynder
08. september 2005 - 13:55 #8
Hm.. Syntes ikke rigigt den rører jeg ud af stedet. :)
Avatar billede saudoo Nybegynder
08. september 2005 - 14:03 #9
jeg = sig
Avatar billede olebole Juniormester
08. september 2005 - 14:18 #10
Jeg troede ellers, vi allerede var blevet enige om, at du godt kunne glemme alt om quirks-mode. Du har ikke andet end problemer ud af at disable CSS i IE ... på et tidspunkt går det forhåbentligt op for dig  :)
Avatar billede olebole Juniormester
08. september 2005 - 14:19 #11
Det er ikke så svært at skrive X-browser kode:

<!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>TITLE</title>
<style type="text/css">
body, html {
    height: 100%;
    margin: 0;
    padding: 0;
}
</style>
</head>
<body>

<script type="text/JavaScript">
window.onload = window.onscroll = function() {
    document.getElementById("gnu").style.top = (document.documentElement.scrollTop + 40) + "px";
}
</script>

<div id="gnu" style="position:absolute;width:140px;height:350px;background:red">&nbsp;</div>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>

</body>
</html>
Avatar billede saudoo Nybegynder
08. september 2005 - 16:00 #12
Jeg er forlængst hoppet fra Quirksmode.. :) Bare rolig.

Men forstår nu hvorfor det ikke virkede for mig før.. :) Hvis man bruger sin scrollknap, så går det helt galt. Og den sætter sig bare der på siden, hvor den nu engang står.. :\
Avatar billede olebole Juniormester
08. september 2005 - 16:03 #13
Hmmm ... godt, man er fri for den slags nymodens pjank på en klaptop  ;D
Avatar billede saudoo Nybegynder
08. september 2005 - 16:07 #14
Men det virker ikke i Firefox.

Ved du hvordan man kan få den til at skrive en bestemt linie kode, hvis det er Internet Explorer, og en anden bestemt hvis det er en hvilken som helst anden browser?
Avatar billede saudoo Nybegynder
12. marts 2006 - 18:12 #15
Smider du et svar som tak for hjælpen? Ellers tager jeg selv pointene. :P
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