Sec-CH-Prefers-Reduced-Motion 头
HTTP Sec-CH-Prefers-Reduced-Motion
请求头是一个用户代理客户端提示,它指示用户代理倾向于显示减少动画效果。
如果服务器通过 Accept-CH
头向客户端发出信号,表示它接受 Sec-CH-Prefers-Reduced-Motion
,客户端随后可以通过此头响应,指示用户对减少动画效果的偏好。服务器可以向客户端发送适当调整的内容,例如 JavaScript 或 CSS,以减少后续渲染内容中呈现的任何动画的运动。这可能包括降低运动速度或幅度,以减少前庭运动障碍患者的不适。
此头是根据 prefers-reduced-motion
媒体查询建模的。
语法
Sec-CH-Prefers-Reduced-Motion: <preference>
指令
<preference>
-
用户代理对减少动画效果的偏好。这通常取自底层操作系统的设置。此指令的值可以是
no-preference
或reduce
。
示例
使用 Sec-CH-Prefers-Reduced-Motion
客户端向服务器发出初始请求
GET / HTTP/1.1
Host: example.com
服务器响应,通过 Accept-CH
告诉客户端它接受 Sec-CH-Prefers-Reduced-Motion
。在此示例中,Critical-CH
也被使用,表明 Sec-CH-Prefers-Reduced-Motion
被视为关键客户端提示。
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-CH
和 Vary
头中。
客户端自动重试请求(由于上面指定了 Critical-CH
),通过 Sec-CH-Prefers-Reduced-Motion
告诉服务器它具有减少动画效果的用户偏好
GET / HTTP/1.1
Host: example.com
Sec-CH-Prefers-Reduced-Motion: "reduce"
客户端将在当前会话的后续请求中包含该头,除非响应中的 Accept-CH
发生变化,表明服务器不再支持它。
规范
规范 |
---|
用户偏好媒体特性客户端提示标头 # sec-ch-prefers-reduced-motion |
浏览器兼容性
加载中…
另见
- 客户端提示
- 用户代理客户端提示 API
Accept-CH
prefers-reduced-motion
CSS 媒体查询- HTTP 缓存:Vary 和
Vary
标头 - 通过用户代理客户端提示改善用户隐私和开发者体验 (developer.chrome.com)