兼容性治理

共 18 题
#

1. Can I Use、MDN BCD 与浏览器发行说明发生冲突时,应按什么证据顺序确认实际可用版本

A Can I Use 的数据总是比浏览器官方发行说明更准确
B 数据源冲突时应优先采用引擎实现状态与官方发行说明,聚合数据仅作索引,最终以实测为准 ✓ 正确答案
C MDN BCD 是浏览器引擎源码的组成部分
D 只要 Can I Use 标记支持,生产环境即可放心使用
#

2. 兼容矩阵怎样记录数据日期、功能标志、部分支持和已知缺陷,才能在浏览器更新后重现历史决策

A 浏览器版本更新后历史决策必然无法重现
B 功能标志的状态不影响兼容性判断
C 兼容矩阵只需记录"支持/不支持"两种状态
D 矩阵应记录验证日期、浏览器版本快照、功能标志与缺陷链接,更新时追加并保留历史 ✓ 正确答案
#

3. Masonry 采用 grid-lanes 方向演进后,视觉顺序、DOM 顺序与键盘焦点顺序应如何保持一致

A Masonry 等视觉重排可能造成 Tab 焦点顺序与视觉顺序不一致,应优先保持 DOM 顺序并自动化校验 ✓ 正确答案
B 屏幕阅读器按视觉顺序朗读,不受 DOM 顺序影响
C Masonry 的视觉顺序永远与 DOM 顺序一致
D CSS order 重排不会影响键盘焦点顺序
#

4. Anchor Positioning 在锚点被裁剪、滚动或移出 containing block 时,如何用 position-visibility 和回退位置避免浮层跳变

A 锚点移出视口后浮层会自动跟随滚动
B 使用 anchor() 定位的浮层不需要回退策略
C containing block 的裁剪不会影响锚点定位
D position-visibility: anchors-visible 可在锚点不可见时隐藏浮层,配合 @position-try 回退位置避免跳变 ✓ 正确答案
#

5. @scope、Cascade Layers 和 Shadow DOM 同时存在时,继承、自定义属性与 ::slotted() 分别在哪一层生效

A @layer 与 @scope 同时存在时 @scope 完全失效
B ::slotted() 的样式来自外部文档的样式表
C Shadow DOM 内的样式永远不会被外部覆盖
D 自定义属性可以穿越 shadow 边界继承,而普通类选择器规则不会 ✓ 正确答案
#

6. Blink(Chrome/Edge)、Gecko(Firefox)、WebKit(Safari)渲染引擎与 V8/SpiderMonkey/JavaScriptCore 的差异会体现在哪些具体行为上(CSS 解析容错与 -webkit- 前缀遗留、滚动条样式与弹性滚动、Promise 微任务时序、Intl 区域数据),兼容矩阵应如何按引擎而非品牌版本组织测试?

A Safari 与 Chrome 使用同一渲染引擎
B Chrome 与 Edge 在所有行为上完全一致
C 兼容矩阵应按引擎维度组织,因为引擎间存在 CSS 解析、微任务时序、Intl 数据等具体行为差异 ✓ 正确答案
D 各引擎内置的 Intl 区域数据完全一致
#

7. State of JS、State of HTML 与 State of CSS 等年度调查的抽样方式、受访者结构和题目变化会怎样影响跨年度结论

A 调查结果可以替代浏览器使用统计
B 年度调查的百分比可以直接逐年对比
C 自愿填写调查存在自选择偏差与题目变化,只能作为社区注意力趋势信号而非采用率证据 ✓ 正确答案
D 受访者结构不影响调查结论
#

8. Can I Use 的 feature、status、usage、browser release 与备注数据应如何转换为可审计的产品兼容表

A usage 数据与兼容性判断无关
B Can I Use 的 a(部分支持)状态可以直接记为支持
C 应锁定数据快照、记录生成时间并保留变更记录,使兼容表可审计 ✓ 正确答案
D Can I Use 数据实时生成,无需版本管理
#

9. Web Platform Baseline 的 Newly Available、Widely Available 与非 Baseline 状态如何映射到 Chrome、Edge、Firefox、Safari 的版本矩阵

