可直接通过开发者工具console批量提取网页css规则:先列出所有样式表信息,再按索引提取可读样式表的完整css文本,支持单张导出或全部打包,自动处理@import、变量展开与注释移除。

你想把知乎首页的响应式栅格规则、B站视频页的弹幕样式、或是某电商商品详情页的卡片hover动画全部导出来做归档或复用,米侠浏览器不提供“导出CSS”按钮,但可以通过开发者工具直接访问已加载的样式表对象,再用脚本批量提取规则文本,整个过程无需插件、不依赖网络请求。
定位并获取网页中所有CSS样式表
浏览器加载页面时,所有和样式相关的资源都会被注入到document.styleSheets集合中。按Ctrl+Shift+I打开开发者工具→切换到Console面板→粘贴运行以下代码:
Array.from(document.styleSheets).map((s, i) => ({index: i, href: s.href || 'inline', rules: s.cssRules ? s.cssRules.length : 'blocked'}))
回车后将列出每张样式表的序号、来源地址和规则条数。若某项rules显示为“blocked”,说明该样式表来自不同源,后续无法提取内容。
提取指定样式表中的全部CSS规则文本
当你确认目标样式表索引(比如第2张,即索引1)可读取后,就可逐条导出其CSS文本。注意:cssRules是只读类数组,不能用forEach,必须用for循环遍历。
在Console中执行(将1替换为你查到的有效索引):
const sheet = document.styleSheets[1]; let cssText = ''; for(let i = 0; i 回车后控制台将输出完整CSS文本,全选→复制即可保存为.css文件。这一步输出的是浏览器实际解析后的结果,自动合并了@import嵌套、去除了注释、展开了CSS变量值——和原始文件可能略有差异。
批量导出所有可读样式表的CSS文本
如果页面样式分散在多个本地样式表中(比如主样式+主题色+响应式断点),用单条命令一次性打包更高效。下面脚本会跳过跨域样式表,仅拼接所有能读取的规则,并用/* === style N === */分隔:
let fullCSS = ''; Array.from(document.styleSheets).forEach((sheet, idx) => { if (!sheet.cssRules) return; const rules = []; for (let i = 0; i 运行后直接复制整段输出,粘贴进VS Code或记事本,就能看到带清晰分隔的多张样式表内容。【若某张样式表为空白,请检查它是否为纯@import语句且未启用CORS,此时需手动访问其href地址另存为】。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











