Dr.Web - Das Online Magazin für Seitenbetreiber

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 (1280x1024 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. (tm)

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

Über Thomas Weise

GravatarThomas 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
Website. Weitere Beiträge für Dr. Web: 10

Verwandte Artikel

Bookmarken! Diese Icons verlinken auf Bookmark Dienste bei denen Nutzer neue Inhalte finden und mit anderen teilen können.
  • MisterWong
  • del.icio.us
  • TwitThis
  • Hype
  • StumbleUpon
  • Facebook
  • Google Bookmarks
  • Linkarena
abstimmenabstimmenabstimmenabstimmenabstimmen (No Ratings Yet)

10 Kommentare zu “100% Hintergrundbild im Browser”

  1. 1
    24.07.2009 09:45

    genau das was ich gesucht habe

    Antwort

  2. 2
    29.08.2009 17:07

    stark.

    auch bei mir genau das was ich gesucht habe.

    thx

    Antwort

  3. 3
    5.09.2009 00:25

    Sehr hilfreich. Danke !

    Antwort

  4. 4
    6.09.2009 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

    Antwort

  5. 5
    8.09.2009 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

    Antwort

  6. 6
    Sylvia
    23.09.2009 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

    Antwort

    • Sven
      Juli 18th, 2010 22:43

      auch dort wird das HG-Bild verzerrt - wenn man Javascript abschaltet. Ohne Verzerrung geht's mit jQuery und SuperbgImage, siehe http://bdewong.blogspot.com/20

  7. 7
    Sven
    18.07.2010 22:44

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

    Antwort

  8. 8
    Ray
    23.07.2010 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..

    Antwort

Trackbacks

  1. N

Meine Meinung

Bitte beachten Sie: Werbung und Spam sind unerwünscht und können eine Rechnung zur Folge haben. Woher kommen die Bilder neben den Kommentaren?