entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

2votos

¿Porque se ven los elementos al fondo?

Hola....Tengo un navbar con position fixed la cual la tengo en un archivo aparte llamado cabezera.php,y ademas de eso lo utilizo en varias paginas haciendo uso de include().

Problema?

Bien.El problema esta en que cuando actualizo o simplemente hago refresh a las paginas todo los elementos que conforman este navbar se ven sin el CSS por un momento hasta que termina de refrescarse la pagina.¿Cual es la solución a este problema?

1 Respuesta

2votos

Leonardo-Tadei Puntos227320

Hola @luis2016,

no tiene mucha solución, pero no debería ser un problema en producción.

Para que el CSS cargue lo más rápido posible, debe estar al principio del head HTML del sitio. Luego los JavaScript y otras cosas de la página.

El navegador cargará la página, y al encontrar la primer referencia a oro archivo, abrirá una nueva tarea y la empezará a cargar.

Mientras no se carguen las reglas, estas no se podrán aplicar el HTML que se está descargando, y por eso por un momento se puede ver el HTML sin el estilo.

Sin embargo, con el sitio publicado, el CSS quedará cacheado en el navegador y esto podría pasar solo a un visitante que vaya al sitio por primera vez. Para todas las demás páginas, el CSS ya está en el disco del visitante y se aplica a medida que se descarga el HTML.

Vos lo verás más seguido, porque durante el desarrollo forzarás la carga completa de toda la página, con lo que tenés el efecto de la primera vez más seguido.

Podés mejorar un poco esto minificando el CSS y poniendo la definición del navbar al principio.

Recordá que al navegador le llega el HTML generado: no tiene que ver esto con que la cabecera esté en un include() o no.

Saludos cordiales!

1voto

luis2016 comentado

Que significa minificar?A que te refieres.?

1voto

luis2016 comentado

y si intento poner los estilos en la propiedad style de los elementos?

osea,asi: <button style="width:50px;height:50px;background:red;">Hola</button>
y asi por el estilo.

1voto

Leonardo-Tadei comentado

Me refiero a esto.

1voto

Leonardo-Tadei comentado

Si luego de mover el estilo del navbar al principio del CSS y de minificar el archivo te da problemas cuando no esás probando nuevo código, usar un estilo inline te ayudará, a costas de encarecer muchísimo cualquier modificación que debas hacer en el sitio.

En general no verás usada esta opción por lo costosa que es...

1voto

luis2016 comentado

Creo que ya lo solucione.Lo que hice fue guardar o poner el estilo de cada elemento en la misma cabezera dentro de un

<style type="text/css"></style>

Todo en la misma cabezera.php

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta