Html.LabelFor Helfer in MVC2
-
18-09-2019 - |
Frage
Ich verwende MVC2, Preview 2. Warum ist es, dass, wenn ich benutze:
<%= Html.LabelFor(x => x.Nombres) %>
<%= Html.Encode(Model.Nombres) %>
Es gibt:
Nombre:
Sr. Fulano de Tal
Aber wenn ich benutze:
Nombres:
<%= Html.Encode(Model.Nombres) %>
es gibt:
Nombre: Sr. Fulano de Tal
Ich will nicht die Rückkehr nach dem Etikett. Ist es meine CSS, dass die Dinge ruiniert, oder ist es die HTML.LabelFor, die die zusätzliche Rendite produziert.
Lösung
Das ist wirklich schwer zu beantworten. Tun könnte den tatsächlichen HTML-Markup mit dem Sehen sie produzieren. Ich vermute, dass die Etikett entweder schwimmen oder display: block in der CSS
.Andere Tipps
View Source hilft Ihnen wissen, was die richtige Antwort ist. Was ist der HTML-Code in jedem Fall erzeugt?
Ich vermute, dass hier was passiert ist, dass das HTML-Element von Html.LabelFor
erzeugt definiert ist, in Ihrem CSS, als Blockelement , was bedeutet, dass nachfolgende Inhalt auf einer neuen Zeile beginnen. Wenn das ist, was geschieht, können Sie die CSS ändern für diese Elemente display:inline;
verwenden und sie sollten auf der gleichen Linie wie Ihr Feldwert angezeigt. Sie können auch das float
CSS-Attribut verwenden, um den gleichen Effekt zu erzeugen, aber Schwimmer sind in der Regel härter als mit display:inline
zu arbeiten.
<label for="Nombres">Nombre</label>
: Die HTML-Ausgabe für Ihren Fall sollte etwas ähnliches sein.
Kein <br/>
gemacht wird, so dass die einzige Antwort in der CSS liegen sollte, wie Justin sagte. Geben Sie für CSS-Stile „label“ Elemente angebracht sind, oder nicht so wahrscheinlich, etwas zu „Nombres“.