过时的 HTML 代码片段与历史遗物

过时的 HTML 代码片段与历史遗物

Hacker News 摘要

原标题:Antiquated HTML Snippets and Artefacts

这篇文章整理并介绍了因浏览器竞争、第三方集成、厂商专有扩展及平台特定黑客手段而产生,但如今已过时或被废弃的各种 HTML 代码片段与遗留标记。

浏览器兼容与模式切换

• X-UA-Compatible:用于指示 Internet Explorer(IE)以特定版本或最高模式渲染网页,例如 IE=edge。此外还可以指定 chrome=1 以调用针对旧版 IE 的 Google Chrome Frame 插件,或使用 requiresActiveX=true 提示 IE 10 在 Metro 模式下切换至支持插件的桌面模式。

• 条件注释(Conditional Comments):在 IE 中通过特定语法(如 <!--[if gte IE 6]>)针对特定浏览器版本提供专属代码。网景(Netscape)浏览器也曾通过在注释后紧跟 JavaScript 实体的形式实现类似判断。

• Frame Buster(防内嵌框架):早期通过 <meta http-equiv="Window-target" content="_top"> 防止网页被第三方网站通过 Frame 恶意嵌套,现代网页已改用专门的安全响应头。

• ClearType:通过 <meta http-equiv="cleartype" content="on"> 改善低分辨率设备(如 Pocket IE 或 IE 移动版)上的字体清晰度。

厂商特定扩展与功能控制

• 微软智能标签(Microsoft Smart Tags):IE 6 曾尝试在网页中自动插入公司名称等链接,开发者可通过 <meta name="MSSmartTagsPreventParsing" content="TRUE"> 阻止这一破坏页面原本内容的行为,微软随后移除了该功能。

• 页面切换过渡效果(Interpage Transitions):IE 4 至 IE 8 支持类似幻灯片切换的 Page-Enter 和 Page-Exit 滤镜效果,现代网页则由视图过渡 API(View Transition API)接替。

• 图片工具栏与点击高亮:IE 6 默认会在图片上浮出操作栏,开发者使用 <meta http-equiv="imagetoolbar" content="no"> 进行禁用;IE 11 则引入了 msapplication-tap-highlight 用于关闭链接被点击时的高亮效果。

• IE 阅读视图:通过 <meta name="IE_RM_OFF" content="true"> 禁止 IE 9 及以上版本展示内置的简化阅读模式按钮。

• Skype 工具栏:针对随 Skype 自动安装的浏览器扩展,开发者使用 <meta name="skype_toolbar" content="skype_toolbar_parser_compatible"> 防止该扩展自动识别电话号码并破坏网页排版。

• 百度网页转码:移动端百度浏览器曾对网页进行排版重组、压缩图片并强行插入联盟广告,站长通过 <meta http-equiv="Cache-Control" content="no-siteapp,no-transform"> 和 applicable-device 来声明拒绝转码。

早期移动端与 Web 应用配置

• 早期移动端视口标记:在标准的移动视口声明普及前,针对掌上电脑(PDA)和黑莓等设备通常使用 HandheldFriendly,而早期 Windows Mobile 则依赖 MobileOptimized。

• 国产手机浏览器控制:UC 浏览器和 QQ 浏览器支持通过 screen-orientation、x5-orientation、full-screen 和 x5-fullscreen 等元标签来锁定屏幕方向和强制全屏显示。

• iOS Web 应用设置:苹果为了让网页添加到主屏幕时拥有原生应用体验,引入了 apple-touch-icon、apple-touch-startup-image、apple-mobile-web-app-capable 以及状态栏样式配置。

• 微软与 Chrome 的固定网站和桌面应用:IE 9 引入了一系列 msapplication-* 标签用于支持将网站固定在 Windows 任务栏并配置磁贴颜色、图标和右键快捷任务;Chrome 也曾推出过基于清单文件的无 CRX 扩展应用;Safari 则支持过固定标签页专用的单色矢量遮罩图标。目前这些均被渐进式 Web 应用(PWA)规范取代。

搜索引擎、抓取与分类元数据

• ICBM 地理坐标:使用 <meta name="ICBM"> 标明网站相关的地理经纬度,早期曾被用于在虚拟地球服务上标记站点。

• PICS 内容分级:万维网联盟在 20 世纪 90 年代中期推出的互联网内容选择平台,用于给网站分级过滤,后因虚假标记和无人使用而废弃。

• AJAX 抓取标记:Google 早期的爬虫无法执行 JavaScript,要求开发者添加 <meta name="fragment" content="!">,并由服务器为带特定参数的请求返回渲染好的静态 HTML。

• 目录服务元标签:使用 robots 元标签中的 noodp 和 noydir 防止搜索引擎抓取雅虎目录和开放目录项目(DMoz)中人工编写的摘要,随着这些目录关闭已失去意义。

• Revisit-After 传闻:源于加拿大温哥华一个本地小搜索引擎用于提示重新抓取周期的标签,后来成为广泛流传但从未被主流搜索引擎采用的搜索引擎优化伪策略。

• 页面预渲染与 AMP:Chrome 早期支持的 <link rel="prerender">(已被推测规则 API 取代)以及用于关联移动端加速页面版本的 amphtml 标签,目前都已被淘汰。

社交分享与早期内容发布集成

• FrontPage 专属标记:微软 FrontPage 编辑器在代码中插入的 WebBot 注释标记,配合其服务器扩展实现计数器、最后修改时间或页面包含等功能。

• Really Simple Discovery(RSD)与 Pingback:博客系统曾通过包含 RSD 的 XML 配置允许外部离线写作客户端接入;Pingback 则用于在文章互相引用时自动通知对方,但后来沦为垃圾外链和拒绝服务攻击的温床。

• Share Partners:在 Open Graph 协议推出前,Facebook 及 Digg 等平台曾使用 image_src、audio_src 等标签来指定分享卡片的媒体缩略图。

• Twitter 卡片及免追踪标签:Twitter 早期用于生成分享摘要的 twitter:* 系列元标签目前大多已被通用的 Open Graph 覆盖,其针对站外挂件的防追踪标签 twitter:dnt 也已不再维护。


原文:https://vale.rocks/posts/html-relics

评论:https://news.ycombinator.com/item?id=49607991

Report Page