zurück zur Startseite
  


Zurück XHTMLforum > (X)HTML und CSS > CSS
Seite neu laden Vertikalausrichtung von Background im Firefox

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 26.07.2006, 11:49
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 26.07.2006
Ort: Berlin
Beiträge: 5
rutschpartie befindet sich auf einem aufstrebenden Ast
Standard Vertikalausrichtung von Background im Firefox

Korrektur des Titels: es geht um die horizontale Ausrichtung des Backgrounds. *Verzeihung -> leider kein Edit für Titel*

Hallo zusammen,

ich habe bei einem zentrierten CSS-Layout ein Problem, dass ich zunächst kurz beschreiben will (meine Suche in den bisherigen Threads war leider erfolglos):
Das Layout ist auf eine Breite von 1024px konzipiert, soll aber auch bei 800px Breite (mit horizontalem Scrollbalken) darstellbar sein.
Den gesamten Content der Seite konnte ich für alle Auflösungen sauber positionieren - nur die Hintergrundgrafik im "Body" macht Zicken. Das Problem äußert sich nur im Firefox in der Form, dass wenn ich das Layout in der Breite zusammenschiebe, mein Hintergrundmotiv bei einer Unterschreitung von exakt 1024px Breite nach links rausgeschoben wird. Im Internet Explorer hingegen bleibt das Hintergrundbild fest an der linken Browserkante "kleben" - und so soll es sein.

Der Code im body sieht wie folgt aus:

body {
margin: 0px;
padding: 0px;
background-color: #ffffff;
/*background-attachment: fixed;*/
background-image: url(../images/Hintergrund.jpg);
background-position: center top;
background-repeat: no-repeat;
}

Der DIV-container, in dem das gesamte Layout drin sitzt, sieht so aus:

div#container {
width: 1000px;
margin: 0px auto;
}

"background-attachment" habe ich versucht (und auskommentiert wie man sieht), da es keine Änderung im Firefox brachte.
Lediglich wenn ich "background-position" weglassen, erziele ich mit "background-attachment" einen festen Hintergrund - der ist dann aber linksbündig und nicht zentriert, wie er sein soll.

Hat schonmal jemand dieses Problem gehabt? Über Antworten würde ich mich sehr freuen.
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 26.07.2006, 12:19
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 11.01.2005
Ort: Berlin
Beiträge: 2.149
mazzo wird schon bald berühmt werden
Standard

Zitat:
Zitat von rutschpartie
Das Layout ist auf eine Breite von 1024px konzipiert, soll aber auch bei 800px Breite (mit horizontalem Scrollbalken) darstellbar sein.
Ein Layout nur für vorgegebene Auflösungen ist leider häufig und auch nicht optimal. Dies mit kleinerer Auflösung mittels Querscrollbalken anzusehen, ist aber keine Entwickler-Leistung, das machen die Browser von selbst

Zitat:
Zitat von rutschpartie
Den gesamten Content der Seite konnte ich für alle Auflösungen sauber positionieren -
Ich denke, das Layout ist auf 1024px festgelegt, wieso auf einmal "alle Auflösungen"?

Zitat:
Zitat von rutschpartie
nur die Hintergrundgrafik im "Body" macht Zicken.
Der Body passt sich an die Viewportgröße an. wenn diser kleiner wird, ist "center" woanders als bei breiterem Body. Warum der IE wieder anders denkt, weiss ich nicht.
Gib das Bild doch als Hintergrund des "container" an. Oder mach das Bild 1024pixel breit mit "leerem" Rand an den Seiten, wenn Du eh schon ein fixes Layout hast. Dann kannst Du es auch mit left top positionieren.

