2009-02-16 20 views
9

¿Cuáles son los pros y contras en CSS interno vs externo, pensando en la velocidad, las solicitudes, el almacenamiento en caché, etc.? Personalmente, no estoy seguro de si el CSS interno de las páginas dinámicas se almacenará en caché ...interno vs externo CSS

Respuesta

13

Pros para CSS interna: - descargas más rápidas: Recuerde que habrá una petición HTTP adicional por cada hoja de estilo externa que tiene

Pros para CSS externo: - es común que los sitios web tener un 'tema' común en todas sus páginas. Puede agrupar todos estos estilos comunes en archivos externos y con una descarga obtendrá el estilo requerido que se puede usar en varias páginas: ahorra tiempo de descarga - también puede almacenar en caché estilos externos y establecer una fecha de caducidad adecuada.

Una cosa en contra de CSS interno es que puede aumentar el tamaño de descarga del html.

mejor enfoque: - utilización mezcla de estilos internos + externa en función de los cuales se utilizan estilos en páginas diff - Asegúrese de ajustar la configuración de caducidad en los estilos externos y almacenar en caché ellos.

ventaja de combinar con el caché de la caducidad: "look and feel" de aplicaciones web se rige por la siguiente:

  • que normalmente quieren mantener la misma 'sensación' en todas las páginas
  • el contenido es más probable que cambie con frecuencia que el estilo

Si coloca estilos en un archivo CSS externo y establece un caché de caducidad de, por ejemplo, 1 mes, durante este tiempo todos nosotros Los usuarios tendrán retrasos de inicio muy bajos porque solo se descargará el contenido que se modificó: los estilos se reutilizarán desde la memoria caché de su navegador. El navegador solicitará una actualización automáticamente la primera vez que alguien intente acceder a su página después de la fecha de caducidad.

+0

No estoy muy familiarizado con el funcionamiento del almacenamiento en caché de las páginas html. Todas las páginas son bastante dinámicas y se modificarán cada vez que visite un usuario. ¿Eso significa que toda la página se volverá a cargar? – olemarius

+0

En general, una solicitud HTTP menos no supera los x KB adicionales que se agregan a una página como resultado de CSS en línea, aunque acepto que el estilo (usado únicamente en la página 1) podría incluirse mejor en línea. – CJM

+0

[para 'leer' en línea 'interno'] – CJM

1

No, no lo harán. El CSS externo se puede almacenar en caché en varias páginas/solicitudes, además, normalmente puede comprimir estos archivos mediante gzip.

10

Si la página es de caché, el CSS interno para esta página también es cachable (ya que es parte de la página). Pero las hojas de estilo externas tienen la ventaja de que pueden usarse para muchas páginas y solo se solicitan una vez cuando se pueden guardar en caché.

Por lo tanto, primero tiene una solicitud adicional (la hoja de estilo externa) pero luego menos datos para transferir en otras solicitudes.

1

El uso de CSS externo garantiza que el aspecto de todas sus páginas sea uniforme, al menos si utiliza 1 archivo CSS para todo el sitio. Puede haber una penalización de velocidad para la primera página, pero a partir de ese momento el archivo CSS se almacena en caché y, como resultado, las páginas subsiguientes se cargarán más rápido.

De vez en cuando uso CSS interno donde es muy específico para la página, y de ninguna utilidad en otro lado. Nunca los coloque en línea sin embargo; CSS en línea es muy difícil de mantener.

Cuestiones relacionadas