如何处理 CSS 本地与生产中不断变化的 URL
我们使用 Visual Studio 2010,在生产环境中我们将大量资源放在 CDN 上。然而,当我们在本地调试时,我们希望从相对本地路径中拉取资源。
因此,在我们的 CSS 中,我希望能够像在本地运行 CSS 一样使用 CSS:
.foo {
background:url(../images/bar.jpg);
}
但是,当我发布到 Azure 时,我希望 CSS 自动更新路径为:
.foo {
background:url(http://cdn.company.com/website/images/bar.jpg);
}
这在 Visual Studio 2010 中可能吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我意识到这可能不是您正在寻找的答案,但作为参考,您可以使用 MSBuild 社区任务,如下所示:
I realize this likely isn't the answer you're looking for, but for reference, you could do this with the
FileUpdate
Task in MSBuild Community Tasks, which would look something like this:先生,你来了。与大多数开发人员一样,我建议为您需要处理的各种应用程序使用单独的样式表。 ;)
您只需在 中的标记中添加一个 Literal 即可。像这样...
然后使用以下代码根据请求来源动态加载它们。
注意:我没有测试 C# 代码,但我想它的工作原理应该是一样的。干杯;)
Here you are sir. As do most developers, I recommend using separate stylesheets for the various applications you need to address. ;)
You can simply add a Literal to your markup in your <head> like so...
Then use the following code to load them dynamically based on the request origin.
Note: I didn't test the C# code, but I guess it ought to work the same. Cheers ;)
您可以将基本 url 放置在 web.config 文件中,并使用 Web 配置转换根据其发布位置对其进行修改。
一些文档:
http://msdn.microsoft.com/en-us/library/dd465326.aspx
You could place the base url in the web.config file, and use web config transforms to modify it based on where it is published.
Some Documentation:
http://msdn.microsoft.com/en-us/library/dd465326.aspx