zoukankan      html  css  js  c++  java
  • 母板页中的引用的图片,JS,css等路径问题

    当你的母版与你的页面不在一个目录下的时候

    你母版引用的图片,css,js等将会出现路径问题而导致客户端浏览器加载失败,导致不能正确出效果。

    思路:由于纯html代码asp.net服务器不做处理,所以需要在服务器端处理一下

    1. 图片问题

    非常好解决

    <img runat="server" src="~/images/ad468x60.gif" alt="" />

    加上runat="server" ,路径使用绝对路径~/基本上就OK了。

    2. CSS文件引用

    <link rel="stylesheet" type="text/css" href="style.css" />

    这里神奇的就是link的文件的href是随着被访问文件的目录结构自动调整,说白了就考虑母版页引用的路径就可以了,其他不用费心。

    比如在母版页同目录下的一个文件夹内的一个xxx.aspx引用的母版页,那么上面的语句在客户端就自动变为

    <link rel="stylesheet" type="text/css" href="../style.css" />

    前提就是<head runat="server"></head>必须有runat="server"

     3.  JS文件的引用

    <script type="text/javascript" src="menu/jquery.min.js"></script>

    这样的话在其他目录下的页面文件,客户端肯定就引用不到了

    那么你需要这样处理

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

    <script type="text/javascript" src='<%=ResolveClientUrl("menu/ddsmoothmenu.js")%>'></script>

    这是2种方式,在客户端的路径当然也会不一样,分别是:

    <script type="text/javascript" src='/TLERP/menu/jquery.min.js'></script>

    <script type="text/javascript" src='../menu/ddsmoothmenu.js'></script>

    那么很明显ResolveClientUrl是相对路径,是比较好用的,当然ResolveUrl也有很多地方需要这样的绝对路径,其中TLERP是web应用的名字。

    另外,如果你将这样的代码放在了<head>里面,将会报错:

    控件包含代码块(即 <% ... %>),因此无法修改控件集合。

    原因我不说了,你将引用的东西放在<body>里即可,哪怕是<body>和<form>之间。

  • 相关阅读:
    前端,DJ
    打印九九乘法表
    求数组中最大值和最小值
    求数组中最大值和次大值
    数据库 Mysql 使用,优化,索引
    List、Map、Set的区别与联系
    1001个整数,每个数范围1到1000,求出重复的数字。
    一个正整数是否等于因数之和
    滑动验证 和滑动图片验证JS
    cmd中mvn命令,出现No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?
  • 原文地址:https://www.cnblogs.com/keyrratuff/p/1591235.html
Copyright © 2011-2022 走看看