¿Qué tiene de malo el CSS en línea?

Resuelto ChessWhiz asked hace 14 años • 21 respuestas

Cuando veo el código de inicio del sitio web y ejemplos, el CSS siempre está en un archivo separado, llamado algo así como "main.css", "default.css" o "Site.css". Sin embargo, cuando estoy codificando una página, a menudo tengo la tentación de alinear el CSS con un elemento DOM, por ejemplo configurando "float: right" en una imagen. Tengo la sensación de que se trata de una "mala codificación", ya que rara vez se hace en los ejemplos.

Entiendo que si el estilo se aplicará a varios objetos, es aconsejable seguir "No repetirse" (DRY) y asignarlo a una clase CSS a la que hará referencia cada elemento. Sin embargo, si no voy a repetir el CSS en otro elemento, ¿por qué no alinear el CSS mientras escribo el HTML?

La pregunta: ¿Se considera malo usar CSS en línea, incluso si solo se usará en ese elemento? Si es así, ¿por qué?

Ejemplo (¿esto es malo?):

<img src="myimage.gif" style="float:right" />
ChessWhiz avatar Apr 10 '10 13:04 ChessWhiz
Aceptado

Tener que cambiar 100 líneas de código cuando quieres que el sitio luzca diferente. Es posible que eso no se aplique en su ejemplo, pero si está usando CSS en línea para cosas como

<div style ="font-size:larger; text-align:center; font-weight:bold">

en cada página para indicar un encabezado de página, sería mucho más fácil de mantener como

<div class="pageheader">  

si el encabezado de la página está definido en una única hoja de estilo, de modo que si desea cambiar la apariencia del encabezado de una página en todo el sitio, cambie el CSS en un solo lugar.

Sin embargo, seré un hereje y diré que en su ejemplo no veo ningún problema. Estás apuntando al comportamiento de una sola imagen, que probablemente tenga que verse correctamente en una sola página, por lo que poner el CSS real en una hoja de estilo probablemente sería excesivo.

David avatar Apr 10 '2010 06:04 David

La ventaja de tener un archivo CSS diferente es

  1. Fácil de mantener su página HTML
  2. Cambiar la apariencia será fácil y podrá tener soporte para muchos temas en sus páginas.
  3. Su archivo CSS se almacenará en caché en el lado del navegador. Por lo tanto, contribuirá un poco al tráfico de Internet al no cargar algunos kbs de datos cada vez que se actualiza la página o el usuario navega por su sitio.
vijay.shad avatar Apr 10 '2010 06:04 vijay.shad