Remo
Remo

Reputation: 389

Is there any alternative for <br /> in asp.net?

I was trying to display lblName1 and lblName2 only if they have text. Even when i dont have any value for lblName2, the break still has an impact. Can someone please advice me if there is any other way to display
or conditionally display

<asp:Label ID="lblName1" runat="server" Visible= "false" ></asp:Label> <br />
<asp:Label ID="lblName2" runat="server" Visible= "false">  </asp:Label>

Thanks in advance..

Upvotes: 4

Views: 3921

Answers (5)

Jason Evans
Jason Evans

Reputation: 29186

Give the label a CSS class name and set the margin for that class:

<asp:Label ID="lblName1" CssClass="Testing123" runat="server" Visible= "false" ></asp:Label> <br />

.Testing123{ margin-bottom: 20px; }

If the Label is not rendered then no gap will be created.

Upvotes: 5

Tim B James
Tim B James

Reputation: 20374

Going with what you have and ignoring using any code behind changes, you can use some css to provide a break without using a <br /> tag.

By this, I mean if you were to give your <label> controls a css class, class="labelStyle

.labelStyle{
     float: left;
     clear: left;
 }

Your html produced would look like

<span class="labelStyle">Some Text</span><span class="labelStyle">More Text</span>

If there is no value in the Labels, then your html would contain two empty span tags.

This will move the 2nd label onto the next line. However this may not fit in with the rest of your html, and because you are floating elements, then your overall layout might break.

An example is here http://jsfiddle.net/2v93f/

Upvotes: 0

Arthis
Arthis

Reputation: 2293

You might consider adding a litteral to handle the br and this way play with its visibilty :

<asp:Literal runat=server Id=C_lit_Br><br /></asp:Literal>

with in your codebehind :

if (!lblName2.Visible)
    C_lit_Br.Visible=false;

It is a quick patch, but it should work.

Upvotes: 3

user126284
user126284

Reputation:

wrap the labels in p tags:

<p><label1></p>
<p><label2></p>

Upvotes: 0

SMK
SMK

Reputation: 2158

It is better to use literal in that case:

In literal text you also write html in it

Upvotes: 0

Related Questions