我正在使用两个单元格表来进行导航布局(我应该使用css)。左边是cell是超链接。右侧单元格包含ASP.NET菜单控件。

当页面在IE7中呈现时,超链接和菜单都在同一行。

使用FF2,FF3或IE8时,菜单会导致其单元格大小增加。如果我删除菜单,它的工作正常。我相信问题是菜单控件生成的DIV标签。

我应该如何更改代码,以便左右导航项出现在同一行?

<table width="100%" cellpadding="0" cellspacing="0">
    <tr id="trBanner" runat="server" style="background-image: url(Images/Header_Blue.jpg); height:124px">
        <td colspan="2"></td>
    </tr>
    <tr id="trMenu" runat="server" style="background-image: url(Images/bluegradient.jpg); background-repeat">
        <td align="left">&nbsp;&nbsp;<asp:HyperLink ID="HyperLink1" ForeColor="White" Font-Names="verdana" Font-Bold="true" Font-Size="10pt" NavigateUrl="~/Summary.aspx" runat="server" style="text-decoration: none">Summary</asp:HyperLink></td>
        <td align="right" >
            <asp:Menu ID="mainMenu" Orientation="Horizontal" runat="server" DataSourceID="siteMapDataSource" style="vertical-align:top">
                <StaticMenuItemStyle CssClass="navnormal" ForeColor="White" ItemSpacing="5"  />
                <StaticHoverStyle CssClass="navhover"  />
                <StaticSelectedStyle CssClass="navselected" />       
                <DynamicMenuStyle CssClass="navnormal" BackColor="white" BorderColor="Black" BorderStyle="Solid" />     
                <DynamicHoverStyle CssClass="navhover" BackColor="Navy" />
            </asp:Menu>
            <asp:SiteMapDataSource ID="siteMapDataSource" runat="server" ShowStartingNode="false" />
        </td>
    </tr>
    <tr id="trRedBar" runat="server" style="background-image: url(Images/redbar.gif); height:9px">
        <td colspan="2"></td>
    </tr>
</table>
有帮助吗?

解决方案

使用FireBug结束发现问题是由控件嵌入的SkipLink图像引起的。设置 SkipLinkText =&quot;&quot; 属性解决了格式问题,但破坏了SkipLink的目的。还有其他解决方案吗?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top