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:
- 5 Ideen wie Sie wiederkehrende Arbeitsschritte & Marketingprozesse gewinnbringend im Internet automatisieren! Ein Gastbeitrag von Robert Nabenhauer.
- Wachstum durch Facebook-Gewinnspiele: Wie Sie über Facebook virale Gewinnspiele & eine schnell wachsende Fangemeinde aufbauen
- Wie Sie aufmerksamkeitsstarke Prelaunch-, Launch- und Relaunch-Szenarien aufbauen und dabei Viralität, Spannung & Kaufkraft erzeugen
- Wie Sie waschechte Iphone-Apps mit PhoneGAP entwickeln, um am lukrativen App-Markt mitzumischen
- Wie Sie Ihr Shop-Sortiment so präsentieren, dass der Kunde in Zukunft mehr findet und eher kauft! Ein Gastbeitrag von Nicolas Schmidt-Voigt.
- 11 faszinierende BuddyPress-Plugins, um kostenlos aus WordPress ein soziales Netzwerk zu zaubern
- Die Vorboten einer neuen Internet-Industrie! Ein exklusiver Rückblick & Blick hinter die Kulissen der Clickbank-Exchange 2011 in New York.


genau das was ich gesucht habe
stark.
auch bei mir genau das was ich gesucht habe.
thx
Sehr hilfreich. Danke !
Echt genial!
)
Vielen Dank (der einzige Beitrag den man über Google findet, mit dem man auch was machen kann
Liebe Grüße,
Christoph
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
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
auch dort wird das HG-Bild verzerrt – wenn man Javascript abschaltet. Ohne Verzerrung geht’s mit jQuery und SuperbgImage, siehe http://bdewong.blogspot.com/2009/06/jquery-social-bookmarking-plugin.html
sorry, hier die richtige Seite http://dev.andreaseberhard.de/jquery/superbgimage/
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..
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!