zoukankan      html  css  js  c++  java
  • 母板页中的图片路径及页面链接路径设置

    昨天写好一个应用程序,在localhost跑都OK的,发布到IIS后,别人一访问图片不显示,超链接的指向都找不到页面,

    F12一看,路径都有问题,不会吧,我写的都是相对地址啊。

    母版页中的图片我用的都是img,链接用的是a,

    于是第一种方法就是将它们换成服务器端控件,加个runat="server",

    这个解决办法会起作用是因为ASP.NET根据这一信息创建一个HtmlImage服务器控件,这个对象在母版页的Page对象实例化后创建,

    此时,ASP.NET把所有路径解释为相对于母版页的位置。你可以使用同样的技术来修复<a>标签对其他页面的链接。

    你还可以使用根路径语法,并用"~"字符作为URL的开头。

    例如,下面这个<img>标签如果前面加"~/",则毫无歧义地指向网站的images文件夹中的butClose.gif文件。

    遗憾的是,这种语法只对服务器端控件有效。

    如果你要对普通的HTML产生同样的效果,你需要在链接里包含域名的完整的相对路径。这样的HTML代码难看且不可移植,所以不推荐使用。

    <a runat="server" href="~/Data/xhEditorDemo.aspx">xhEditor</a>

    <img id="barImg" runat="server" src="images/butClose.gif" alt="关闭/打开左栏"/>

    如果嫌换成服务器端后写js脚本时ID写起来麻烦,

    就用第二种方法ResolveUrl,如:

    <img id="barImg" src='<%=ResolveUrl("images/butClose.gif")%>' alt="关闭/打开左栏" />

    母版页中引入CSS或JS文件,也类似这样用:

    <script src='<%=ResolveUrl("js/jquery-1.4.4.min.js")%>' type="text/javascript"></script>

    另外一种是在masterpage里某处使用了background: url(...)这样的写法,

    不废话,直接移到外部CSS文件中,最好CSS文件夹,images文件夹,masterpage文件三者在同一目录下(根目录),

    剩下就是引入这个CSS文件,把你刚才写background: url(...)的地方换成class="..."。

    然后问题应该就解决了,是滴吧!




  • 相关阅读:
    array_unique() 去重复
    datagrid导出数据
    $this->success传递数据
    二分+暴力状压+桶——cf1288D
    乱搞+虚假莫队?+树状数组——cf1288E
    字符串+置换+莫队离线处理——cf1290B
    扩展域并查集+图论——cf1290C 好题
    换根dp+暴力+预处理+记忆化搜索——cf1292C好题!
    线段树,思维——cf1295E
    暴力,贪心——cf1292B
  • 原文地址:https://www.cnblogs.com/pfs1314/p/2244430.html
Copyright © 2011-2022 走看看