我有一个显示项目列表的.aspx页面。目前,它显示www.site.com/Catalog.aspx?mid=228
,需要www.site.com/CellPhone/blackbery/sprint/Q10.aspx
。所有项目都显示在DataList和on按钮上,单击超链接重定向到Catalog.aspx
,查询字符串'id'即设备ID。
现在,我已将LinkButton的URL动态构建为'CellPhone/blackbery/sprint/228'
,也为其他项目构建。
以上链接重定向和网址更改但css受到干扰。 &安培;我想动态重写所有链接而不是硬编码。
css参考:
<link href="css/layout.css" rel="stylesheet" type="text/css" />
<link href="css/reset_font_grid.css" rel="stylesheet" type="text/css" />
<link href="css/buttons.css" rel="stylesheet" type="text/css" />
<link href="css/inner-pages.css" rel="stylesheet" type="text/css" />
<link href='http://fonts.googleapis.com/css?family=Raleway' rel='stylesheet' type='text/css'>
Catalog.aspx
<asp:HyperLink ID="HyperLink6" runat="server" NavigateUrl="/cellphone/blackberry/sprint/228.aspx">Show Cellphones asdfsdf</asp:HyperLink>
Global.asax中
<%@ Application Language="C#" %>
<%@ Import Namespace="System.Web.Routing" %>
<script runat="server">
void Application_Start(object sender, EventArgs e)
{
// Code that runs on application startup
RegisterRoute(System.Web.Routing.RouteTable.Routes);
}
void RegisterRoute(RouteCollection routes)
{
//http://aspsnippets.com/Articles/How-to-hide-remove-ASPX-extension-in-URL-in-ASPNet.aspx
routes.MapPageRoute("44", "{cat}/{carrier}/{devices}/{id}.aspx", "~/Catalog.aspx");
}
}
一切正常但只是页面上的css&amp;图片未应用!
答案 0 :(得分:2)
只更改href
相对于CSS
的{{1}}而不是当前位置,
更改
root
到
<link href="css/layout.css" rel="stylesheet" type="text/css" />
<link href="css/reset_font_grid.css" rel="stylesheet" type="text/css" />
<link href="css/buttons.css" rel="stylesheet" type="text/css" />
<link href="css/inner-pages.css" rel="stylesheet" type="text/css" />
<link href="/css/layout.css" rel="stylesheet" type="text/css" />
<link href="/css/reset_font_grid.css" rel="stylesheet" type="text/css" />
<link href="/css/buttons.css" rel="stylesheet" type="text/css" />
<link href="/css/inner-pages.css" rel="stylesheet" type="text/css" />
表示文件/css/layout.css
位于layout.css
的文件夹css
内,无论您在哪里调用它,例如,如果您的网页都是这样的
root
如果您使用
http://www.example.com/product/smartphone/blackberry
它将查找<link href="css/layout.css" rel="stylesheet" type="text/css" />
此路由css
,因为该文件夹或路由中没有文件,因此无法加载导致您{{1}的root/product/smartphone/blackberry/css/layout.css
文件被打扰了。
答案 1 :(得分:0)
您需要使用ResolveUrl
示例:
<link href="<%= ResolveUrl("css/layout.css") %>" rel="stylesheet" type="text/css" />
如果您有任何问题,请与我们联系。
答案 2 :(得分:0)
最简单的方法应该是添加一个不是文件条件:
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
</conditions>