母板页中的图片路径及页面链接路径设置
昨天寫好一個(gè)應(yīng)用程序,在localhost跑都OK的,發(fā)布到IIS后,別人一訪問圖片不顯示,超鏈接的指向都找不到頁(yè)面,
F12一看,路徑都有問題,不會(huì)吧,我寫的都是相對(duì)地址啊。
?
母版頁(yè)中的圖片我用的都是img,鏈接用的是a,
于是第一種方法就是將它們換成服務(wù)器端控件,加個(gè)runat="server",
這個(gè)解決辦法會(huì)起作用是因?yàn)锳SP.NET根據(jù)這一信息創(chuàng)建一個(gè)HtmlImage服務(wù)器控件,這個(gè)對(duì)象在母版頁(yè)的Page對(duì)象實(shí)例化后創(chuàng)建,
此時(shí),ASP.NET把所有路徑解釋為相對(duì)于母版頁(yè)的位置。你可以使用同樣的技術(shù)來修復(fù)<a>標(biāo)簽對(duì)其他頁(yè)面的鏈接。
?
你還可以使用根路徑語(yǔ)法,并用"~"字符作為URL的開頭。
例如,下面這個(gè)<img>標(biāo)簽如果前面加"~/",則毫無歧義地指向網(wǎng)站的images文件夾中的butClose.gif文件。
遺憾的是,這種語(yǔ)法只對(duì)服務(wù)器端控件有效。
如果你要對(duì)普通的HTML產(chǎn)生同樣的效果,你需要在鏈接里包含域名的完整的相對(duì)路徑。這樣的HTML代碼難看且不可移植,所以不推薦使用。
<a runat="server" href="~/Data/xhEditorDemo.aspx">xhEditor</a><img id="barImg" runat="server" src="images/butClose.gif" alt="關(guān)閉/打開左欄"/>
如果嫌換成服務(wù)器端后寫js腳本時(shí)ID寫起來麻煩,
就用第二種方法ResolveUrl,如:
<img id="barImg" src='<%=ResolveUrl("images/butClose.gif")%>' alt="關(guān)閉/打開左欄" />母版頁(yè)中引入CSS或JS文件,也類似這樣用:
<script src='<%=ResolveUrl("js/jquery-1.4.4.min.js")%>' type="text/javascript"></script>另外一種是在masterpage里某處使用了background: url(...)這樣的寫法,
不廢話,直接移到外部CSS文件中,最好CSS文件夾,images文件夾,masterpage文件三者在同一目錄下(根目錄),
剩下就是引入這個(gè)CSS文件,把你剛才寫background: url(...)的地方換成class="..."。
然后問題應(yīng)該就解決了,是滴吧!
轉(zhuǎn)載于:https://www.cnblogs.com/pfs1314/archive/2011/11/10/2244430.html
總結(jié)
以上是生活随笔為你收集整理的母板页中的图片路径及页面链接路径设置的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python生成Windows可执行ex
- 下一篇: java 打包jar文件以在没有安装J