掘金文章 · 用 Codex 一句话复刻小米官网,AI 写前端已经离谱到这个程度了?
日期 :2026-07-08 规格 :1500-3000字 · 先讲人话再讲技术 目标:前端开发者 / 全栈程序员
先说人话:我白嫖了一个网站
事情是这样的。
昨天刷掘金热榜,看到一条帖子:"小米 MiMoCode 官网颜值高?Codex:拿来吧,您嘞!1:1 完美复刻~"
我当时心想:又来了,又一个标题党。AI 复刻网站?估计就是截个图生成一堆 div,CSS 全靠猜,动效全丢。
但我还是手贱试了一下。
30 秒后,我看着浏览器里那个和小米官网几乎一模一样的页面------渐变背景、毛玻璃卡片、响应式布局、hover 动效------陷入了沉思。
我™什么都没干,就输了一句话。
怎么回事
先说 Codex 是什么。
Codex 是 OpenAI 推出的 AI 编程 Agent,跑在终端里。你可以把它理解成一个「会说人话就能指挥的程序员」。你告诉它要干什么,它自己去分析、去写代码、去调试。
和 GitHub Copilot 的区别?Copilot 是副驾驶------你开车,它帮你打方向盘。Codex 是代驾------你把钥匙给它,坐到副驾刷手机就行。
安装就一行:
bash
npm install -g @openai/codex
然后你要复刻哪个网站,直接把 URL 扔给它:
bash
codex "克隆这个网站的全部前端:https://mimo-code.xiaomi.com,包括样式、动画和响应式"
回车。然后你就可以去接杯水了。
它到底做了啥
我盯着终端看了 30 秒。代码像瀑布一样往下滚。
它生成了:
index.html--- 语义化结构,nav/main/footer 分明style.css--- CSS 变量管理配色,媒体查询做响应式script.js--- 导航切换、滚动动画、卡片交互
跑起来之后,左屏是原版小米 MiMoCode 官网,右屏是 Codex 生成版。我同步滚动对比------
导航栏:logo + 菜单项 + 按钮,布局一模一样。
Hero 区域:渐变背景色值几乎一致,标题字体大小和间距正确,CTA 按钮的圆角和阴影都在。
特性卡片:毛玻璃效果(backdrop-filter)被正确识别并复刻。卡片间距、hover 上浮动画、阴影过渡,全在。
响应式:缩小浏览器窗口,768px 断点处导航折叠成汉堡菜单,卡片从三列变成单列。断点值都猜对了。
诚实地说,视觉还原度大概 90-95%。差的那 5-10% 主要是字体(Codex 自动替换成了开源字体)和一些精细的间距微调。
再试几个,验证不是运气
我接着试了三个网站:
Stripe 官网:导航的渐变按钮、Pricing 表格的斑马纹、Footer 的四列布局,全对。连那个标志性的紫色渐变背景都还原了。
Linear.app:公认设计最好的 SaaS 官网之一。键盘快捷键面板、暗色模式切换、项目看板的卡片样式,Codex 全给做出来了。
Apple 产品页:最让我震惊的是视差滚动效果------页面往下滚,产品图跟着动。Codex 不仅复刻了 HTML/CSS,还写了对应的 JavaScript 滚动监听逻辑。
三个网站,加起来花了不到三分钟。
我算了一下:手写这些页面,以一个有 3 年经验的前端来算,Stripe 主页至少一天,Linear 也要大半天,Apple 产品页那个视差滚动起码两小时调试。Codex 三分钟。这效率跨度不是十倍,是一百倍。
原理是怎么回事(技术部分)
好,讲完人话,我们来聊聊技术。
Codex 的工作流程大致是这样:
-
沙箱浏览器:Codex 内部启动一个无头浏览器(headless browser),导航到目标 URL。
-
DOM + 样式分析:页面渲染完成后,它遍历整个 DOM 树,提取每个元素的计算样式(computed styles)------不只是 CSS 规则,还有浏览器实际渲染后的最终值。这就是为什么渐变色、box-shadow、backdrop-filter 都能被正确还原。
-
布局理解:通过分析元素的盒模型(box model)、Flexbox/Grid 容器关系、媒体查询断点,它理解页面的整体布局策略,而不是简单地复制粘贴。
-
代码生成:基于分析结果,它生成语义化的 HTML 结构、CSS 变量系统(把重复的色值、间距提取为变量)、以及模块化的 JS。
这里有一个关键点:它不是截图转代码 (那是 image-to-code 的思路),而是在浏览器里实际渲染页面后读取计算样式。所以它拿到的不是「这个像素是什么颜色」,而是「这个元素的 background 属性值是 linear-gradient(135deg, #667eea 0%, #764ba2 100%)」。
这带来的好处是生成的代码可维护------CSS 变量能改,组件结构能拆,不是一坨不可维护的绝对定位 div。
进阶玩法
Codex 不只是「原样复刻」。你可以玩出很多花样:
1. 只复刻特定组件
bash
codex "只克隆这个网站的导航栏和 Footer"
2. 指定技术栈
bash
codex "用 React + Tailwind CSS 复刻这个页面"
codex "用 Vue 3 + scoped CSS 复刻"
3. 加原站没有的功能
bash
codex "复刻这个网站,并添加一个暗色模式切换按钮和搜索功能"
4. 作为学习工具
bash
codex "分析这个网站的 CSS 架构,给我解释它的设计系统"
这些场景下,Codex 的价值不是「复制」,而是加速------让你跳过重复劳动,直接进入创造和定制的阶段。
局限和坑
公平地说,Codex 不是万能的:
1. 复杂交互有限:WebGL 场景、Canvas 动画、实时 WebSocket 数据驱动的页面------效果会打折扣。纯静态展示页和营销官网是它的舒适区。
2. 版权问题:复刻代码用于学习和原型没问题,但直接部署到生产环境要小心。字体和图标 Codex 会自动替换为开源方案,但整体视觉设计的版权归原站所有。
3. 图片资源:Codex 不会下载原站的图片,而是用占位图或开源替代。如果你需要真实图片,得手动替换。
4. API 额度:免费额度够日常使用,但如果你一天要复刻几十个网站,可能需要付费方案。
一个想法
Codex 这类工具出来后,我看到两种截然不同的反应:
一种说:「前端完蛋了,AI 连网站都能自动生成了。」
另一种说:「太好了,我终于不用手写第 100 个导航栏了。」
我更认同第二种。
工具从来不是来替代人的------工具是来替代重复劳动的。Codex 替代的是「对着设计稿手写 CSS」这个过程,但设计决策、交互逻辑、性能优化、用户体验------这些仍然需要人来做。
你不再需要花两天时间把设计稿变成代码。你把这两天省下来,去想更好的交互、更优的性能、更合理的组件架构。你的价值从「实现」升级到了「创造」。
所以,学会这招。明天上班,打开 Codex,把那个设计稿扔进去。然后去喝杯咖啡,想想这个产品还能怎么做得更好。
觉得有用?加我微信一起交流:boyand2164(备注掘金),聊 AI、聊前端、聊搞钱都行。