CSS Pozadí se v IE nenačte - proč?
Zdravím, chtěl bych Vás poprosit o radu, vytvářím webové stránky a čas od času se u mích stránek objeví problém s pozadím... V IE >= 8 a někdy i staré opeře se mi nenačítá pozadí stránky a vše je bílé... ve Firefoxu a chrome je vše OK...
Ptal jsem se už spousty kamarádů, dokonci i pár těch, kteří se tvorbou stránek zabívají X let a nikdo mi nedokázal říct proč, nebo co dělám špatně.
CSS kód na pozadí je
body {
background-image: url('../images/top/top-menu-bg.png'), url('../images/bg/bg1.png'), url('../images/bg/bg.png');
background-color: #000, #000, #000;
background-repeat: repeat-x, repeat-x, repeat;
background-position: center top,center 126px, center;
font-family: Verdana, Geneva, sans-serif;
color: #FFF;
font-size: 12px;
}
Jedná se o stránku bowling.eessencia.cz a také můj starší web eldenlore.cz
U stránky eldenlore mi IE8 nabídne volbu "kompaktní zobrazení pro starší prohlížeče" a pozadí se zviditelní, to sice pomůže, ale pořád nevím kde dělám tu fatální chybu.
Děkuji všem za snahu a odpovědi.
Asi preto že používaš funkčnosť CSS 3 ... a IE nepodporuje všetky featurinky... Mal by si robiť len s jedným pozadím alebo nejaké DIV (layery) backgroundovať.
Myslíš jedno pozadí v body? to nepomůže, když se podíváš na eldenlore.cz tam je pozadí jenom jedno...
pokud si načteš v IE bowlingdubina.cz tak tam se zase nechtějí zobrazit ty bubliny nahoře, což taky nechápu, ty stránky jsem teda nekódoval já, kódoval je kamarád před 2ma lety, a to on vystudoval IT obor, a pracuje s weby přes 7 let...
Ja robím weby tiež niekoľko rokov a iba pred pár mesiacmi sme zaviedli, že budeme do stránok implementovať pár vlastností s CSS 3 (kvôli IE).
Na stránke bowling.eessencia.cz máš viac pozadí:
Na eldenlore.cz ide pozadie aj v IE 9 a v compatility mode (čiže v IE7).
Já vím, že tam mám více pozadí, ale v tom problém nevidím, jak říkám to samé mi dělá už rok skoro každý web co kóduju, nikdo mi neřekl přesnou příčinu. Že prý má IE špatné vykreslovací standardy v prohlížeči a nemám si s tím dělat hlavu. Ale hlavu si dělám, protože i přesto, že je IE šmejd, používá ho hodně lidí.
Jinak tento styl pro více pozadí na BG opakující se do stran mě naučil právě ten kamarád, který se tomu věnuje dlouho, říkal, že i když to není validní, je to velmi používané a s mojim problémem to nemá nic za dočinění.
Nemůže být chyba v kódování css? Může se to zdát prasácké a hnusné, ale jedu ANSI + cp1250 a zatím sem nenašel důvod přecházet k UTF8.
Snad mě od toho odrazuje můj oblíbený editor Notepad++ ve kterém UTF8 blbne a zakomponovává do kódu neviditelné znaky.
Kamarád prostě neodzkoušel funkčnost ve všech prohlížečích.
S vymoženostmi CSS3 se velmi dobře pracuje, ale holt takový IE 8 je neumí (klasickým případem jsou zaoblené rohy ( rounded corners )).
Pozadí eldenlore.cz mi nechodí ani v Opeře.
a dá se to nějak fixnout pro IE a Operu?
Myslel jsem, že background-image a background-color jsou základy, které byly ještě v CSS1 a i v 2.. je to nějaké podivné
Jsou tam použity mj. multiple backgrounds ( viz Google ).
Ty se dle mých zkušeností v IE8 nezobrazí, zkusil jsem teď tento příklad :
http://www.css3.info/preview/multiple-backgrounds/
Asi bych (já osobně) začal pokusy s jejich náhražkou (skládat obrázky apod.).
na tom starším webu eldenlore.cz máš v hlavičce relativní odkaz na css soubor cascade.css (výsledná URL cascade.css) a v něm relativně odkazuješ na obrázek o úroveň výš - ta tam ale není! ../images/background.png (výsledná URL background.png)
což nějak záhadně asi web server upraví na background.png
Nevím, jestli v tomto případě nemůže být problém v adrese...
Edit: teď jsem to zkusil v MSIE6 a pozadí se zobrazilo... tak to bude v něčem jiném...
Background-image je tedy v body CSS2 a CSS nevalidní? proto se ve starších prohlížečích bg nezobrazí?
Nejsem si vědom toho, že by někdo opakující se pozadí dělal jinak než přes body. S tím, že nezáleží jestli jsem použil multiple background a nebo je tam jen jedno. U obou mi to blbne.