2010-01-26 6 views
6

Saludos,¿Nuevas líneas entre los atributos del elemento HTML?

Estoy haciendo un trabajo de plantilla en un proyecto personal y estoy tratando muy duro para mantener mis líneas de menos de 80 caracteres de ancho. Esto es difícil de hacer con HTML, especialmente cuando se agrega código para contenido dinámico también. Hay muchos casos en los que sería útil colocar saltos de línea dentro de los elementos, entre atributos. He aquí un ejemplo:

<a href="http://example.com">foobar</a>

Básicamente, quiero ser capaz de hacer esto:

<a
href="http://example.com">foobar</a>

sin efectos dañinos. Parece validar y a Firefox no le importa, pero me gustaría que algo se acerque a una respuesta autoritaria. Intenté encontrar la respuesta en las especificaciones HTML en vano. Google tampoco es de ayuda, así que pensé en preguntarle a la gente bien informada.

Gracias por cualquier idea.

+0

Siéntase libre de navegar w3c.org y encontrar el documento relevante para el doctype relevante. En pocas palabras, está bien. Sin embargo, no puedo molestarme en buscarte eso. –

Respuesta

8

Esto es válido. en la medida en que no rompas los atributos ellos mismos. Por ejemplo:

Esto es válido:

< a href = "http://example.com"

>
foobar
</a>

Este es no:

< a href = "http: // exa MPL
e.com "> foobar </a>
+3

Los atributos con saltos de línea en ellos están universalmente permitidos y manejados por los navegadores; a menos que tenga una referencia o evidencia de lo contrario. –

2

Se permite cualquier espacio en blanco entre las definiciones de atributos, incluidos espacios, pestañas y nuevas líneas.

(Gracias Matt) Tenga en cuenta que:

<b>Some text</b> 

es no equivalente a:

<b> 
Some text 
</b> 

Sin embargo, es equivalente a:

<b> Some text </b> 

decir, aquellos saltos de línea son espacios .

Dentro de una definición de etiqueta entre atributos, sin embargo, están bien.

+0

Tenga cuidado con gremlins de nueva línea: \nfoobar La nueva línea crea un espacio, que puede crear artefactos al diseñar. –

0

En el código que puede hacer anythig con espacios en blanco. Sin embargo, con algunos navegadores si escribió calle detrás como:

<a href="http://example.com">foobar 
</a> 

La nueva línea puede tener un (pequeño) incidenx sobre cómo se muestra su enlace, especialmente en el estado 'activo'.

1

Si lo usa fuera de las etiquetas, obtendrá un espacio en blanco único para todos los espacios en blanco de una fila debido al efecto de colapso.

http://library.stanford.edu/tools/tutorials/html2.0/whitespace.html

En general, un solo espacio en blanco carácter - incluyendo saltos de línea - o una secuencia de caracteres de espacio en blanco se tratados como un solo espacio y líder/espacios en blanco es eliminado. Esto se conoce como 'collapsing whitespace'.

1

Puede hacerlo sin ningún problema. ¿Qué puede causar problemas es colocar espacios en blanco entre las etiquetas de apertura y cierre:

<a href="http://example.com">
foobar</a>

Esto hará que una línea adicional o espacio extra en algunos navegadores.

Cuestiones relacionadas