【问题标题】:Responsive Web Page: Prevent desktop version Image from being download on mobile resolution响应式网页:防止桌面版图像以移动分辨率下载
【发布时间】:2020-07-27 14:59:13
【问题描述】:

在我的 HTML/PHP 页面上,我首先有移动 HTML 块,它隐藏在桌面分辨率上,然后是桌面 HTML 块,它隐藏在相反的移动分辨率上:

<div class="mobile-version">
    <img src="/images/300.jpg">
</div>  

<div class="desktop-version">
    <img src="/images/90.jpg">
</div>    

我正在尝试提高我的 Google 页面速度得分,因此如果用户在移动屏幕宽度上,我不想加载 90.jpg

但是,如果我只使用style="display:none",我可以在 chrome dev 中看到。浏览器仍在加载图像的工具。

如何处理?

【问题讨论】:

  • display none 只会阻止图像显示,而不是加载。您应该使用媒体查询并根据应用的媒体查询加载图像
  • @LelioFaieta 但这正是我要问的,如何根据 CSS 媒体查询“加载”图像?什么是正确的 CSS 属性?

标签: html css responsive-design pagespeed google-pagespeed


【解决方案1】:

dom 在应用任何 css 之前被解释。在这个阶段,我看到了两种解决方案:

延迟加载:这将需要 javascript;你只能在没有被有效隐藏的元素上注入 src 标签。

Html 5 图片元素:这个 HTML5 元素包含 和 标签。优点是您可以在源元素中应用媒体过滤器,因此只能在桌面设备上加载。唯一会一直加载的是后备的 img src,但这样的问题较少。

【讨论】:

  • 第一次听说这个图片元素。这是一个好习惯吗?
猜你喜欢
  • 2013-03-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-03-24
  • 2021-10-17
  • 2015-11-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多