【问题标题】:Can i fix Cumulative Layout Shift without knowing the width and hight of an Image?我可以在不知道图像宽度和高度的情况下修复累积布局偏移吗?
【发布时间】:2022-01-20 19:57:23
【问题描述】:

我尝试了宽高比和 padding-top 技巧,但有没有办法自动化所有这些?

【问题讨论】:

  • 那么你知道纵横比吗?如果是,当您执行无法自动化的操作时发生了什么?
  • 好吧,让我这样问:有没有办法在没有明确宽度、高度或纵横比的情况下修复 CLS?

标签: html sass lighthouse cumulative-layout-shift


【解决方案1】:

我假设您不控制文档(设置明确的高度/宽度)、资源(通过渐进式 jpg 加快处理速度)或服务器(使用 http2 推送或添加明确的 http 标头)并且您想用 css 严格地做到这一点。

除非我遗漏了什么,否则无法精确完成。

您可以做的是通过在图像包装元素上设置min-height降低CLS 的幅度,以尽可能减少可能的结果。这样,CLS 将仅针对差异,而不针对整个高度。

可以这样做:

A - 简单 - 如果您知道没有图片的高度会小于 这么多 个像素*,而不是 ser,您会在包装上设置一个等于该像素数的最小高度.

*(实际显示的像素,不是原始文件的像素,数字可能匹配或不取决于您的实现)

B - 稍微复杂 - 如果您知道没有图片的纵横比会小于某个值,您可以在 vw 中设置一个最小高度,其中精确值是特定计算的结果**每个媒体查询。

**(例如,一个 2/1 或更大的图像 - 例如 1000x500px - 如果它位于全宽列上,则将安全地位于 min-height="50vw" 包装器中,如果位于半宽列上,则位于 min-height="25vw" 包装器中。宽度列等)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-28
    • 2022-09-28
    • 1970-01-01
    • 2012-08-20
    • 1970-01-01
    • 1970-01-01
    • 2010-12-16
    • 1970-01-01
    相关资源
    最近更新 更多