Мне нужно, чтобы мое веб-приложение ASP.NET поддерживало как 8, так и предыдущие версии браузера IE.Однако, когда я нажимаю кнопку «неработающая страница» в моей адресной строке IE8, чтобы переключиться в режим просмотра совместимости, фоновые изображения меню обрезаются, между двумя меню появляется вертикальный разрыв, а между строкой меню asp: и пользовательским элементом управления навигацией возникает разрыв.над ним.
Обычный вид IE8:
Вид совместимости:
Общий формат каждого меню:
<asp:TableCell ID="tcFurnMenuSectls" runat="server">
<asp:Menu ID="menuFurnSectls" runat="server" StaticDisplayLevels="1" MaximumDynamicDisplayLevels="1"
Orientation="Horizontal"
CssClass="FurnMenuSectionals" StaticMenuItemStyle-ItemSpacing="0px"
DynamicMenuItemStyle-CssClass="FurnMenuDynamicItem"
StaticMenuItemStyle-CssClass="FurnMenuStaticItem"
DynamicHoverStyle-CssClass="FurnMenuDynamicItemHover"
DynamicVerticalOffset="0"
StaticHoverStyle-CssClass="FurnMenuStaticItemHoverSectls"
StaticEnableDefaultPopOutImage="false"
DynamicPopOutImageUrl="~/Images/AppMenu/menu_arrow_grey.gif" DynamicMenuItemStyle-VerticalPadding="2"
DisappearAfter="0" OnMenuItemClick="menuFurn_MenuItemClick">
<Items>
<asp:MenuItem Text="Sectionals " ImageUrl="~/Images/AppMenu/FurnMenuGradientTransparent.png" Selectable="false">
<asp:MenuItem Text="Options "
Value="Sectionals_Options" NavigateUrl="~/FurnMain.aspx?_page=OptsSectl&_title=SectionalOptions">
</asp:MenuItem>
<asp:MenuItem
Text="Latest deals "
Value="Sectionals_Deals"
NavigateUrl="~/FurnMain.aspx?_page=DealsSectl&_title=SectionalDeals"></asp:MenuItem>
</asp:MenuItem>
</Items>
</asp:Menu>
</asp:TableCell>
Если я выберу «Вид» -> «Источник», сохраню сгенерированный HTML и сравним два результата, единственное отличие заключается в свойстве верхнего пользовательского элемента управления («Клиентский дом»):
<table id="topNavCtrl_menuTopNav" class="TopNavMenu topNavCtrl_menuTopNav_2" cellpadding="0" cellspacing="0" border="0" style="margin-top:-2px;">
В версии «совместимость» margin-top равен -3px вместо -2.