1.删除Menu控件节点的三角型
Menu控件设置如下属性:
StaticEnableDefaultPopOutImage="False"
StaticPopOutImageUrl=""
DynamicEnableDefaultPopOutImage="False"
DynamicPopOutImageUrl=""
设置StaticEnableDefaultPopOutImage为false后,生成的HTML代码里会自动追加如下TD标签,页面上菜单间有明显的空格。
<td style="3px;"></td>
设置Menu如下属性(IE8下有效,IE9暂时没有测试):
StaticMenuItemStyle-ItemSpacing="0px"
参考:http://www.dotnetmonster.com/Uwe/Forum.aspx/asp-net-web-controls/6764/Menu-Control
2.删除Menu控件上的空白
空白内容的html代码如下:
<a href="#NavigationMenu_SkipLink">
<img alt="Skip Navigation Links"
src="/WebResource.axd?d=wlQCiyQruo1sPgUtJutxTFJkrT98jcNcF8KtrF7
_COqpxszhDn7CfICeZLdV82xsqAAibBRwvaGtyLmJPZBXnj
3p5XD0uKhLQNirrRB7G1s1&t=634221564871865938"
width="0" height="0" style="border-0px;"/>
</a>
设置SkipLinkText属性为空可不生产上述代码。
SkipLinkText=""
参考:http://sim4all.com/blogging/?p=47
3.修改Menu控件为单击打开下拉菜单
protectedoverridevoid Render(HtmlTextWriter writer) {
StringBuilder stringBuilder = newStringBuilder();
StringWriter stringWriter = newStringWriter(stringBuilder);
HtmlTextWriter htmlWriter = newHtmlTextWriter(stringWriter);
base.Render(htmlWriter);
string html = stringBuilder.ToString();
html = html.Replace("onmouseover=""Menu_HoverStatic(this)""","onclick=""Menu_HoverStatic(this)""");
writer.Write(html);
}