Sec-CH-Prefers-Reduced-Motion

实验性: 这是一个 实验性技术
在生产环境中使用之前,请仔细查看 浏览器兼容性表

安全上下文: 此功能仅在 安全上下文 (HTTPS) 中可用,在某些或所有 支持的浏览器 中可用。

Sec-CH-Prefers-Reduced-Motion 用户代理客户端提示 请求头指示用户代理对动画显示的偏好,以减少运动。

如果服务器通过 Accept-CH 标头向客户端发出信号,表明它接受 Sec-CH-Prefers-Reduced-Motion,则客户端可以响应此标头来指示用户的减少运动偏好。服务器可以向客户端发送经过适当调整的内容,例如 JavaScript 或 CSS,以减少后续渲染内容中呈现的任何动画的运动。这可能包括降低运动速度或幅度,以减少患有前庭运动障碍的人的不适。

此标头是根据 prefers-reduced-motion 媒体查询建模的。

标头类型 请求头客户端提示
禁止的标头名称

语法

http
Sec-CH-Prefers-Reduced-Motion: <preference>

指令

<preference>

用户代理对减少运动动画的偏好。这通常取自底层操作系统的设置。此指令的值可以是 no-preferencereduce

示例

客户端向服务器发出初始请求

http
GET / HTTP/1.1
Host: example.com

服务器响应,通过 Accept-CH 告诉客户端它接受 Sec-CH-Prefers-Reduced-Motion。在此示例中,还使用了 Critical-CH,表示 Sec-CH-Prefers-Reduced-Motion 被视为 关键客户端提示

http
HTTP/1.1 200 OK
Content-Type: text/html
Accept-CH: Sec-CH-Prefers-Reduced-Motion
Vary: Sec-CH-Prefers-Reduced-Motion
Critical-CH: Sec-CH-Prefers-Reduced-Motion

注意: 我们还在 Vary 标头中指定了 Sec-CH-Prefers-Reduced-Motion,以指示浏览器,即使 URL 保持不变,所提供的内容也会根据此标头值有所不同,因此浏览器不应只使用现有的缓存响应,而应将此响应单独缓存。在 Critical-CH 标头中列出的每个标头也应该出现在 Accept-CHVary 标头中。

客户端自动重试请求(由于上面指定了 Critical-CH),通过 Sec-CH-Prefers-Reduced-Motion 告诉服务器它对减少运动动画有用户偏好

http
GET / HTTP/1.1
Host: example.com
Sec-CH-Prefers-Reduced-Motion: "reduce"

客户端将在当前会话中的后续请求中包含该标头,除非 Accept-CH 在响应中发生变化,以指示服务器不再支持它。

规范

规范
用户偏好媒体特性客户端提示标头
# sec-ch-prefers-reduced-motion

浏览器兼容性

BCD 表仅在浏览器中加载

另请参阅