许多在线游戏使用 HTML 元素的动画作为核心游戏机制。例如,纸牌游戏可能对游戏板上的每张牌都有一个 DIV 元素或一个 IMG 元素。玩家将这些卡片拖放到整个棋盘上,游戏通常会显示持续几秒钟的动画。这种动画的一个例子是发牌,即在游戏开始时将它们从牌组分配到游戏板上的适当位置。这通常在 1) 没有用户交互的情况下,在进入网站时完成,然后 2) 在用户交互之后,在完成一个游戏并开始另一个游戏时完成。
这些动画超过 500 毫秒,因此(据我所知)在此之后完成移动的元素将计入 CLS,无论用户是否启动了动画。此外,在网站上与用户打招呼的发牌动画完全计入 CLS。这可以通过强制用户在初始动画之前与网站交互来解决,但这是一个糟糕的用户体验,因为这对用户来说是额外的不必要且可能令人讨厌的点击。有很多东西要写,但现在,我只想说显示(不是用户发起的)问候动画是在这种情况下最好的 UX 实践,它被最流行的游戏(也使用帆布)。
基于 HTML 元素的游戏网站非常受欢迎,包括纸牌、麻将、扫雷等。有些网站在谷歌搜索结果中名列前茅,每月拥有数十万用户。我怀疑其他非游戏相关的网站也可能会使用用户欣赏的有用的 HTML 元素移动动画。因此,我一般会问:
- 我是否正确理解 HTML 元素的此类动画,尽管是用户所期望的,但被当代 CLS 测量错误分类为意外?
- CLS 措施的设计者是否有意惩罚此类网站行为?我特别询问 SEO,因为我怀疑 CLS 可能会被某些排名算法用作一个因素。