container, er uden om de to div'er og sørger for at det står midt på siden.
men hvordan sikre jeg at menuen altid er lige så høj som indholdssiden, så man ikke pludselig kan se sidens baggrundbillede under menuen, fordi diven ikke går helt ned til bunden??
Problemet vil jo først være der, hvis din main-div er højere end skærmsiden (og med den kode du har vil den også være der i andre browsere end IE, men hvis du tilføjer følgende til dit stylesheet skulle browserne opføre sig nogenlunde ens !-)
roenving> en anden script metode som er enklere at følge for en scriptnovice som mig (om end ikke smartere) er:
<script type="text/javascript"><!-- function setDivHeight() { var menuDiv = document.getElementById('menu'); var mainDiv = document.getElementById('main'); if (menuDiv.offsetHeight > mainDiv.offsetHeight) { mainDiv.style.height = menuDiv.offsetHeight-1+'px'; }else if (menuDiv.offsetHeight < mainDiv.offsetHeight) { menuDiv.style.height = mainDiv.offsetHeight-11+'px'; } } //--></script>
<body onload="setDivHeight();">
Dvs. man sætter simpelthen bare højden af den ene div til at være lig med højden af den anden. Til det bruger man offsetHeight der er inklusiv evt. padding og border som derfor skal trækkes fra.
Nej, det gør jeg ikke, for offsetHeight i min tankegang bør give den fulde højde af elementet, som bør indeholde padding, men _ikke_ bør indeholde margin og border (iflg. w3cs box-model: http://www.w3.org/TR/REC-CSS2/box.html !-)
Men, hvis du vil have det til at fungere fuldstændig ens i alle browsere, skal du (ifølge Danny Goodman: The JavaScript Bible !-) lave en længere liste over de forskellige browsere og styresystemer, og så i en ret kompliceret struktur angive de forskellige permutationer for tilpasning !o]
men height (som er ekskl. padding, border og margin) er så under alle omstændigheder heller ikke det samme som offsetHeight (som er inkl. padding), og dvs. hvis det er padding for nogle og ikke for andre divs er der et problem. Er det ikke rigtigt?...
Jo, det kan sagtens være et problem, og de tests, jeg har lavet for konkrete sider, har også måttet tage to forskellige indgangsvinkler til de to browsere, jeg tester med ...
jeg har i forvejen to css layout scripts, et til IE og et til NS, Opera og mizilla, så jeg har tilrettet det der skal rettes mvh padding osv.
Synes godt om
Ny brugerNybegynder
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.