老板希望母版页的菜单看起来更好。我使用网上可用的工具之一生成了我的渐变文件,没问题。
我尝试为每个菜单项创建一个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')
当然,第一个网址只会在我在我的本地计算机上进行调试时才能正常工作 - 部署这个并且我已经被软管了。许多其他ASP.NET对象使用“〜/”来表示网站的顶级目录,但我的css文件不喜欢它,我无法为菜单控件或菜单项设置背景图像 - 当我可以对许多其他控件进行处理时,这似乎是一个明显的遗漏。
我错过了什么?
答案 0 :(得分:4)
CSS中的url需要是绝对(或相对)url而不使用tilde映射,因为它不是服务器端组件。
background-image: url( "/images/menu.jpg" );
答案 1 :(得分: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. */
}
希望有所帮助。
答案 2 :(得分:0)
这不是一个明显的遗漏。根本不是遗漏。代字号是ASP构造。在你的CSS中它没有任何意义。
答案 3 :(得分:0)
一个“替换所有”操作,你已经设置好了。
将 file:/// C:/ Documents and Settings / Username / My Documents / Visual Studio 2008 / WebSites / ThisSite 替换为空白。
答案 4 :(得分:0)
我已经尝试在我的ASP.Net应用程序中设置CSS的background-image属性(即给出帖子中描述的相对路径)。但是,它对我不起作用。稍后,将背景图像设置为background-image:url('http://localhost:1701/Images/BannerTileBackground.gif');
它确实有用..
请让我知道正确的方法是什么,以及之前没有用的原因。