100% Hintergrundbild im Browser

Werbung

Unabhängig von der Fenstergröße des Browsers wird mit diesem Trick das Hintergrundbild immer in voller Größe angezeigt – egal, wie groß das Bild in Wirklichkeit ist. Es wird nichts abgeschnitten oder dazugesetzt.

Eine der vielen Fragen eines Webdesigners: Für welche Bildschirmauflösung oder besser gesagt, für welche im Browser sichtbare Fläche optimiere ich meine Website? Eine zufriedenstellende Antwort gibt es leider nicht, weil die Palette von riesigen Monitoren bis hin zum Handy reicht. Also, was solls? Man nimmt einfach eben nur eine Hintergrundfarbe oder einen Farbverlauf und wählt ein flexibles Layout. Das klappt.

Was aber, wenn der Auftrag lautet: “Ein Bild soll den Hintergrund der Seite ausfüllen und nix soll dabei abgeschnitten werden, egal wie groß die sichtbare Fläche des Browserfensters gerade eben ist”… Einen möglichen Weg beschreibt Stu Nicolls.

In einer html-Datei werden drei “div’s” erstellt. Eins für den gesamten Hintergrund. Eins für den festen Bereich links. Und eins für den scrollbaren Bereich rechts (dieser enthält dann noch ein div mit der id=”inhalt”. Als Hintergrundbild dient hier fridolin.jpg (1280×1024 groß, im gleichen Verzeichnis). Anstelle von fridolin.jpg können Sie dann Ihr gewünschtes Hintergrundbild platzieren.

<div> <img id="hintergrund" src="fridolin.jpg" alt="" title=""
/> </div>
<div id="fest"> <p>Diese linke Spalte hier ist fest
(fixed)</p>
</div>
<div id="scrollbar"> <div id="inhalt"> <p>Das ist der
scrollbare Bereich rechts.</p> </div>
</div> 

Erklärung: Wie man hier wohl schon erkennen kann, liegt der Trick darin, dass das “Hintergrundbild” in Wirklichkeit gar kein Hintergrundbild ist, sondern in einem div-Bereich nur als normale Grafik eingebunden ist. Dies ermöglicht erst die Skalierung des “Hintergrundbildes”. Im Stylesheet wird dann dafür Sorge getragen, dass dieses Bild auch nicht von dem nachfolgenden Inhalt verdeckt wird (mit z-index) und so wirklich wie ein Hintergrundbild wirkt.

Das Stylesheet ist folgendermaßen festgelegt.

html, body {margin:0; padding:0; width:100%; height:100%;
overflow:hidden;}
#hintergrund {position:absolute; z-index:1; width:100%; height:100%;}
#fest {position:absolute; top:25px; left:10px; width:150px; z-index:10;
border:1px solid #000; padding:10px;}
#scrollbar {position:absolute; width:100%; height:100%; top:0; left:0;
overflow:auto; z-index:2;}
#inhalt {padding:5px 300px 20px 200px;} 

Erklärung: Hier wird für body UND html die Breite und die Höhe auf 100% gesetzt. z-index regelt die Sichtbarkeit.

Live-Demo zum Testen im neuen Fenster

Öffnen Sie die Demo und verändern Sie die Größe Ihres Browserfensters. Das Hintergrundbild sollte sich dann automatisch an die Größe Ihres Browserfensters anpassen. Demo herunterladen. Entpacken Sie die heruntergeladene demo.zip und starten im entpackten Verzeichnis die Datei demo.html. ™

Das Ganze wurde getestet in:

  • Internet Explorer 5.5 bis 8.0beta1
  • Firefox 2 und 3
  • Opera 9.26
  • Safari 3.1.1 (Windows-Version)

Erstveröffentlichung 22.07.2008

Weitere Beiträge:

Über Thomas Weise

Thomas Weise ist gelernter Anwendungsentwickler. Ihn zog es aber immer schon in Richtung Internet und Webentwicklung. Seine Artikel auf drweb sind Gastartikel, selbst bloggt er auf

12 Kommentare zu 100% Hintergrundbild im Browser

  1. Franz König 24. Juli 2009 at 09:45 #

    genau das was ich gesucht habe

  2. h. heute 29. August 2009 at 17:07 #

    stark.

    auch bei mir genau das was ich gesucht habe.

    thx

  3. cako 5. September 2009 at 00:25 #

    Sehr hilfreich. Danke !

  4. Christoph 6. September 2009 at 10:05 #

    Echt genial!
    Vielen Dank (der einzige Beitrag den man über Google findet, mit dem man auch was machen kann ;) )

    Liebe Grüße,
    Christoph

  5. Winfried 8. September 2009 at 12:57 #

    Danke für die Tipps.

    Trotzdem, bei mir landet der Content immer unter dem Hintergrundbild…nicht darauf. Habe das hier vorgeschlagene CSS genutzt und den Quelltext aus der Vorlage.?
    Kann jemand helfen?

    Gruß

    Winfried

  6. Sylvia 23. September 2009 at 13:12 #

    Schön, aber was mache ich, wenn ich möchte, dass das Hintergrundbild dabei nicht verzerrt wird? Also so wie hier: http://thestaffrepublic.com/

    Für Hilfe dankbar, probiere es schon eine Weile vergeblich.

    Sylvia

  7. Sven 18. Juli 2010 at 22:44 #

    sorry, hier die richtige Seite http://dev.andreaseberhard.de/jquery/superbgimage/

  8. Ray 23. Juli 2010 at 20:15 #

    Hi, ich bin noch blutiger Anfänger, suche aber genau diese Lösung. Der Stylesheet Text kommt in die Template.css nehme ich an, aber ich welche html Datei kommen die div’s? Eine selbst erstellte (wo)?
    Vielen Dank..

  9. Philipp 24. August 2010 at 18:47 #

    Grundsätzlich ist das ja ganz schön, aber mit den fixen beiden Spalten schon ziemlich speziell.

    Ich habe für diesen Zweck dann doch eher diese Seite als Basis verwendet: http://www.cssplay.co.uk/layouts/background.html

    Wollen wir hoffen dass CSS3 bald flächendeckende Verbreitung findet!

Trackbacks

  1. N - 16. Juli 2009

    [...] von mir w

  2. Hintergrundprobleme - XHTMLforum - 16. März 2011

    [...] diesen alten Trick: 100% Hintergrundbild im Browser | Dr. Web Magazin Problem: Es wird immer das gro

Hinterlasse eine Antwort

Bitte bei weiteren Kommentaren per Email benarichtigen! Auch möglich: Abo ohne Kommentar.

Spam protection by WP Captcha-Free