asp.net 日历控件行为不良

kpbpu008  于 2023-02-01  发布在  .NET
关注(0)|答案(2)|浏览(192)

我遇到了包含日历控件的用户控件问题。在Visual Studio 2015的设计视图中,该控件看起来正常:

但是,在浏览器,任何浏览器,它看起来像这样:

我已经尝试设置宽度为330px的任何地方,我能想到的,但它似乎总是得到宽度1084不知何故!?
问题出在哪里?
下面是用户控件的代码:

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="TimeKalender.ascx.cs" Inherits="Blodbanken.TimeKalender" %>

<link rel="Stylesheet" type="text/css" href="StyleSheet1.css" id="style" runat="server" visible="false" />

<div class="kalender" style="width:330px;">
    <asp:Calendar ID="Calendar1"  runat="server" BackColor="White" BorderColor="Black" BorderStyle="Solid" CellSpacing="1" Font-Names="Verdana" Font-Size="9pt" ForeColor="Black" Height="250px" NextPrevFormat="ShortMonth" Width="100%">
        <DayHeaderStyle Font-Bold="True" Font-Size="8pt" ForeColor="#333333" Height="8pt" />
        <DayStyle BackColor="#CCCCCC" />
        <NextPrevStyle Font-Bold="True" Font-Size="8pt" ForeColor="White" />
        <OtherMonthDayStyle ForeColor="#999999" />
        <SelectedDayStyle BackColor="#E60000" ForeColor="White" />
        <TitleStyle BackColor="Red" BorderStyle="None" Font-Bold="True" Font-Size="12pt" ForeColor="White" Height="12pt" />
        <TodayDayStyle BackColor="#999999" ForeColor="White" />
    </asp:Calendar>
</div>

<asp:Label ID="lblLedigeTimer" runat="server" Text="Available appointments:" Font-Bold="True"></asp:Label>
<br />

<asp:CheckBoxList ID="CheckBoxList1" runat="server">
    <asp:ListItem>08:00 </asp:ListItem>
    <asp:ListItem>09:00 </asp:ListItem>
    <asp:ListItem>10:00 </asp:ListItem>
    <asp:ListItem>11:00 </asp:ListItem>
    <asp:ListItem>12:00 </asp:ListItem>
    <asp:ListItem>13:00 </asp:ListItem>
    <asp:ListItem>14:00 </asp:ListItem>
    <asp:ListItem>15:00 </asp:ListItem>
</asp:CheckBoxList>

<asp:Button ID="Button1" runat="server" Text="Book it!" Width="119px" />
9vw9lbht

9vw9lbht1#

我不确定这是不是真的,因为你说你把宽度设置为330px,但在示例HTML中你把宽度设置为100%

<asp:Calendar ... NextPrevFormat="ShortMonth" Width="100%">

把它从宽度定义中去掉,让大小由父div定义

wbgh16ku

wbgh16ku2#

谜底解开!
原来asp:calendar-tag翻译成了一堆table-tag,而且其中还嵌套了一些a-tag,这些a-tag受到css的影响,而css原本是用于导航菜单的。

感谢您的意见!

相关问题