UL列表样式图像在MVC中不起作用

时间:2011-09-10 02:39:47

标签: .net asp.net-mvc html-lists

我设置了一种UL样式,使用医生图像作为Site.Master页面中的列表样式图像。当我从visual studio 2010运行它时,可以看到图像。然而,当我发布项目并使用Internet Explorer和firefox打开它时,我看不到图像。我附上了以下代码(医生图片在Content文件夹中)。任何人都有任何想法如何解决这个问题?谢谢,非常感谢您的帮助。

<ul style = "list-style-image: url(/Content/doctor.jpg);">
            <li><a href = "<%= Url.Content("~/Home/Index") %>">About us</a></li>
            <li><a href = "<%= Url.Content("~/Home/Patient") %>">Patient Entry</a></li>
            <li><a href = "<%= Url.Content("~/Home/Invoice") %>">Invoice Entry</a></li>

</ul>

2 个答案:

答案 0 :(得分:2)

您可能正在发布到现在位于网站根目录的文件夹。

在内置Visual Studio服务器中运行站点时,应用程序根目录为/,因此/Content/doctor.jpg是正确的。

发布时,根目录可能不同,例如http://www.site.com/app,因此/Content/doctor.jpg指向

http://www.site.com/Content/doctor.jpg

什么时候指向

http://www.site.com/app/Content/doctor.jpg

要更正此问题,请更改此信息:

<ul style = "list-style-image: url(/Content/doctor.jpg);">

到此:

<ul style = "list-style-image: url(<%= Url.Content("~/Content/doctor.jpg") %>);">

答案 1 :(得分:1)

最有可能的是,当您发布应用时,它不是根源。因此,/ Content不是正确的文件夹。如果您正在使用样式属性,那么请执行您为链接所做的操作。 <%= Url.Content("~/Content/doctor.jpg") %>如果将其放在css文件中,则必须确保使用相对于样式表位置的路径。