用途
该技能用于在审查网站时,识别并修复因广告拦截器过滤规则而导致的布局和功能问题。广告拦截器会依据 EasyList 等过滤列表,隐藏类名、ID 或模式与广告相关的元素,这可能误伤合法的页面组件。
主要能力
- 识别常见被拦截的类名与 ID,例如 .ad、.ads、.advertisement、.banner、.sponsor、#ad、#ads、#banner、.cookie-notice、.consent 等。
- 定位受影响的合法元素,包括横幅、通知栏、推广区块以及 Cookie 同意提示。
- 指导在启用 uBlock Origin 的浏览器中测试页面,检查内容缺失、布局错乱或同意横幅被隐藏等问题。
- 提供重命名建议,使用语义化、内容相关的类名避免误拦截。
使用方式
检查阶段:审查 HTML 源码中匹配常见广告拦截模式的元素 ID 与类名,并在启用 uBlock Origin 的浏览器中测试页面,找出被隐藏的元素。
修复阶段:将受影响元素重命名为具体、以内容为中心的类名,避免匹配广告拦截模式。针对 Cookie 同意横幅,建议使用 .privacy-controls 或 .cookie-preferences 等类名,替代 .cookie-banner 或 .gdpr-notice。
说明阶段:解释广告拦截过滤列表的工作机制、常见被拦截的 HTML 类名与 ID,以及如何重命名元素以避免误拦截并保持其功能。
代码审查:审查与广告拦截元素隐藏相关的服务器配置、响应头、表单和集成点,标记违反规则的响应、Cookie 或浏览器行为,并对照接近生产环境的有效响应进行验证。
完整实现细节、代码示例和框架特定指南见 references/rule.md。规则页面:https://frontendchecklist.io/en/rules/security/element-hiding
适用场景
适用于前端开发与代码审查过程中,尤其是涉及 Cookie 同意横幅、通知栏、推广区块等可能被广告拦截器误隐藏的组件。当网站需要满足 GDPR 等合规要求,或需要确保约 30-40% 桌面用户(使用广告拦截器)能正常看到关键内容时,该技能尤为相关。
限制
资料未提供该技能的具体安装命令、支持的框架列表、自动化程度或收费信息。实际效果取决于广告拦截器过滤列表的更新情况,无法保证所有误拦截场景均被覆盖。