Вот упрощенная версия моей страницы:

<asp:UpdatePanel runat="server" ID="dateUpdatePanel" RenderMode="Inline">
<ContentTemplate>

    <asp:Label runat="server" ID="lblDateFrom" Text="From:" />
    <asp:TextBox runat="server" ID="txtDateFrom" />
    <asp:ImageButton runat="server" ID="cmdDateFrom" ImageUrl="~/images/calendar.jpeg"  />
    <ajax:CalendarExtender runat="server" ID="calendarFrom" TargetControlID="txtDateFrom" 
        PopupButtonID="cmdDateFrom" Format="dd/MM/yyyy" />               

</ContentTemplate>
</asp:UpdatePanel>

<asp:Button runat="server" ID="cmdRunReport" Text="Run Report" OnClick="cmdRunReport_Click" />

UpdatePanel настроен на рендеринг встроенным, поэтому кнопка «Выполнить отчет» отображается в строке справа от ввода календаря. Однако, когда я нажимаю кнопку изображения календаря (cmdDateFrom), кнопка «Выполнить отчет» перемещается и отображается на следующей строке!

Может ли помочь какой-нибудь гуру CSS?

0
John Paul Jones 6 Мар 2009 в 19:13

2 ответа

Лучший ответ
<style type="text/css">
    ajax__calendar
        {
            display: inline;
    }
</style>

Похоже исправил это с IE6 и FF3

0
John Paul Jones 9 Мар 2009 в 12:54

Вероятно, потому что календарь отображается как div, который по умолчанию получает отдельную строку. Можно было бы использовать стандартный элемент управления календарем в div с абсолютной позицией. Это предотвратит принудительное обертывание, но вам нужно будет правильно расположить страницу, чтобы она не закрывала какие-либо необходимые элементы управления.

0
atfergs 6 Мар 2009 в 19:19