为什么当我把控件放在面板上时高度不稳定?

Why height is not stable when I put my control in the panel?

我有一个文本框并为它调整了 height 和 CSS。当我把它放在Panel的时候,它的heightreturns到前面的height。我该如何解决?换句话说如何保持其 height 稳定?

我的HTML代码:

<asp:Panel ID="panelPost" runat="server">
<asp:TextBox ID="TxtNumPost" CssClass="TxtNamePost" runat="server">           </asp:TextBox>
</asp:Panel> 

我的CSS代码:

.TxtNamePost {
     Height: 30%;
}

应该注意 height: 30px 工作正常,但我需要使用 % 来做到这一点。

您可能有两件事正在发生。

  1. 身高:30%。在css中,如果你用百分比显示一个高度,它将是父元素的百分比。因此,如果您四处移动元素(例如在面板内)。您正在更改父元素,这可能会导致混淆。

  2. .NET 将在您将文本框移入面板后更改其 ID。单击您页面上的 'View Source' 以查看新 ID 是什么。它可能类似于 'panelPost_TxtNumPost'。或者更好的是,在文本框上设置 'ClientIDMode=static' 以避免我刚才提到的。