网易首页 > 网易号 > 正文 申请入驻

前端圈出了个狠人:5行代码干掉DOM布局抖动

0
分享至


虚拟列表卡成PPT,聊天窗口消息一多就掉帧,富文本编辑器光标乱跳——这些毛病根子上都是同一个 culprit(罪魁祸首):浏览器布局抖动。有个叫 Basel 的开发者搞了个 LayoutSans,号称用 5 行代码就能让 flex、grid、杂志多栏排版全走计算流,不动 DOM 一根毫毛。

DOM 是性能黑洞,但以前没得选

浏览器渲染管线里,读位置再写样式再读位置,强制同步布局(forced reflow)就像在高速路上急刹车。React Virtualized、TanStack Virtual 这些库再优化,只要还依赖 DOM 测高,就绕不开这个死结。

Pretext 先打了个样:纯数学算文本尺寸,零 DOM 查询。LayoutSans 在这基础上盖了第二层——消费 Pretext 的测量结果,输出完整的二维布局系统。文本节点留在真实 DOM 里,保证屏幕阅读器能读、Ctrl+F 能搜、光标能选;布局计算全在 JS 里跑,帧率稳如老狗。


5 行代码长什么样

README 里的示例确实就 5 行。引入、配模板、扔数据、拿坐标、渲染——完事。没有 `getBoundingClientRect`,没有 `ResizeObserver` 回调地狱,没有 RAF 套娃。

杂志风的多栏排版、聊天消息的流式高度、表格的动态列宽,这些以前要拆成三四个库拼的活儿,现在一个 `layout-sans` 包圆。npm 安装量还在爬坡,但 GitHub 上已经有做富文本编辑器的团队开始试坑。

谁该盯着这个项目


Basel 自己点了三类人:虚拟化 UI、聊天界面、编辑工具。翻译一下就是——Notion 类文档、Discord 类 IM、Figma 类设计工具,所有对「可变高度+流畅滚动」有执念的场景。

有个细节挺有意思:LayoutSans 不碰 DOM 布局,但 DOM 节点是真的。这意味着 SEO 不翻车,自动化测试不用改,渐进增强也天然成立。以前用 Canvas 或 WebGL 做虚拟列表的团队,相当于为了性能把网页的底子扔了;LayoutSans 想证明这条路不是非此即彼。

项目还在早期,benchmark 数据 README 里有,但生产环境的大考还没来。Basel 在帖子里留了话,要反馈,要 issue,要人用。

你手头的项目要是也被布局抖动折磨过,会愿意把核心渲染链押在一个 0.x 版本的新库上吗?

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
伊朗发布无人机发射视频 “飞天小摩托”直冲美军基地

伊朗发布无人机发射视频 “飞天小摩托”直冲美军基地

新华社
2026-04-07 17:06:41
85岁富商陈丽华去世,和老公互称董事长迟先生,百亿遗产早有安排

85岁富商陈丽华去世,和老公互称董事长迟先生,百亿遗产早有安排

新金牌娱乐观察家
2026-04-07 11:30:32
伊朗民众组成人链保护发电厂和桥梁

伊朗民众组成人链保护发电厂和桥梁

界面新闻
2026-04-07 22:42:24
时速超300!郑丽文体验大陆高铁速度

时速超300!郑丽文体验大陆高铁速度

叮当当科技
2026-04-07 18:47:11
39岁男子考研落榜后举报复试第一,考生候考时,该考生曾被工作人员叫离座位,返回后手中持有文件夹并翻阅,华东师大回应:调查小组正在调查

39岁男子考研落榜后举报复试第一,考生候考时,该考生曾被工作人员叫离座位,返回后手中持有文件夹并翻阅,华东师大回应:调查小组正在调查

观威海
2026-04-07 16:39:02
“中国紫檀女王”陈丽华逝世,曾是中国女首富,47岁时倒追“唐僧”迟重瑞,晚年每天生活费10元

