html - 在浏览器中加载时不显示 JPEG 的背景
问题描述
对于我网站的某些用户,我的图片可能加载缓慢,因此我希望在加载时有一个合理的后备占位符。我找到了gradify 库,它可以创建与图像匹配的 CSV 渐变。
在图像开始加载之前,会显示背景渐变。但是,一旦图像开始加载,它就会被替换为白色背景,然后从上到下加载。
(您可以通过在加载图像时激活浏览器开发工具中的限制来看到这一点。)
在没有 JavaScript 的情况下,是否有可能在完全下载之前不开始显示图像?
我想我可以通过更改为隔行扫描/逐行扫描图像来部分缓解这种情况,但我仍然对问题的答案感兴趣:)
body {
/* just centering stuff, not really part of the question */
display: flex;
align-items: center;
justify-content: center;
min-height: 100vh;
margin: 0;
/* bg so you can see the effect */
background: radial-gradient(circle, #222 0%, #aaa 100%);
}
img {
width: 10em;
height: 10em;
border: 5px solid purple;
border-radius: 50%;
box-sizing: border-box;
/* generated by gradify */
background-color: rgb(72,148,223);
background-image: linear-gradient(270deg, rgba(72,148,223,1) 0%, rgba(72,148,223,0) 100%),linear-gradient(90deg, rgba(49,98,174,1) 0%, rgba(49,98,174,0) 100%),linear-gradient(180deg, rgba(114,129,143,1) 0%, rgba(114,129,143,0) 100%),linear-gradient(0deg, rgba(43,48,71,1) 0%, rgba(43,48,71,0) 100%);
}
<html>
<body>
<img src="https://jpeg.org/images/about.jpg">
</body>
</html>
解决方案
推荐阅读
- flutter - 超过 6 个 ProxyProvider 的提供者,怎么办?
- machine-learning - 气流和 Kubeflow 管道有什么区别?
- javascript - 3个变量变成一个函数javascript?'变量是真还是假,根据结果我将其更改为字符串
- wso2 - 无法在 Siddhi 中使用“正则表达式”http 状态代码处理响应
- vue.js - vue+bulma 选项卡错误:'openTab' 已定义但从未使用
- mysql - 我可以创建一个过程或函数来删除 mysql 中的参数表吗?
- html - 如何在带有控制器和视图的 codeigniter4 中应用表单验证?
- css - 仅在触发元素下方定位 Mat-Select 选项
- visual-studio - 如何将 Visual Studio 2019 中的调试输出重定向到文件?
- php - WordPress 检查查询是否针对 pre_get_posts 过滤器中的自定义类型