在ASP.NET 5 MVC视图中,我有以下内容:
<header style="background-image: '/assets/poster.jpg')">
文件夹&#34; assets&#34;在wwwroot里面......
这很好但是当我在虚拟目录下的服务器上托管项目时,我需要将虚拟目录名添加到路径中:
<header style="background-image: '/virtualdirectory/assets/poster.jpg')">
我该如何避免这种情况?
答案 0 :(得分:2)
有趣的是,这将有效
<img src='~/assets/poster.jpg'/>
但是,这不会
<div style="width:990px; height:99px; background-image: url('~/assets/poster.jpg')"> </div>
对于内联样式,您可以使用Url.Content辅助方法生成应用程序绝对路径。
以下代码应该有效。
<div style="width: 100px; height: 100px;
background-image:url('@Url.Content("~/assets/poster.jpg")')"></div>
如果你想在css类中使用它,你可以简单地使用相对路径。
.myTest {
background-image: url('../assets/gravatar.png');
width:100px;height: 50px;
}
假设您的css文件位于assets
文件夹的兄弟目录下(例如:css)。