PS: So geht das kürzer im CSS:
Code:
background: #FFF url(../img/bild.jpg) center top no-repeat;
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 26.07.2006, 12:39
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 26.07.2006
Ort: Berlin
Beiträge: 5
rutschpartie befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von mazzo
Ein Layout nur für vorgegebene Auflösungen ist leider häufig und auch nicht optimal. Dies mit kleinerer Auflösung mittels Querscrollbalken anzusehen, ist aber keine Entwickler-Leistung, das machen die Browser von selbst
Ich wollte damit auch nur klar machen, dass dieses Problem nur dann auftaucht, wenn ein horizontaler Scrollbalken vorhanden ist (also bei weniger als 1024px Browserbreite).

Zitat:
Ich denke, das Layout ist auf 1024px festgelegt, wieso auf einmal "alle Auflösungen"?
Da habe ich mich schlecht ausgedrückt. Das Layout ist für eine minimale Auflösung von 1024px in der Breite optimiert - funktioniert aber, ohne das sich an der Zentrierung der Elemente etwas verschiebt - auch für höhere Auflösungen.

Zitat:
Der Body passt sich an die Viewportgröße an. wenn diser kleiner wird, ist "center" woanders als bei breiterem Body. Warum der IE wieder anders denkt, weiss ich nicht.
Gib das Bild doch als Hintergrund des "container" an. Oder mach das Bild 1024pixel breit mit "leerem" Rand an den Seiten, wenn Du eh schon ein fixes Layout hast. Dann kannst Du es auch mit left top positionieren.
zu 1. das Hintergrundbild in den container zu setzen, habe ich versucht. Leider wird das Hintergrundbild dann - aus mir unerklärlichen Gründen - im Firefox gar nicht mehr angzeigt (im IE nachwievor).

zu 2. das Bild ist fast 1024px breit! (1013px um genau zu sein)
Das Layout ist ja auch nicht komplett "fix". Es sitzt zentriert für alle Auflösungen. Erst bei Unterschreitung der 1024px in der Breite bleibt alles linksbündig fest stehen. (Außer eben das Hintergrundmotiv im Firefox, dass sich nach links "rausschiebt".)

Zitat:
PS: So geht das kürzer im CSS:
Code:
background: #FFF url(../img/bild.jpg) center top no-repeat;
Kurzschreibweise ist mir geläufig - danke trotzdem. Der Übersichtlichkeit halber fand ich es gut, dass hier aufzusplitten.
Mit Zitat antworten
  #4 (permalink)  
Alt 26.07.2006, 12:41
Benutzerbild von Boris
Tanzender Webentwickler
XHTMLforum-Kenner
 
Registriert seit: 29.07.2004
Ort: Kornwestheim / Stuttgart
Beiträge: 4.925
Boris ist ein sehr geschätzer MenschBoris ist ein sehr geschätzer MenschBoris ist ein sehr geschätzer Mensch
Standard

Zeig uns doch einfach mal das Beispiel online
__________________
My software never has bugs. It just develops random features ...

» DevShack - die Website des freien Webentwicklers Boris Bojic
Mit Zitat antworten
  #5 (permalink)  
Alt 26.07.2006, 12:59
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 26.07.2006
Ort: Berlin
Beiträge: 5
rutschpartie befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Boris
Zeig uns doch einfach mal das Beispiel online
Der Code existiert momentan nur lokal. Außerdem geht es um eine Website, die ich nicht vor Veröffentlichung zeigen darf - da sind mir leider die Hände gebunden. Habe aber mal zwei Screens angefertigt, die mein Problem (hoffentlich) verdeutlichen.
Angehängte Grafiken
Dateityp: gif screen_firefox.gif (17,4 KB, 12x aufgerufen)
Dateityp: gif screen_ie.gif (17,6 KB, 12x aufgerufen)
Mit Zitat antworten
  #6 (permalink)  
Alt 26.07.2006, 13:30
Benutzerbild von heiko_rs
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 18.09.2005
Ort: Berlin
Beiträge: 9.848
heiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblick
Standard

FX verschiebt tatsächlich. Das wirst Du nur lösen können, indem Du dem Container das Bild gibst. Wenn er es dann nicht anzeigt, ist es z.B. möglich, daß er gar nicht "vorhanden" ist, weil alles innerhalb floatet und er die Floats nicht einschließt.
Mit Zitat antworten
  #7 (permalink)  
