2012-12-25 8 views
16

Mam plik HTML z podkatalogiem o nazwie img z obrazem o nazwie debut_dark.png. W moim pliku CSS mam:Obraz tła CSS nie wyświetlany

body { 
    background: url(/img/debut_dark.png) repeat 0 0; 
} 

Plik HTML ma znacznik body i odpowiednio uwzględnia plik CSS. Wiem na pewno, że plik CSS jest poprawnie zawarty, ponieważ wszystko inne jest poprawnie sformatowane.

Obraz tła nie jest wyświetlany, widzę tylko białe tło. Wszelkich pomysłów, jak to naprawić, a nawet jak to debugować?

+1

Sprawdź, czy adres URL obrazu jest prawidłowy. Otwórz narzędzia dla programistów i zobacz kartę sieciową, twój debiut_dark.png powinien być tam wymieniony. Sprawdź, czy został załadowany w ogóle –

+3

Czy jesteś pewien co do ścieżki i nazwy obrazu? Sprawdź z firebugem – midstack

+0

Jeśli chcesz debugować coś (HTML/JS/CSS) - zawsze możesz otworzyć jakieś narzędzie programistyczne dostępne dla wszystkich nowoczesnych przeglądarek (F12 zwykle wystarcza, ale dla FF może być konieczne zainstalowanie Firebuga). –

Odpowiedz

12

Według ścieżki pliku CSS, ja przypuszczam, że jest w tym samym katalogu, strony HTML, trzeba zmienić url następująco:

body { background: url(img/debut_dark.png) repeat 0 0; } 
+0

Zrobiłem i wciąż widzę białe tło. – darksky

+0

@Darksky Gdzie jest twój plik CSS? – SaidbakR

+21

Mam to. Ścieżka musi być względna do pliku CSS (oczywiście). Dzięki! – darksky

2

Upewnij się, że ciało ma wysokość, f Ex:

body { 
    background: url(/img/debut_dark.png) repeat; 
    min-height: 100%; 
} 
+0

Zrobiłem - to nie zadziałało – darksky

10

należy używać tak:

 

     body { 
      background: url("img/debut_dark.png") repeat 0 0; 
     } 

     body { 
      background: url("../img/debut_dark.png") repeat 0 0; 
     } 

     body { 
      background-image: url("../img/debut_dark.png") repeat 0 0; 
     } 

lub spróbuj służb kontrolnych Reguły CSS używające narzędzia Firebug Firefox.

+0

Mam to ... To musiał być adres URL ("../ img/debut_dark.png"). Właśnie zdałem sobie sprawę, że ścieżka musi być względna względem pliku CSS, a nie pliku HTML (oczywiście). – darksky

+0

ok. ale @Darksky zaznaczyłeś właściwą odpowiedź na semsem. Rozwiązałem twój problem :( –

0

Używam osadzonych CSS na komputerze lokalnym. Umieściłem plik atom.jpg w tym samym folderze co mój plik html, a następnie ten kod działał:

background-image:url(atom.jpg); 
3

Mam ten sam problem. Ale to działa prawidłowo dla mnie

background: url(../img/debut_dark.png) repeat 
2

wiem, że to nie dotyczy dokładnie przypadek PO, ale dla innych, pochodzących od Google nie zapomnij spróbować display: block; na podstawie typu elementu. Miałem obraz w <i>, ale nie był wyświetlany ...

-1

Zasadniczo problem dotyczy ścieżki do pliku. Przedni ukośnik na początku adresu URL powoduje, że szuka pliku w katalogu głównym. Usuwając to, będzie to ścieżka odnosząca się do tego pliku css - tak: background-image: url(img/debut_dark.png);

Jeśli używasz Atoma, kopiowanie ścieżki projektu obrazu czasami obejmuje ukośnik w skopiowanej ścieżce, więc bądź ostrożny.

+1

Nie niszczyć swojego postu, co może skutkować [odpowiedzią na pytanie] (// stackoverflow.com/help/answer-bans). Publikując w sieci Stack Exchange, przyznałeś -rezybowalne prawo SE do dystrybucji tych treści (na podstawie licencji [CC BY-SA 3.0] (// creativecommons.org/licenses/by-sa/3.0/)) Zgodnie z polityką SE każdy wandalizm zostanie cofnięty. –

0

Pomyślałem, że ten atrybut wyświetla obraz, gdy w nim jest dostępna pełna lokalizacja. Po prostu przesłałem ten obraz na mój serwer i powiązałem lokalizację tego obrazu w obrazie tła: url ("xxxxx.xxx"); atrybut i nareszcie zadziałało, ale jeśli nie masz serwera, spróbuj wpisać pełną lokalizację obrazu w atrybucie, przechodząc do właściwości tego obrazu. Chociaż używałem tego atrybutu w tagu pliku HTML, ale na pewno działa on również na pliku CSS. Jeśli ta metoda nie działa, spróbuj przesłać obraz w Internecie, np. Zachowanie, facebook, instagram itp. I sprawdź obraz i skopiuj tę lokalizację do atrybutu. Hope To zadziała