PallemanMedlem sedan dec. 2000557 inlägg Hej!
Jag sitter och brottas med en DIV-tagg som inte vill som jag vill..
Jag vill centrera DIV-taggen och dess innehåll på sidan, och det fungerar fin fint i IE men i Netscape ligger den som en blaffa högst upp..
Min kod ser ut så här nu:
[FONT=arial][RED]<html><head>
<style type="text/css">
#mycontent {
border: solid 1px #000;
padding: 10px;
background: #f0f0f0;
}
</style>
<script language="JavaScript">
function center_content() {
// Browsercheck
var browser = (navigator.appName);
// Önskad höjd och bredd
var height = 400;
var width = 600;
// Internet Explorer
if (browser == "Microsoft Internet Explorer") {
mycontent.style.height = height;
mycontent.style.width = width;
mycontent.style.marginTop = (document.body.clientHeight-height)/2;
mycontent.style.marginLeft = (document.body.clientWidth-width)/2;
}
// Netscape
if (browser == "Netscape") {
mycontent.style.height = height;
mycontent.style.width = width;
mycontent.style.top = (window.innerHeight-height)/2;
mycontent.style.left = (window.innerWidth-width)/2;
}
}
</script>
</head>
<body onresize="location.reload();" onload="center_content();">
<div id="mycontent">
Detta är innehållet..
</div>
</body></html>[/RED][/FONT]
Någon som vet vad jag gör för fel och vad som bör förbättras? :OO
JojoxxMedlem sedan juni 20004 308 inlägg Förslag som inkluderar lite mer DOM;
<style type="text/css">
#mycontent {
position:absolute;
border: solid 1px #000;
padding: 10px;
background: #f0f0f0;
width:600px;
height:400px;
}
</style>
<script language="JavaScript" type="text/javascript">
function center_content() {
if(document.all){
document.all["mycontent"].style.left=parseInt((document.body.clientWidth-document.all["mycontent"].offsetWidth)/2);
document.all["mycontent"].style.top=parseInt((document.body.clientHeight-document.all["mycontent"].offsetHeight)/2);
} else if(document.layers) {
document.layers["mycontent"].left=parseInt((window.innerWidth-document["mycontent"].document.width)/2);
document.layers["mycontent"].top=parseInt((window.innerHeight-document["mycontent"].document.height)/2);
} else if(document.getElementById&&navigator.appName=="Microsoft Internet Explorer") {
document.getElementById("mycontent").style.left=parseInt((document.body.clientWidth-document.getElementById("mycontent").offsetWidth)/2);
document.getElementById("mycontent").style.top=parseInt((document.body.clientHeight-document.getElementById("mycontent").offsetHeight)/2);
} else if(document.getElementById) {
document.getElementById("mycontent").style.left=parseInt((window.innerWidth-document.getElementById("mycontent").offsetWidth)/2);
document.getElementById("mycontent").style.top=parseInt((window.innerHeight-document.getElementById("mycontent").offsetHeight)/2);
}
}
</script>
PallemanMedlem sedan dec. 2000557 inlägg Hmm.. ja det fungerar bra - MEN - lägger jag funktionen i mitt XHTML dokument så fungerar det inte...
Plockar jag bort följande från dokumentet så fungerar det:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"DTD/xhtml1-transitional.dtd">
Doctypen gör att det buggar ur, vad kan det bero på tror du/ni?
OlleBoopMedlem sedan feb. 20001 861 inlägg Vilken version av Netscape?
Plockar du bort DTD:n kommer nyare läsare att gå i "quirks mode", typ att den emulerar vissa buggar från äldre läsare.