ASP.NET网站,按钮只是超链接

时间:2013-09-22 01:08:06

标签: asp.net vb.net web webforms

希望有人可以帮助我,我想我知道问题是什么,但我似乎无法使其发挥作用。

我有一个用VB web developer 2010编写的小网站。

我希望移动我正在使用的主机公司,但我遇到的问题是页面顶部的按钮:

<asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false" IncludeStyleBlock="false" Orientation="Horizontal">
    <Items>
        <asp:MenuItem NavigateUrl="~/Default.aspx" Text="Home"/>
        <asp:MenuItem NavigateUrl="~/About.aspx" Text="About"/>
    </Items>
</asp:Menu>

老主持人他们很好。新主机(我自己做的所有事情的VPS服务器)只显示超链接。

我认为它是我编译的ASP.net的版本,目前是3.5,但我可能错了,我已多次尝试让它工作。

感谢任何帮助。谢谢!

2 个答案:

答案 0 :(得分:3)

您确定复制了与项目一起使用的CSS文件,并且它们位于具有正确权限的目录中吗?

请阅读此链接:http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.menu.renderingmode.aspx

特别是它引用了当您从3.5或更低版本更改为4.0时可能需要设置的rendermode设置

  

RenderingMode属性的值确定菜单的方式   控件呈现Menu控件的标记。在ASP.NET 3.5和   在早期版本中,Menu控件使用HTML表格元素和内联   样式以指定浏览器中菜单的外观。在ASP.NET中   4及更高版本,默认情况下,Menu控件使用HTML listitem   元素和级联样式表(CSS)样式。如果你没有设置   此属性,Menu控件呈现适合的标记   由ASP.NET指示的ASP.NET版本   Control.RenderingCompatibility属性。 Menu控件使用   遵循规则:

     
      
  • 如果RenderingCompatibility属性的值为3.5,则Menu控件使用HTML表格元素和内联样式。
  •   
  • 如果RenderingCompatibility属性的值为4.0或更高,则Menu控件使用HTML listitem元素和CSS样式。
  •   
     

提供此属性是为了向后兼容。如果   RenderingCompatibility属性表示您想要控件   生成与ASP.NET 4或更高版本兼容但您想要的HTML   Menu控件是一个使用早期行为的异常,你   可以将此属性设置为Table。例如,如果您有一个网页   从右到左显示文本您可能想要设置此项   属性为Table,因为某些浏览器不显示列表模式   正确标记从右到左的文本。

答案 1 :(得分:0)

的解决方案!

服务器端:使用位于here

的答案将asp.net版本更改为4.0

在您的Web.config中

我对此有一个

<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/>

更改为

<pages controlRenderingCompatibilityVersion="4.0" clientIDMode="AutoID"/>

完整!

感谢您的帮助E.J.不知道它与CSS有关,我无法得到答案。