A Newly Available 表示特性仅在 Chrome 中可用
B Baseline 状态可以完全替代兼容矩阵
C Widely Available 表示特性在四个核心浏览器中均可用且已满 30 个月窗口 ✓ 正确答案
D Newly Available 的特性无需任何降级策略
#

10. 如何把 State of JS/HTML/CSS 的开发者采用率与真实用户浏览器遥测分开解读,避免用流行度替代兼容性证据

A State of JS 的样本能代表全部开发者
B 开发者调查的采用率可以直接决定是否使用某 API
C 浏览器遥测无法反映用户环境
D 兼容性决策应以真实用户浏览器遥测为准,调查数据仅作前瞻信号 ✓ 正确答案
#

11. @scope 的作用域根、作用域上限、donut scope 与级联接近度怎样改变组件样式的胜出规则

A @scope 引入级联接近度:DOM 距离更近的规则优先,与特异度共同决定胜出 ✓ 正确答案
B donut scope 会扩大样式应用范围
C 使用 @scope 后特异度不再起作用
D @scope 的规则永远比普通规则优先
#

12. 嵌套 @container 尺寸查询、样式查询与 scroll-state 查询如何避免循环依赖和不可预测的布局切换

A 嵌套容器查询可能形成循环依赖,应保持查询单向性并用稳定容器与默认值兜底 ✓ 正确答案
B 容器查询可以安全地查询自身尺寸
C 样式查询可以查询任意祖先的渲染尺寸
D scroll-state 查询不会与布局产生任何交互
#

13. 企业浏览器策略同时包含长期支持版、内嵌 WebView 和移动端系统浏览器时,兼容权重应怎样计算

A 权重应按真实用户流量占比计算,并区分 LTS、WebView 与系统浏览器的更新节奏差异 ✓ 正确答案
B WebView 的能力永远与 Chrome 正式版一致
C 移动端系统浏览器不存在版本碎片化问题
D 兼容权重应按浏览器品牌数量平均分配
#

14. 如何在持续集成中以 browserslist、Can I Use 数据快照和 Baseline 目标阻止不受支持的语法或 API 进入产物

A browserslist 只影响 CSS 前缀生成
B Can I Use 数据快照无需锁定版本
C 用 browserslist 统一矩阵,配合 eslint-plugin-compat 与数据快照可在 CI 中拦截不支持的语法或 API ✓ 正确答案
D Baseline 目标仅用于文档说明,不影响构建
#

15. State of JS/HTML/CSS 的地区、语言、社区渠道和幸存者偏差会导致哪些典型误判

A 只要样本量足够大,调查就能代表全球开发者
B 调查样本的地域分布不影响结论的适用范围
C 地区、语言、渠道与幸存者偏差会高估新技术热度,结论应限定样本范围并交叉验证 ✓ 正确答案
D 幸存者偏差只会让调查数据偏低
#

16. 容器查询单位 cqw、cqh、cqi、cqb、cqmin、cqmax 在找不到合格查询容器时如何回退

A 找不到合格查询容器时容器查询单位会报错
B 无合格容器时容器查询单位回退为小视口单位,行为退化为视口基准 ✓ 正确答案
C 容器查询单位只受视口影响,与容器无关
D cqmin 恒等于容器宽度
#

17. 怎样用 @supports 与浏览器矩阵为 grid-lanes Masonry 提供不改变内容顺序的 Grid 或多列布局回退

A 不支持 masonry 时只能放弃该布局
B 回退方案必须保持视觉顺序与 DOM 顺序一致,CSS columns 按列填充可能造成顺序错位 ✓ 正确答案
C CSS columns 的按列填充不影响阅读顺序
D @supports 可以检测所有浏览器的 masonry 支持情况
#

18. CSS 新布局上线前应如何自动验证缩放、竖排文字、RTL、键盘导航和屏幕阅读器下的可用性

A 竖排文字不影响布局结构
B 组合视觉回归、键盘遍历模拟与 axe-core 扫描,可自动验证缩放、RTL、竖排与焦点顺序 ✓ 正确答案
C 屏幕阅读器验证可以完全自动化
D RTL 布局只需人工检查即可