2009-02-26 8 views
14

bien esta pregunta se produjo después de this one¿Qué tan malo es poner un CSS incluido en el medio del cuerpo?

Las razones son más o menos la misma, para mantener el limpiador cosas, lo malo es que para llamar (asegurándose el css no colisiona con las etiquetas de sobreescritura)

Para poner < link rel = "stylesheet" type = "text/css" href = "mycss.css"> en el medio del cuerpo? (si funciona)

De modo que en algunos casos podría incluir css específicos para un módulo específico.

+0

Realmente no está más claro. CSS es una presentación y está separada de tu contenido. Siento tu dolor, pero una vez que te acostumbras, la etiqueta HEAD se siente mejor. – MrChrister

Respuesta

16

<link> sólo está permitido en la sección <head> de un documento: Document relationships: the LINK element

+3

Sin embargo, la mayoría de los navegadores le permitirán colocarlo en el medio del cuerpo de todos modos y manejarlo bien. – jahu

+2

Esto no responde la pregunta en absoluto –

1

hojas de estilo debe incluirse en la etiqueta de la cabeza. De lo contrario, es posible que obtengas "películas" de representación extraña, según el navegador. Si realmente desea usar hojas de estilo CSS por módulo, debe proporcionar ganchos a la etiqueta principal de su plantilla.

6

Honestamente, si lo hace solo una o dos veces en un gran proyecto, y ese diseño deficiente le ahorra días de recodificación de una nueva solución ... vaya por ello. Tienes razón, funciona.

Recibirás respuestas que es malo porque no es válido, porque simplemente no es correcto y si lo haces muchas veces, acepto que debes reconsiderar y solucionar el problema real. ¿Pero una vez? Yo digo, adelante; la web sigue siendo un lugar bastante imperfecto.

Simplemente no se postule para trabajar conmigo, no soportamos esa mierda aquí.

EDIT: Acabo de ver su otra pregunta y el sitio del que usted estaba hablando. Si esto está relacionado con su proyecto de fin de semana, hágalo de la manera correcta. Desarrolle buenos hábitos temprano y con frecuencia.

+0

sí, está relacionado con mi proyecto de fin de semana, divirtiéndome con él. La parte no en línea es mucho más avanzada que lo que está allí. Pero aún no es bueno para conectarse. Solo pasar un buen rato con el desarrollo web. – fmsf

18

Aunque teóricamente solo deberías poner CSS en la etiqueta head, en la práctica esto a menudo no es factible, o simplemente no vale la pena.

Si pones en el centro del documento, una de las dos cosas sucederá lo siguiente:

  • El navegador comenzará a cargar (y reproducción) de su página, y luego, una vez que se levanta para el nuevo CSS, el contenido existente cambiará o se moverá alrededor de

  • El navegador demorará un poco más para mostrar su contenido.

Lo primero parece malo, pero en general no es un problema. Bueno, no ha sido para mí de todos modos, porque 9 de cada 10 veces, si estás colocando CSS en el medio de la página, el CSS solo está "creado para" el contenido que viene después, y no lo hace afectan las cosas de arriba, por lo que no se moverán ni cambiarán de todos modos

Así que para responder a su pregunta de "qué tan malo es", yo diría - nada mal, solo tenga cuidado de escribir CSS que afecte partes de la página que se cargaron antes que el archivo CSS.

4

Puede funcionar ahora, pero como una etiqueta de enlace solo está permitida en la cabeza, no hay garantía de que funcione en el futuro; una actualización del navegador puede llevar a que el css no se use más.

Pero, de nuevo, quizás no.

De todos modos, definitivamente no lo recomendaría.

Edit: Todo el mundo siempre se queja de que IE no cumple con los estándares, no comencemos a hacerlo también como desarrolladores.

0

HTML5 presenta el atributo "ámbito" en el elemento de estilo, que en parte aborda su caso de uso, porque es un caso muy común para mezclas. Sin embargo, hasta donde yo sé, no hay equivalente para el elemento de enlace. Además, no sé si algún navegador admite actualmente el atributo "con alcance".

0

Teóricamente, si necesita cargar estilos CSS en el cuerpo, puede usar php include. Pero no estoy seguro de que - si no funciona - intentar cambiar el archivo CSS para PHP:

style.php:

<style> 
body {} 
</style> 
construcción de carga

o el uso de jQuery y crear nuevo elemento de estilo & append en el cuerpo

Cuestiones relacionadas