我想即时将 app_themes css 文件合并为一个文件。我这样做是使用 Mads Cristensen
技术。但是现在所有具有通过 css 定义的背景图像的元素(参见图片)都不会显示图像。
.
我相信那是因为不再相对引用 css 文件 (../),而是通过 axd 文件。
我试图通过更改对图像文件的引用来解决此问题,但没有成功。我已经尝试过 background: url("~/App_Themes/44/images/myimage.gif")
这适用于结合了 css 的页面。但问题是这个元素中还有其他页面没有使用这个 css 组合,现在它们丢失了对背景图像的引用。
有任何想法吗?
最佳答案
我认为 ApplicationPath 在这种情况下可能会造成一些困惑...
无论它是从 App_Themes 文件夹本地呈现还是通过 *.axd 处理程序呈现,在 *.css 文件中使用逻辑路径(相对于网络服务器的根目录)都可以工作。
举个例子,例如:
body
{
background-image:url('/WebSite1/App_Themes/Theme1/Image/Logo3.png');
}
这将正确解析它是否通过根(或根以下任何深度)的 *.axd 处理程序呈现,如果它呈现在 /WebSite1/App_Themes/Theme1/StyleSheet.css.
以 ~ 开头的 ASP.NET 特定路径(所谓的根相对路径)在 *.css 文件中没有作用,需要首先使用 ResolveUrl() 解析为逻辑路径。
关于asp.net - 合并 css 脚本后引用 app_themes/images 文件夹中的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4061268/