Layerpositionierung
Stingray
- javascript
Hab hier schon ein paar mel mehr wegen des Problems reingeschrieben. Hab versucht aus den Tipps mir was zusammenzubasteln, nur stoss ich dabei auf absolut gar keinen Erfolg
Ich möchte auf meiner Webseite per Javascript die Breite des Fensters ermitteln. Diese Breite soll dann durch durch 2 geteilt werden und von dem ergebnis sollen wiederrum 390 px abgezogen werden (Weil die anzuzeigende Seite 780 px breit ist, und ich damit die Layer mittig positionieren kann).
Und jetzt soll das ergebnis dieses Script in die CSS Styles eingesetzt werden (ist das ueberhaupt möglich), die die Layer positionieren.
Also: <div id="blablubb" style="position:absolute; left:0+[Ergebnis aus dem Javascript]px; top:10px; width:780px; height:450px; z-index:1"></div>
Dann soll der Script immer wieder neu ausgeführt werden, sobald man die Fentergrösse verändert (maximiert, oder manuell das Fenster grösser/kleiner zeiht) und damit soll der Layer neu positioniert werden, damit der immer zentriert bleibt.
Könnte mir da wer bitte detailiert schreiben, wie man (und ob man) sowas umsetzen kann. Am liebstes wäre mir da natuerlich ein kompletter Script, weil ich an sich kein bischen Ahnung von JavaScripts habe.
MfG, Sting;
Hi,
bitte vergiss Javascript, das geht auch mit CSS.
Also: <div id="blablubb" style="position:absolute; left:0+[Ergebnis aus dem Javascript]px; top:10px; width:780px; height:450px; z-index:1"></div>
<div id="blablubb" style="position:absolute; top:10px; width:780px; height:450px; z-index:1; margin-left:auto; margin-right:auto;"></div>
Dann soll der Script immer wieder neu ausgeführt werden, sobald man die Fentergrösse verändert
CSS benötigt dafür keine Eventhandler.
LG Orlando
Hi,
bitte vergiss Javascript, das geht auch mit CSS.
<div id="blablubb" style="position:absolute; top:10px; width:780px; height:450px; z-index:1; margin-left:auto; margin-right:auto;"></div>
Ähm...nein. Das geht nicht. Ist ja ein wiederspruch an sich, wenn ich dem Layer sage er soll sich absolut an Position XY positionieren und dann wird über Margin dem Layer zentriert vorgegeben. Das geht schon von Logig (2 verschiedene Angaben) her net und inner Praxis ebendsowenig.
LG Orlando
Hallo,
Ähm...nein. Das geht nicht. Ist ja ein wiederspruch an sich, wenn ich dem Layer sage er soll sich absolut an Position XY positionieren und dann wird über Margin dem Layer zentriert vorgegeben. Das geht schon von Logig (2 verschiedene Angaben) her net und inner Praxis ebendsowenig.
Hast du es überhaupt mal versucht? Es funktioniert (in Browsern die CSS ordentlich interpretieren) einwandfrei.
Falls es auch im IE klappen soll:
<div style="text-align: center;">
<div id="blablubb" style="position:absolute; top:10px; width:780px; height:450px; z-index:1; margin-left:auto; margin-right:auto; text-align: left;"></div>
</div>
Wo du hier einen Logikfehler oder einen Widerspruch siehst, ist mir schleierhaft.
Gruß, Jan
Hallo,
Ähm...nein. Das geht nicht. Ist ja ein wiederspruch an sich, wenn ich dem Layer sage er soll sich absolut an Position XY positionieren und dann wird über Margin dem Layer zentriert vorgegeben. Das geht schon von Logig (2 verschiedene Angaben) her net und inner Praxis ebendsowenig.
Hast du es überhaupt mal versucht? Es funktioniert (in Browsern die CSS ordentlich interpretieren) einwandfrei.
Ja, ich habe es versucht, und der layer verschiebt sich immer wieder, wenn man die Fenstergrösse verändert. Der soll aber fest anner Stelle hocken, und net bei verhschiedenen Fenstergrössen an anderen Stellen. Das ist doch mein Problem.
mfg, Sting
Hallo,
Ja, ich habe es versucht, und der layer verschiebt sich immer wieder, wenn man die Fenstergrösse verändert. Der soll aber fest anner Stelle hocken, und net bei verhschiedenen Fenstergrössen an anderen Stellen. Das ist doch mein Problem.
Was willst Du jetzt nun?
<div style="position: absolute; left: 30px; right: 30px; top: 20px; width: auto; height: auto; border: 1px solid red;">Inhalt</div>
(die Border is drinnen um den Effekt zu verdeutlichen)
Grüße,
Christian