- Lazily loaded images use an img element as the placeholder.
- Ensure that the loading indicator is displayed in the center of the placeholder as before (see T159477#3076149).
- The front-end code handles cached HTML.
If we use <img> tag as the placeholder, instead of using <span> as the wrapper, the content would be more correct semantically, and slightly smaller DOM after expansion.
We only need to hide "src" and "srcset" to their data- counterparts, but not other attributes like alt, width, and height.
This is also the way most content sites do the lazy loading.
This would also give various offline tools better hints on how to special-case lazily loaded images. DOM distiller for Reading List in Chrome would be one example.