webernie: fixed element zentrieren

Grüße!

Wie zentriert man denn ein Div-Element, bei dem position:fixed; festgelegt ist???

Meine gesamte Website soll in der Mitte des Fensters sein und das Logo,  das Menü und die Fusszeile sollen nicht mitscrollen (also fix sein).

Ich habe es im Body mit text-algin:center; und auch Element selbst mit margin: 0 auto; probiert, aber ohne erfolg. Dieses Vorgehen klappt bei statischer, absoluter oder relative Positionierung aber nicht bei fixer.

Jedenfalls nicht im Firefox!!

Schon mal danke für eure Hilfe.
webernie

  1. hi,

    Wie zentriert man denn ein Div-Element, bei dem position:fixed; festgelegt ist???

    In dem man die benötigte Position ausrechnen lässt, oder aber in der Mitte positioniert, und dann per negativem margin-left um die Hälfte der Breite nach links verschiebt. Letztere Möglichkeit hat aber den Nachteil, dass dabei der Inhalt unzugänglich werden kann, wenn er nach links aus dem Viewport geschoben wird.

    Ich habe es im Body mit text-algin:center; und auch Element selbst mit margin: 0 auto; probiert, aber ohne erfolg. Dieses Vorgehen klappt bei statischer, absoluter oder relative Positionierung aber nicht bei fixer.

    Nein, das klappt auch bei absoluter Positionierung nicht - weil diese ein Element auf genau die gleiche Weise aus dem Fluss nimmt, wie fixed.

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. Danke für die schnelle Antwort!

      Das Ausrechnen mit JavaScript wäre nicht das Problem, aber wie weise ich dem Div-Element dann den ausgerechneten Wert zu?

      Soll ich dann in

      document.write( <div style="margin-left: [ausgerechneter Wert]"> gesamter Inhalt der Seite... </div> )

      die ganze Seite reinschreiben?

      webernie

      1. hi,

        Das Ausrechnen mit JavaScript wäre nicht das Problem, aber wie weise ich dem Div-Element dann den ausgerechneten Wert zu?

        document.write(...)

        Nein, das natürlich nicht.
        Du willst kein neues Element erzeugen - ausserdem würde document.write, nach dem Laden des Dokumentes aufgerufen, dieses ersetzen.

        Wenn dann willst du style-Eigenschaften des vorhandenen Elementes manipulieren.

        Bedenke aber, dass du dann auch die Änderung der Fenstergröße überwachen, und daraufhin die Werte wieder anpassen solltest, sonst taugt's so gut wie gar nichts.

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }