27. juli 2004 - 10:41Der er
21 kommentarer og 2 løsninger
Iframe der skal følge browserens højde
Jeg vil gerne lave en iframe, som følger browserens højde, altså bliver højere hvis browser sættes højere, skal gå til bund.
Jeg har lavet flg.: <iframe id="produkt" name="produkt" style="position:absolute; width:537px; height:100 %; top:100px; left:2px; z-index:1;" frameborder="no" scrolling="yes" src="produkt_data.htm"> ...men det virker ikke, iframe'en er ikke ret høj.
prøv også at sætte højde på <html> og på <body>, enten i et eksterns stylesheet:
<style type="text/css"> html { height: 100%; } body { height: 100%; } </style>
- eller inline i tagsene ligesom du har gjort med iframen. Og måske det også betyder noget at du har et mellemrum mellem "100" og "%" i dit iframe-tag. Prøv at skrive det: 100%
men egentlig holder den jo ikke med 100%, for du har top:100px, så nogle af procenterne er jo allerede brugt. Hvad med at angive top relativt, f.eks. 10% og sætte iframen til 90% ?
Hvis jeg gør som 'mik789' foreslår og sætter højden til ca 80%, ser det rimelig ud, men som 'roenving' foreslår, ville et eller andet med 100%-100px jo være løsningen, hvordan sådan en regnestykke ellers skal sættes op.
<script language="javascript" type="text/javascript"> function ifrHeight(){ var t=(window.innerHeight)?window.innerHeight:document.body.scrollHeight; document.getElementById('IFRAMEID').style.height=t-100+'px'; } </script>
<body onload="ifrHeight();">
-- men du er nødt til at sætte de 100% på html og body så !-)
virker ikke lige efter hensigten, "skymper" ikke sammen, og viser en alert:
"Java Script Error Description:Et objekt er obligatorisk Source:file:xxxxxx\produkt2.htm Linie:21 " ...som er linie der starter med "document.get....."
Window.innerHeight er selvfølgelig klart den bedste, da man så får fat i den højde, som vinduet har, men den findes ikke i bl.a. IE, som til gengæld har en scrollHeight !-)
-- og egentlig er det en fejl, for man bør vel benytte offsetHeight, som forstås af de fleste levende browsere !o]
men offsetHeight er vel hverken en window- eller en document property? det er vel kun element property, eller hvad? Kan i hvert fald kun finde den som sådan på: http://www.mozilla.org/docs/dom/domref/dom_el_ref.html#1023967 ikke under Window eller Document properties.
-- men det var et sidespring- undskyld fotograf! ;-)
-- og jeg ville prøve at finde en løsning uden et frameset, da det alt andet lige er et problem i forhold til søgemaskinerne ...
At bruge en iframe inde i dokumentet synes jeg ikke er så slemt, men man skal da være opmærksom på, at der kan være links direkte til det, så det skal selv hente sit omgivende dokument !o]
Tak for hjælpen ...ja, der er flere ting der ikke virker i Mozilla, men jeg arbejder på at sitet skal ses i begge browsere, noget mere besværligt ...men det er jo den vej udviklingen går!
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.