当我使用“菜单”控件时,它从“sitemap”文件中获取有关菜单项的信息,我认为服务器会自动为此“菜单”控件构建“javascript”。我可以为此控件更改此自动构建的javascript吗?如果我想拥有更好看的导航栏,那么最喜欢的方法是什么:
使用javascript和css构建我自己的导航菜单?
或者
要找到更改“菜单”控件中“javascript”的方法吗?
我应该何时使用此“菜单”控件?如果我使用它,如何使用我自己喜欢的样式进行自定义?
答案 0 :(得分:2)
ASP.NET菜单控件在HTML中呈现时,只不过是ul
(无序列表)。只需应用一些CSS样式规则即可获得独特的外观:
<强> ASPX:强>
<asp:Menu ID="Menu1" runat="server" Orientation="Horizontal" CssClass="menu">
<Items>
<asp:MenuItem Text="Home" NavigateUrl="Home.aspx" />
<asp:MenuItem Text="Contact us" NavigateUrl="ContactUs.aspx" />
<asp:MenuItem Text="About us" NavigateUrl="AboutUs.aspx" />
</Items>
</asp:Menu>
<强> CSS:强>
<style type="text/css">
.menu ul
{
border-bottom: 1px solid gray;
}
.menu ul li
{
border: 1px solid white;
background-color: gray;
text-decoration: none;
padding: 3px;
margin: 3px;
}
.menu ul li a
{
color: White;
}
.menu ul li a:hover
{
font-weight:bold;
}
</style>
<强>结果:强>
这一切都取决于您所需的功能。
如果您仅仅是为了导航而使用菜单,那么确保一个简单的CSS和javascript菜单就足够了但是如果您计划从数据库动态生成菜单项和/或根据用户角色隐藏某些菜单项那么你需要使用像ASP.NET菜单控件这样功能更强大的功能。正如你在我对Question1的回答中所看到的那样,你可以轻松地将CSS和javascript添加到Menu控件中,所以它在这方面非常灵活