“中国紫檀女王”陈丽华逝世,曾是中国女首富,47岁时倒追“唐僧”迟重瑞,晚年每天生活费10元

极目新闻
2026-04-07 12:39:33
没想到,陈丽华给迟重瑞留的不是财产,不是孩子,而是最珍贵的它

没想到,陈丽华给迟重瑞留的不是财产,不是孩子,而是最珍贵的它

阿纂看事
2026-04-07 17:50:09
美媒称美国已收到伊朗关于结束战争的回应

美媒称美国已收到伊朗关于结束战争的回应

新京报
2026-04-06 23:46:07
伊朗称部署双联装导弹发射装置 “打击规模将翻倍”

伊朗称部署双联装导弹发射装置 “打击规模将翻倍”

财联社
2026-04-07 21:48:12
美副总统万斯:美以已完成伊朗战争的军事目的 战争将很快结束

美副总统万斯:美以已完成伊朗战争的军事目的 战争将很快结束

财联社
2026-04-07 20:38:06
首个合资车企全面停产燃油车!

首个合资车企全面停产燃油车!

电动知家
2026-04-07 19:58:44
宋志勇,明确为正部长级

宋志勇,明确为正部长级

界面新闻
2026-04-07 20:19:05
监控系统出现漏洞,300多人被带走?海康威视回应:假的

监控系统出现漏洞,300多人被带走?海康威视回应:假的

21世纪经济报道
2026-04-07 12:52:07
真够狠!以色列提前动手大杀四方,伊朗损失惨重

真够狠!以色列提前动手大杀四方,伊朗损失惨重

史政先锋
2026-04-07 21:03:17
英媒宣称“伊朗最高领袖病重昏迷”

英媒宣称“伊朗最高领袖病重昏迷”

观察者网
2026-04-07 18:00:14
一个也不该抛弃---不仅救自己大兵,也救中国渔民

一个也不该抛弃---不仅救自己大兵,也救中国渔民

通往远方的路
2026-04-07 15:54:35
中美GDP差距再次拉大!中国GDP跌到美国60%,到底是哪出问题了?

中美GDP差距再次拉大!中国GDP跌到美国60%,到底是哪出问题了?

混沌录
2026-04-05 16:44:05
命中了!伊朗真干了

命中了!伊朗真干了

互联网大观
2026-04-07 22:31:40
85岁陈丽华去世,巨额遗产分配公道,迟重瑞已放弃

85岁陈丽华去世,巨额遗产分配公道,迟重瑞已放弃

无处遁形
2026-04-07 21:08:12
安徽失联女童已遇害,凶手是邻居,指认现场曝光,父亲悲痛发声

安徽失联女童已遇害,凶手是邻居,指认现场曝光,父亲悲痛发声

180视角
2026-04-07 17:29:19
2026-04-07 23:23:00
爬虫饲养员
爬虫饲养员
业余养了只叫“龙虾”的AI爬虫,主业是给互联网打工。
878文章数 10关注度
往期回顾 全部

科技要闻

满嘴谎言!OpenAI奥特曼黑料大起底

头条要闻

特朗普恐吓4小时摧毁伊朗 伊朗称"打穿"海法未见拦截

头条要闻

特朗普恐吓4小时摧毁伊朗 伊朗称"打穿"海法未见拦截

体育要闻

官宣签约“AI球员”,这支球队被骂惨了...

娱乐要闻

女首富陈丽华离世 被曝生前已分好遗产

财经要闻

10万亿财政转移支付,被谁拿走了?

汽车要闻

不止是大 极狐首款MPV问道V9静态体验

态度原创

旅游
游戏
教育
房产
公开课

旅游要闻

春日限定持续上新,乘开往春天的列车赏春日胜景

重磅!宝可梦系列最新作本周登陆Switch平台 正式开玩

教育要闻

第一个「写进政府工作报告」的春假,研学赛道加速分化

房产要闻

重磅!三亚拟出安居房新政!

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版