Domanda

sto usando MVC2, Preview 2. Perché è che quando uso:

        <%= Html.LabelFor(x => x.Nombres) %>
        <%= Html.Encode(Model.Nombres) %>

E 'uscite:

Nombre:
Sr. Fulano de Tal

Ma quando uso:

        Nombres:
        <%= Html.Encode(Model.Nombres) %>

emette:

Nombre: Sr. Fulano de Tal

Non voglio il ritorno dopo l'etichetta. E 'la mia CSS che sta rovinando le cose, o è il HTML.LabelFor che sta producendo l'extra rendimento.

È stato utile?

Soluzione

Questo è veramente difficile rispondere. Potrebbe fare con il vedere il markup HTML attuale sta producendo. Ho il sospetto che le etichette sono o galleggiare o display: block nel css

.

Altri suggerimenti

Visualizza origine vi aiuterà a sapere quale sia la risposta giusta è qui. Qual è il codice HTML generato in ogni caso?

Ho il sospetto che quello che sta succedendo qui è che l'elemento HTML generato da Html.LabelFor è definito, nel CSS, come un blocco elemento , il che significa che la successiva contenuti inizierà su una nuova linea. Se questo è quello che sta succedendo, è possibile modificare il CSS per gli elementi da utilizzare display:inline; e dovrebbero apparire sulla stessa linea come il valore del vostro campo. È inoltre possibile utilizzare l'attributo float CSS per generare lo stesso effetto, ma galleggianti sono generalmente più difficili da lavorare rispetto display:inline.

L'output HTML per il vostro caso dovrebbe essere qualcosa di simile: <label for="Nombres">Nombre</label>. No <br/> è reso, quindi l'unica risposta deve trovarsi nel CSS, come Justin ha detto. Cercare stili CSS collegati a elementi di "definire", o non così probabile, qualcosa legato alla "Nombres".

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top