2011-06-19 231 views
7

我想在CSS中使用背景圖片,但即使我給出了圖像的完整路徑,但它不起作用。 Firebug顯示「無法加載給定的URL」。 我確定該文件夾中沒有權限問題。 我的CSS類是CSS背景圖片URL無法加載

body { 
background: url("H:/media/css/static/img/sprites/buttons-v3-10.png") repeat-x scroll left -800px #DCDCDC; 
color: black; 
font: 13px/1.2em arial,helvetica,clean,sans-serif; 
height: 100%; 
position: relative; 
} 

什麼可能導致這個問題?

回答

23

您正在使用本地路徑。那真的是你想要的嗎?如果是,你需要使用file:///前綴:

file:///H:/media/css/static/img/sprites/buttons-v3-10.png 

顯然,這將在本地計算機上才起作用。

而且,在許多現代瀏覽器中,只有當頁面本身也位於本地文件路徑上時,這才起作用。由於安全原因,從遠程尋址本地文件(http://,https://)已被廣泛禁用。

9

源的位置應該是URL(相對於CSS文件或全網位置),而不是一個文件系統的完整路徑,例如:

background: url("http://localhost/media/css/static/img/sprites/buttons-v3-10.png"); 
background: url("static/img/sprites/buttons-v3-10.png"); 

或者,你可以嘗試使用file:///協議前綴。

10

我知道這真的很舊,但我發佈我的解決方案,因爲谷歌找到這個線程。

background-image: url('./imagefolder/image.jpg'); 

這就是我所做的。兩個點意味着鑽回一個接近根的目錄​​「..」,而一個「。」應該意味着開始你在哪裏,就好像它是根。我遇到過類似的問題,但補充說,爲我解決了這個問題。你甚至可以離開「。」在它上傳到你的主機時,因爲它應該工作正常,只要你的目錄設置是完全一樣的。