Marc Mosch: Variablenübergabe an topmargin

Hallo alle miteinander,

ich will ein Bild in einen Frame mittig einpassen. Also nicht nur zentriert, sondern es soll auch den selben Abstand zum oberen wie nach unteren Rand haben.

Da mir kein Befehl bekannt ist, der sich mit dem Befehl zum Zentrieren vergleichen liese, wollte ich das Ganze nun weniger genau lösen. Ich hatte mir vorgestellt mit dem "topmargin"- bzw. dem "marginheight"-Befehl zwei Abstände zum oberen Rand anzubieten. 12 Pixel für eine Auflösung von 800x600 und 50 Pixel für 1024x768. Ich hab ne Javascript-Abfrage geschrieben, die eien Variable entweder auf 12 oder auch 50 setzt, je nach dem ob der Anwender mehr oder weniger als eine 800X600 Auflösung fährt.
Das Problem trat in dem Moment auf, als ich die Variable an das topmargin und das marginheight übergeben wollte ich fand keine Möglichkeit. Mit dem "all"-Objekt wäre es vielleicht möglich gewesen, aber ich will meine Seite nicht nur für MSIE-Nutzer schreiben.

Ich würde mich sehr freuen, wenn mir jemand weiterhelfen kann. Noch schöner wäre natürlich eine Lösung die vertikales zentrieren erlaubt.

Mfg und Dank im Voraus

Marc Mosch

PS: kann es sein das Netscape nicht mit farbigen horizontalen Linien zurechtkommt? - der macht meine schöne graue Linie k***-braun (eh ich von anderen zensiert werde, mach ich's lieber selbst).

  1. Ich würde mich sehr freuen, wenn mir jemand weiterhelfen kann. Noch schöner wäre natürlich eine Lösung die vertikales zentrieren erlaubt.

    Mir kam da gerade eine Idee, wie man das Bild mit Hilfe eines Framesets zentrieren könnte. Ist zwar nicht besonders schön, aber ich erklär's mal kurz:

    Man schreibe ein Frameset in der folgenden Form:
    <frameset rows="*,200,*" border="0" frameborder="0" framespacing="0">
      <frame src="empty.html" scrolling="no" noresize>
      <frameset cols="*,300,*" border="0" frameborder="0" framespacing="0">
        <frame src="empty.html" scrolling="no" noresize>
        <frame src="bild.html" scrolling="no" noresize>
        <frame src="empty.html" scrolling="no" noresize>
      </frameset>
      <frame src="empty.html" scrolling="no" noresize>
    </frameset>

    Dann erstelle man eine Datei "empty.html", die - wie der Name schon sagt - leer ist.

    Dann erstelle man eine Datei namens "bild.html". In diese Datei baue man das Bild ein, das zentriert werden soll, und sorge dafür, dass es genau oben link in der Ecke sitzt.

    Die Größen des Frames in der Mitte müssten dann natürlich noch angepasst werden. (In meinem Fall wäre das Bild 300x200 Pixel groß.)

    PS: kann es sein das Netscape nicht mit farbigen horizontalen Linien zurechtkommt? - der macht meine schöne graue Linie k***-braun (eh ich von anderen zensiert werde, mach ich's lieber selbst).

    Bis jetzt dachte ich immer, der NN würde Farbangaben für horizontale Linien völlig ignorieren und sie im default Grau anzeigen. Dass er sie auch schon mal braun färbt ist mir neu. ;-)

    CU :-)
    Stefan

    1. Mir kam da gerade eine Idee, wie man das Bild mit Hilfe eines Framesets zentrieren könnte. Ist zwar nicht besonders schön, aber ich erklär's mal kurz:

      Danke Stefan

      Ist ne clevere Idee, aber der Ansatz, den ich am Anfang hatte wäre mir lieber. Falls keiner dazu ne Idee hat werde ichs wahrscheinlich so machen.

      Bis jetzt dachte ich immer, der NN würde Farbangaben für horizontale Linien völlig ignorieren und sie im default Grau anzeigen. Dass er sie auch schon mal braun färbt ist mir neu. ;-)

      He, Danke, das ist vieleicht die Lösung. Ich nehm für die Linie ein grau, das minimal in eine andere Farb-Richtung geht. Dann stellt NN es vielleicht als default Grau dar.

      MfG

      Marc

  2. Hallo!

    <table width="100%" height="100%">
      <tr valign="middle">
        <td align="center">
          <img src="deine.grafik">
        </td>
      </tr>
    </table>

    Ist zwar nicht W3C-konform(das height für <table>), aber es funktioniert.

    Gruß Markus