如何在ASP.NET中对齐<label>的子项?</label>

时间:2013-08-08 20:25:51

标签: html asp.net

我想在.NET上模仿这个:

<label for="contact_name">
    Nombre
   <span class="color2">*</span>
</label>
<input type="text" name="contact_name" id="contact_name"
    value="" size="22" tabindex="3"
    class="validate[required,minSize[3],maxSize[100],custom[onlyLetterSp]]" />

我用过:

<asp:Label ID="lblNombre" AssociatedControlID="txtNombre" Text="Nombre" runat="server" />
<asp:TextBox ID="txtNombre" runat="server" />

但我需要在color 2上使用课程*,它必须位于Nombre的右侧,而不是下方或其他内容。如果我使用*和类与文本框关联的标签创建标签,则*将显示在下方。如何完美对齐?

3 个答案:

答案 0 :(得分:3)

最简单的方法就是继续使用<label>控件而不是使用服务器控件,假设您不需要在代码中访问您的标签。

<label for="<%= txtNombre.ClientID %>">
    Nombre <span class="color2">*</span>
</label>
<asp:TextBox ID="txtNombre" runat="server" />

或者,如果您确实需要从服务器访问它,您仍然可以这样做:

<%-- This line can go in the code-behind if you want --%>
<% lblNombre.Attributes["for"] = txtNombre.ClientID; %>

<label id="lblNombre" runat="server">
    Nombre <span class="color2">*</span>
</label>
<asp:TextBox ID="txtNombre" runat="server" />

实际上,您可以在Label的文字中添加HTML,这样也可以使用:

<asp:Label ID="lblNombre" AssociatedControlID="txtNombre"
    Text="Nombre <span class='color2'>*</span>" runat="server" />
<asp:TextBox ID="txtNombre" runat="server" />

答案 1 :(得分:1)

我假设您正在进行必要的字段实施。

在.net标签中添加一个类 - 对于前requiredlbl&amp;然后在css

.requiredlbl:after { content:" *";color:red; }

编辑 - 颜色

<asp:Label ID="lblNombre" CssClass="requiredlbl" Text="Nombre" runat="server" />

答案 2 :(得分:0)

试试这个:

    <asp:Label ID="lblNombre" AssociatedControlID="txtNombre" runat="server" >    
    Nombre: <font color="red">*</font>
    </asp:Label>
<asp:TextBox ID="txtNombre" runat="server" />