SidC
SidC

Reputation: 3213

Aligning ASP.Net Labels and TextBoxes using CSS?

I need to use CSS to line up my ASP.NET labels and textboxes. I've tried using DIVs with styling per below, but things still aren't lining up.

<div style="float:left; display:block;">
<asp:Label runat="server" id="lblPartNumber" CssClass="label">Part Number:</asp:Label><br />
<asp:Label runat="server" ID="lblSubID" CssClass="label">Sub ID:</asp:Label><br />
<asp:Label runat="server" ID="lblPartDesc" CssClass="label">Part Description:</asp:Label><br />
<asp:Label runat="server" ID="lblForModels" CssClass="label">For Models:</asp:Label><br />
<asp:Label runat="server" ID="lblColor" CssClass="label">Color:</asp:Label><br />
<asp:Label runat="server" ID="lblPrice" CssClass="label">Price:</asp:Label><br />
<asp:Label runat="server" ID="lblMisc" CssClass="label">Misc:</asp:Label><br />
<asp:Label runat="server" id="lblLiveImage" CssClass="label">Live Image:</asp:Label><br />
<asp:Label runat="server" ID="lblOEMNumber" CssClass="label">OEM Number:</asp:Label><br />
<asp:Label runat="server" ID="lblBEDiscount" CssClass="label">BE Discount:</asp:Label><br />
<asp:Label runat="server" ID="lblSalePrice" CssClass="label">Sale Price:</asp:Label><br />
<asp:Button runat="server" ID="btnAddPart" Text="Add Part" />
</div>
<div style="display:block; padding-left:20px;">
<asp:TextBox runat="server" ID="txtPartNumber" CssClass="textbox"></asp:TextBox><br />
<asp:TextBox runat="server" ID="txtSubID" CssClass="textbox"></asp:TextBox><br />
<asp:TextBox runat="server" ID="txtPartDesc" CssClass="textbox"></asp:TextBox><br />
<asp:TextBox runat="server" ID="txtForModels" CssClass="textbox"></asp:TextBox><br />
<asp:TextBox runat="server" ID="txtColor" CssClass="textbox"></asp:TextBox><br />
<asp:TextBox runat="server" ID="txtPrice" CssClass="textbox"></asp:TextBox><br />
<asp:TextBox runat="server" ID="txtMisc" CssClass="textbox"></asp:TextBox><br />
<asp:TextBox runat="server" ID="txtLiveImage" CssClass="textbox"></asp:TextBox><br />
<asp:TextBox runat="server" ID="txtOEMNumber" CssClass="textbox"></asp:TextBox><br />
<asp:TextBox runat="server" ID="txtBEDiscount" CssClass="textbox"></asp:TextBox><br />
<asp:TextBox runat="server" ID="txtSalePrice" CssClass="textbox"></asp:TextBox><br />
</div>    

What additional CSS syntax must be added to ensure all my labels are lined up under each other, and their corresponding textbox is beside it?

Thanks!

Upvotes: 4

Views: 10946

Answers (4)

Bibhu
Bibhu

Reputation: 4081

You may write in this manner :

<div style="float:left; display:block;">
<asp:Label runat="server" id="lblPartNumber" CssClass="label">Part Number:</asp:Label><br />
<asp:TextBox runat="server" ID="txtPartNumber" CssClass="textbox"></asp:TextBox><br />
</div>
.......

Upvotes: 0

Maysam
Maysam

Reputation: 7367

You can do this also:

.label, .textbox{
    width:50px;/*or something you like, it will assign a fixed width to all them*/
    text-align:left;
    float:left; 
    display:block;
}

Upvotes: 0

bAN
bAN

Reputation: 13835

Maybe you can use a <table> to display your labels

<table>
 <tr>
  <td><asp:Label runat="server" id="lblPartNumber" CssClass="label">Part Number:</asp:Label</td>
 </tr>
 <tr>
  <td><asp:Label runat="server" ID="lblSubID" CssClass="label">Sub ID:</asp:Label></td>
 </tr>
</table>

Upvotes: 0

Chamika Sandamal
Chamika Sandamal

Reputation: 24322

use something like this,

<ul>
  <li>
    <asp:Label runat="server" id="lblPartNumber" CssClass="label">Part Number:</asp:Label>
    <asp:TextBox runat="server" ID="txtPartNumber" CssClass="textbox"></asp:TextBox>
  </li>
  .....
</ul>

css,

.label,.textbox{
   display : inline;
}

Upvotes: 6

Related Questions