Der Dicki: für mehrere Frames nur ein Hintergrundbild

Beitrag lesen

Hallihallo!

Man kann, wie Du ja mit Deinem Versuch festgestellt hast, einzelnen Frames je ein Hintergrundbild zuweisen, nicht aber einem kompletten Frameset.
Das liegt daran, daß für den Browser jedes Frame ein komplett eigenständiger Anzeigebereich, quasi ein eigenes Fenster ist.

Wenn man es theoretisch machen will, könnte man auch argumentieren, daß ein Hintergrundbild immer einem BODY zugewiesen wird, ein Frameset jedoch per Definition keinen BODY haben darf...

Es gibt nun mehrere Möglichkeiten, mit denen Du Dir helfen kannst:

  1. (Das werden Dir hier wahrscheinlich die Meisten raten)
       Verzichte auf Frames. Dank der Serverseitigen Techniken wie PHP
       und SSI ist man in den meisten Fällen nicht mehr auf Frames angewiesen,
       zumindest nicht mit dem Argument der Tipparbeit.
       SelfHTML bietet auch Seiten zu diesen Themen an.

Das Ganze funktioniert dann so, daß Du einzelne Dateien auf dem
   Server hinterlässt, die der Server dann vor dem Ausliefern in eine
   einzige Datei zusammenbaut.

Besonders sinnvoll wäre in diesem Zusammenhang die Benutzung von
   Ebenen (Layern / Divs), die man sogar noch viel flexibler positionieren
   kann als Frames...

  1. (Falls Du aus irgendwelchen Gründen nicht auf Frames verzichten kannst/ willst)
       Du kannst ohne Probleme eine CSS- Angabe zur Quelle des Hintergrundbildes
       in eine externe CSS- Datei auslagern.
       Für das korrekte Ansprechen dieser externen CSS-Datei solltest Du
       übrigens die link-Attribute in Anführungszeichen setzen:
       <link href="style.css" rel="stylesheet" type="text/css">
       Die title- Angabe ist unnötig...
       In dieser CSS- Datei kannst Du wie gehabt die Quelle des Hintergrundbildes
       einbauen.
       Nun erweiterst Du Deine Dokumente, die im Frame angezeigt werden sollen,
       noch um einen "internen" CSS- Block im <head>- Bereich:
       <style type="text/css">
         body {
           background-position: ......;
         }
       </style>
       Siehe dazu http://selfhtml.teamone.de/navigation/css.htm#hintergrund

Die Werte für background-position setzt Du nun so, daß Du drei
   Ausschnitte Deines Hintergrundbildes zu einem großen zusammensetzt.

Das funktioniert leider nur mit Framesets, in denen die einzelnen
   Frames eine _feste_ Größe haben.
   Solltest Du Angaben wie z.B.
      cols="30%,*"
   in Deinem Frameset benutzen, wird das nicht funktionieren, zumindest nicht
   für jede Browserfenstergröße.
   In dem Fall sähe ich keine Lösung für Dein Problem.

Ich hoffe, damit konnte ich Dir ein Wenig weiterhelfen...

Viele liebe Grüße,
Der Dicki