Pregunta

Estoy usando MVC2, Ver 2. Por qué es que cuando uso:

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

Se da salida:

Nombre:
Sr. Fulano de Tal

Pero cuando se utiliza:

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

da salida:

Nombre: Sr. Fulano de Tal

No quiero que el retorno después de la etiqueta. ¿Es mi CSS que está arruinando las cosas, o es el HTML.LabelFor que está produciendo el rendimiento adicional.

¿Fue útil?

Solución

Esto es muy difícil de responder. Podría hacer con ver el código HTML real que está produciendo. Sospecho que las etiquetas se hacen flotar o la pantalla o bien: bloque en el css

.

Otros consejos

Ver código le ayudará a saber cuál es la respuesta correcta es aquí. ¿Cuál es el código HTML generado en cada caso?

Sospecho que lo que está sucediendo aquí es que el elemento HTML generado por Html.LabelFor se define, en su CSS, como bloque de elementos , lo que significa que el contenido posterior se iniciará en una nueva línea. Si esto es lo que está pasando, puede cambiar la CSS para aquellos elementos que utilizan display:inline; y deben aparecer en la misma línea que el valor de su campo. También puede utilizar el atributo float CSS para generar el mismo efecto, pero los flotadores son generalmente más difíciles de trabajar que display:inline.

La salida HTML para su caso debe ser algo como: <label for="Nombres">Nombre</label>. Sin <br/> se hace, por lo que la única respuesta debe estar en el CSS, como Justin dijo. Busque estilos css adjuntos a elementos "Etiqueta", o no tan probables, algo relacionado con "nombres".

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top