从技术上讲,您所描述的功能可以通过 css、html 或 javascript 来实现。
在 CSS 中,您可以使用 媒体查询 通过 background 属性加载图片,
.image {
background: url("image.jpg");
}
@media only screen and (max-width: 250px) {
.image {
background: url("alternative-image.jpg");
}
}
或者,如果您在 html 文档中加载了两个 图像,则通过 display 属性。
.image {
display: initial;
}
.alternative-image {
display: none;
}
@media only screen and (max-width: 250px) {
.image {
display: none;
}
.alternative-image {
display: initial;
}
}
阅读有关媒体查询的更多信息here。
在HTML中你可以使用图片和源元素,
<picture>
<source media="(min-width: 250px)" srcset="image.jpg" />
<img src="alternative-image.jpg" />
</picture>
或更简单的替代方法,srcset 属性。
<img src="alternative-image.jpg" srcset="image.jpg 250px" />
阅读更多关于它的信息here。
最后,在 JavaScript 中,您可以使用 窗口大小属性 构建一个函数,为每个大小每次调整窗口大小时加载正确的图像。
window.onresize = function () {
if (window.innerWidth < 250) {
image.setAttribute("src", "alternative-image.jpg");
} else {
image.setAttribute("src", "image.jpg");
}
}
阅读一些关于窗口大小属性的信息here。
PS。请不直接使用这些示例,因为它们不完整且未优化。他们的唯一目的是模拟他们引用的资源的使用。