Alt 26.07.2006, 13:37
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 11.01.2005
Ort: Berlin
Beiträge: 2.149
mazzo wird schon bald berühmt werden
Standard

Zitat:
Zitat von heiko_rs
Wenn er es dann nicht anzeigt, ist es z.B. möglich, daß er gar nicht "vorhanden" ist, weil alles innerhalb floatet und er die Floats nicht einschließt.
Also clearen! Siehe auch die FAQ dazu.

Du erkennst das "verschwinden" schnell, wenn Du dem Container ne Hintergrundfarbe oder nen Border gibst, dann sind dessen Ausdehungen klar.
Mit Zitat antworten
  #8 (permalink)  
Alt 26.07.2006, 13:42
Benutzerbild von heiko_rs
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 18.09.2005
Ort: Berlin
Beiträge: 9.848
heiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblick
Standard

Zitat:
Zitat von mazzo
Also clearen!
Genau, soweit wollte ich noch gar nicht gehen Aber es sieht tatsächlich so aus, als könnte die Float-Variante zutreffen, da der FX das Bild nicht anzeigt, der IE dagegen schon (der IE schließt Floats ja ein, wenn deren umgebendes Element "Layout" hat - hier: width: 1000px; -, der FX dagegen nicht).

Geändert von heiko_rs (26.07.2006 um 13:47 Uhr)
Mit Zitat antworten
  #9 (permalink)  
Alt 26.07.2006, 14:41
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 26.07.2006
Ort: Berlin
Beiträge: 5
rutschpartie befindet sich auf einem aufstrebenden Ast
Standard

Danke schonmal vorab für die bisherigen Antworten.

Zitat:
Zitat von heiko_rs
FX verschiebt tatsächlich. Das wirst Du nur lösen können, indem Du dem Container das Bild gibst. Wenn er es dann nicht anzeigt, ist es z.B. möglich, daß er gar nicht "vorhanden" ist, weil alles innerhalb floatet und er die Floats nicht einschließt.
Gut, ich habe das Hintergrundbild aus dem Body rausgenommen und stattdessen in eine eigene DIV gepackt, mit der ich den Container umschlossen habe. Im IE funktioniert das wunderbar - im Firefox nicht (und im Opera 8.52 übrigens auch nicht), da der Hintergrund nicht angezeigt wird.

Zitat:
Zitat von mazzo
Also clearen! Siehe auch die FAQ dazu.
Ich habe mir jetzt die FAQ zum Clearing zu Gemüte geführt. Nun habe ich in etwa sowas gebaut:

Code:
<div id="hintergrundbild">

   <div id="container">

      ... Content ...

   </div>

   <div style="clear:both;"></div>

</div>
Ergebnis: die Hintergrundgrafik wird nun in allen von mir getesteten Browsern (IE, Firefox, Opera) gezeigt. Das Problem des Zusammenschiebens besteht allerdings nachwievor. Wie kann ich dem jetzt Herr werden?
Mit Zitat antworten
Sponsored Links
  #10 (permalink)  
Alt 26.07.2006, 14:58
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 11.01.2005
Ort: Berlin
Beiträge: 2.149
mazzo wird schon bald berühmt werden
Standard

das "verschieben" des Hintergrundbildes geschieht auch noch, wenn es Hintergrund von #container ist?
Mit Zitat antworten
Sponsored Links
Antwort

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Navigation positionieren maybebabe CSS 4 08.04.2013 22:17
Ausrichtung Kalender greece4u CSS 20 14.05.2012 13:32
Inline Listenelement wird nicht richtig im background befüllt SteveB CSS 3 28.04.2011 20:41
Float-Reihenfolge? wolf1985 CSS 0 21.08.2008 01:35
Mozilla zeigt DIV zu oft an cracki CSS 6 09.03.2008 15:22


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:57 Uhr.