2

老板希望母版页的菜单看起来更好。我用网上可用的工具之一生成了我的渐变文件,那里没问题..

我尝试为每个菜单项创建一个 CSS 类,但是当我使用 background-image 指令和样式生成器时,我得到如下一行:

background-image: url('file:///C:/Documents and Settings/Username/My Documents/Visual Studio 2008/WebSites/ThisSite/Images/Gradient.png')

...当我想要的是

background-image: url('~/Images/Gradient.png')

当然,第一个 url 仅在我在本地机器上调试时才有效 - 部署它并且我已经被淹没了。许多其他 ASP.NET 对象使用“~/”来指示网站的顶级目录,但我的 css 文件不喜欢它,我无法为菜单控件或菜单​​项设置背景图像 -当我可以对这么多其他控件执行此操作时,这似乎是一个明显的遗漏。

我错过了什么?

4

5 回答 5

4

CSS 中的 url 需要是绝对(或相对)url,并且不使用波浪号映射,因为它不是服务器端组件。

    background-image: url(  "/images/menu.jpg" );
于 2009-01-07T18:58:54.867 回答
1

你快到了......试试这个:

.menuStyle
{
  background-image: url('/images/BG.gif'); /* Putting a slash in front means its relative to the root.  No slash would be relative to the current directory. */
  background-repeat: repeat-x; /* assuming you have a vertical gradient. */
}

希望有帮助。

于 2009-01-07T19:19:15.513 回答
0

这不是一个明显的遗漏。一点也不遗漏。波浪号是一个 ASP 结构。在您的 CSS 中,它没有任何意义。

于 2009-01-07T19:04:35.713 回答
0

一次“全部替换”操作就可以了。

file:///C:/Documents and Settings/Username/My Documents/Visual Studio 2008/WebSites/ThisSite 替换为空白。

于 2009-01-07T19:15:47.657 回答
0

我已经尝试在我的 ASP.Net 应用程序中设置 CSS 的 background-image 属性(即给出帖子中描述的相对路径)。但是,它对我不起作用。后来,设置背景图像,因为background-image:url('http://localhost:1701/Images/BannerTileBackground.gif');它确实有效..

请让我知道什么是正确的方法,以及它以前不起作用的原因。

于 2010-07-13T21:32:07.933 回答