2012-01-02 27 views
2

好了,所以我有一個簡單的HTML輸入片段:圖像顯示在VS設計模式,但不是在瀏覽器

<input id="txtFirstName" type="text" class="txtBox" runat="server" /> 

這是迷上了這個CSS屬性:

.txtBox 
{ 

    background: url("/Images/lu/input_bg.png") repeat-x scroll left bottom transparent; 
    border: 1px solid #E0E6EF; 
    padding: 3px; 
    width: 275px; 

} 

圖像出現在Visual Studios設計窗口中,但不是當我在瀏覽器中查看它時。是什麼賦予了?

+2

你確定部署的站點是在根你網絡服務器?可能是在本地,您將它部署到根目錄,例如http:// localhost:8012/Images,但在遠程站點上可能是http:// your_url/your_site/images。這是您需要使用相對網址或/your_site/images/lu/input_bg.png的一個潛在原因。 – dash 2012-01-02 23:16:19

+0

@dash我可以用你的建議解決問題。你應該把你的評論放入一個答案,所以我可以接受它。 – broke 2012-01-03 19:13:06

+0

很高興提供幫助。請參閱我的回答,以獲取有關如何使用Visual Studio中的內置Web服務器在本地鏡像遠程設置的建議。也沒有什麼可以阻止你從本地託管IIS(如果允許在本地機器上運行IIS!) – dash 2012-01-03 21:21:46

回答

1

通常,當您在本地進行開發時,Visual Studio將託管該網站http://localhost:port - 這是在爲Web應用程序和網站項目使用內置Web服務器時的默認設置。

當您部署到遠程站點時,它可能位於不是根站點的虛擬目錄中;所以,實際上,您的遠程應用程序URL將會像http://yourdomain.ext/your_site/一樣改變圖像的路徑。解決方案是在您的路徑中包含虛擬目錄名稱(/your_site/images/image.jpg)或使用相對路徑。

我更喜歡前者,因爲它可以保持所有路徑一致,並且可以在Visual Studio中在本地進行模擬。

對於Web應用程序項目,請參閱解決方案屬性(右鍵單擊解決方案資源管理器中的解決方案節點並選擇屬性) - Web(左側的選項卡) - 查找虛擬路徑文本框並根據需要進行更改(例如, /'到'/ your_site')

對於Web站點項目,請單擊解決方案資源管理器中的解決方案節點,然後查看屬性對話框。最後一個選項是虛擬路徑。

+0

這是個好建議。謝謝 – broke 2012-01-04 16:38:39

1

嘗試更新網址。

background: url("./Images/lu/input_bg.png") repeat-x scroll left bottom transparent; 
+0

我做了,仍然不起作用 – broke 2012-01-02 22:54:35

+0

更新了我的答案,看看是否有任何區別。 – 2012-01-02 23:16:37

1

檢查服務器上的路徑名。你可以通過yoursite.com/Images/lu/input_bg.png訪問圖片嗎?它真的是圖像而不是圖像嗎?

+0

是的,我可以訪問圖像。 – broke 2012-01-02 23:08:18

+0

@broke然後我們需要一個鏈接。 – Rob 2012-01-02 23:11:54

0

我有同樣的問題。我的圖像沒有顯示在瀏覽器上然後我解決了它。 我將自己圖片的路徑的兩點begining喜歡這個

<img src="../Images/icon48x48.png" alt="myLogo" width="48" height="48" /> 
0

您也可以清除瀏覽器的緩存。我有一個問題,我使用css文件設置DIV的背景,並且圖像只會顯示在Firefox或IE中。在清除Chrome緩存並重新啓動網站後,圖像出現。

如果我的圖片位於:mysite的/ App_Themes文件/圖片

和我的CSS文件是這樣的App_Themes文件引用中:圖片/ myfile.css

相關問題