日期:2014-05-18  浏览次数:20541 次

使用了母版页的css路径问题
我程序的根目录下有一个母版页,然后包含几个文件夹,在yygk文件夹中用了母版页,然后用下面的代码动态加载母版页
HtmlLink   link   =   new   HtmlLink();
                link.Href   =   "css/ylsb.css ";
                link.Attributes[ "rel "]   =   "stylesheet ";
                link.Attributes[ "type "]   =   "text/css ";
                Page.Header.Controls.Add(link);
明明加载的是 "css/ylsb.css ",可是生成的页面中的代码却变成了
<link   href= "../css/ylsb.css "   rel= "stylesheet "   type= "text/css "   />
如果不用母版页则生成的是 <link   href= "css/ylsb.css "   rel= "stylesheet "   type= "text/css "   />
求助,谁能解释下!

------解决方案--------------------
是的, 模板页会自动解析其内部的路径,以便于客户端能够正确加载引用的文件
------解决方案--------------------
你的 aspx 文件是否在 master 所在目录的子目录?

如果,是它解析成 "../css/ylsb.css " 就是正确的,这样才能正确的加载 css 文件
------解决方案--------------------
可能是木板页在根目录,而调用的页面在yygk目录下
如果ylsb.css 在 yygk\css\目录下,试试这个
所以 link.Href = "/yygk/css/ylsb.css ";
------解决方案--------------------
顶!
------解决方案--------------------
css/ylsb.css文件相对模板页的路径就是../css/ylsb.css
------解决方案--------------------
母版页 自动处理的结果是正确的

如果它不自动处理那才是问题,

LZ 到底你的 样式表 是否加载正确了哦?

不要讨论些无意义的问题哈
------解决方案--------------------
用相对更目录路径呀 /css/ylsb.css


.
------解决方案--------------------
up
------解决方案--------------------
一个是可以在动态加载模板页的时候 由母版页动态加载css

不过建议还是使用themes

------解决方案--------------------
string url = Page.ResolveUrl( "X.css ")

link.href = url
------解决方案--------------------
顶起来!!!