Esto me ha estado frustrando durante años. Mi corrección de CSS establece una imagen de fondo en el img
. Cuando una imagen dinámica src
no se carga en primer plano, se visualiza un marcador de posición en el img
bg del 's. Esto funciona si las imágenes tienen un tamaño predeterminado (por ejemplo height
, min-height
, width
y / o min-width
).
Verá el icono de imagen rota, pero es una mejora. Probado hasta IE9 con éxito. iOS Safari y Chrome ni siquiera muestran un ícono roto.
.dynamicContainer img {
background: url('/images/placeholder.png');
background-size: contain;
}
Agregue una pequeña animación para dar src
tiempo a cargar sin un parpadeo de fondo. Chrome se desvanece en el fondo sin problemas, pero Safari de escritorio no.
.dynamicContainer img {
background: url('/images/placeholder.png');
background-size: contain;
-webkit-animation: fadein 1s;
animation: fadein 1s;
}
@-webkit-keyframes fadein {
0% { opacity: 0.0; }
50% { opacity: 0.5; }
100% { opacity: 1.0; }
}
@keyframes fadein {
0% { opacity: 0.0; }
50% { opacity: 0.5; }
100% { opacity: 1.0; }
}