Ini telah membuat saya frustasi selama bertahun-tahun. Perbaikan CSS saya menetapkan gambar latar belakang pada img
. Saat gambar dinamis src
tidak dimuat ke latar depan, placeholder terlihat img
di bg. Ini berfungsi jika gambar Anda memiliki ukuran default (misalnya height
, min-height
, width
dan / atau min-width
).
Anda akan melihat ikon gambar yang rusak tetapi ini merupakan peningkatan. Diuji ke IE9 berhasil. iOS Safari dan Chrome bahkan tidak menampilkan ikon yang rusak.
.dynamicContainer img {
background: url('/images/placeholder.png');
background-size: contain;
}
Tambahkan sedikit animasi untuk memberi src
waktu memuat tanpa flicker latar belakang. Chrome memudar di latar belakang dengan lancar tetapi desktop Safari tidak.
.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; }
}