Skip to content

gulpfile.js中"ie8"兼容性配置:这是在2025年发生的吗? #6

@bilibili-down

Description

@bilibili-down

问题描述

gulpfile.js 中,CSS 压缩配置在 2025 年仍然在维护 IE8 兼容性:

cleanCSS({ compatibility: "ie8" })

这里有几个值得讨论的问题:

1. IE8 已于 2016 年停止支持

  • 微软官方于 2016 年 1 月 12 日停止了 IE8 的支持
  • 现在是 2025 年,IE8 已经 9 年没有更新了
  • 全球 IE8 使用率早就降到小数点以下(即使在落后的浏览器市场中)

2. 这破坏了整个项目的现代化承诺

根据 package.json,项目在使用:

  • hexo@^8.0.0
  • gulp@^5.0.1
  • hexo-renderer-markdown-it@^7.1.1

这些都是相对现代的版本,但却仍然在为一个已死的浏览器优化代码。这是一个矛盾的信号

3. CSS 兼容性选项的实际影响

compatibility: "ie8" 会:

  • ❌ 强制保留大量过时的 CSS hack
  • ❌ 防止使用现代 CSS 特性的高效缩小
  • ❌ 增加最终 CSS 文件体积
  • ✅ 完全没有人会从中受益

4. 建议

替换为:

cleanCSS({ compatibility: "*" })  // 或直接使用默认值

或者根本不需要兼容性配置,使用最新的 clean-css 默认行为。


结论

这看起来像是一份配置文件被"复制粘贴"了多年,从未有人质疑过为什么要支持一个不存在的浏览器。

如果这是故意的:建议在 README 中明确说明为什么需要 IE8 支持(我很想听听理由)
如果这是无意的:那就是技术债。删掉它。

现在的问题是:有谁在真正阅读这个 gulpfile 吗?🤔

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions