Now vibe coding, so learning hammer FE ?
《告别Tailwind,重新学习组织CSS》
标签:#前端 #CSS #TailwindCSS #CSS架构 #响应式设计 #语义化HTML
总结:
文章要点:
1. 作者从Tailwind迁移到语义化HTML+原生CSS,发现Tailwind其实教会了她很多系统性思维(如重置样式、配色、字体层级),现在正把这些系统用原生CSS重新实现。
2. 采用"组件化"CSS架构:每个组件有独立类名和文件,CSS互不覆盖,编辑时只需关注100行左右的局部代码,大幅降低心智负担。
3. 保留Tailwind的实用系统:直接复制preflight重置样式,沿用配色变量和字体尺寸变量,让原生CSS也能像Tailwind一样快速决策"要大一点就用xl"。
4. 响应式设计新思路:减少媒体查询,改用CSS Grid的auto-fit和grid-template-areas实现自适应布局,这是Tailwind难以做到的"奇怪玩法"。
5. 迁移原因:新版Tailwind强依赖构建工具;作者CSS能力提升后想突破Tailwind的限制;受《Tailwind与CSS的女性气质》一文影响,决定认真对待CSS这门技术而非逃避它。
URL:https://jvns.ca/blog/2026/05/15/moving-away-from-tailwind--and-learning-to-structure-my-css-/
标签:#前端 #CSS #TailwindCSS #CSS架构 #响应式设计 #语义化HTML
总结:
文章要点:
1. 作者从Tailwind迁移到语义化HTML+原生CSS,发现Tailwind其实教会了她很多系统性思维(如重置样式、配色、字体层级),现在正把这些系统用原生CSS重新实现。
2. 采用"组件化"CSS架构:每个组件有独立类名和文件,CSS互不覆盖,编辑时只需关注100行左右的局部代码,大幅降低心智负担。
3. 保留Tailwind的实用系统:直接复制preflight重置样式,沿用配色变量和字体尺寸变量,让原生CSS也能像Tailwind一样快速决策"要大一点就用xl"。
4. 响应式设计新思路:减少媒体查询,改用CSS Grid的auto-fit和grid-template-areas实现自适应布局,这是Tailwind难以做到的"奇怪玩法"。
5. 迁移原因:新版Tailwind强依赖构建工具;作者CSS能力提升后想突破Tailwind的限制;受《Tailwind与CSS的女性气质》一文影响,决定认真对待CSS这门技术而非逃避它。
URL:https://jvns.ca/blog/2026/05/15/moving-away-from-tailwind--and-learning-to-structure-my-css-/
《编写可维护CSS的实践指南》
标签:#前端 #CSS #TailwindCSS #AtomicCSS #StyleX #CSSModules #CSS_Scoping #CSS_Variables #CSS_Layers #Fluid_Typography #StyleLint #Component_Scoped_CSS
总结:
两位前端老兵Wes Bos和Scott Tolinski畅聊如何让CSS不变成"垃圾场"。核心思路是选一个系统坚持到底、用变量代替硬编码、保持组件独立可移植,并善用现代CSS原生能力(如@scope、@layer、clamp流体排版)减少媒体查询的重复劳动。他们还对比了Tailwind、StyleX、CSS Modules等主流方案,强调好CSS要"有弹性"——能自适应容器变化,而不是在每个断点重写一遍样式。
文章要点:
- **样式别"漏"出去**:好CSS要像密封舱,组件拆下来放在白纸上照样好看;如果样式太宽泛、到处泄漏,代码很快就会腐烂发臭
- **变量是救命稻草**:颜色、字体、阴影全进变量里,别写死数值;不然一年后你会在代码里挖出40种不同的灰色,改起来想哭
- **给CSS分层控权**:用`@layer`把重置、主题、组件样式分楼层,告别"加权重、加!important"的 specificity 战争,心里踏实多了
- **原生作用域来了**:`@scope`已经登陆主流浏览器,甚至可以把`<style>`直接丢进组件里自动限定范围,Vue和Svelte用户听了直呼"终于等到你"
- **流体排版超省心**:用`clamp()`做字体大小,让文字在手机和桌面之间丝滑缩放,很多时候连媒体查询都可以省了
- **Tailwind vs CSS Modules vs StyleX**:Tailwind像速记本,上手快但类名堆成山;CSS Modules稳扎稳打;StyleX走构建时优化路线,但媒体查询语法劝退不少人——选哪个不重要,关键是别混着用
- **上StyleLint当"坏人"**:让工具自动拦住"用硬编码颜色"这类操作,比你在PR里当挑刺老哥体面多了,团队协作必备
文章URL:https://syntax.fm/show/999/writing-maintainable-css/transcript
标签:#前端 #CSS #TailwindCSS #AtomicCSS #StyleX #CSSModules #CSS_Scoping #CSS_Variables #CSS_Layers #Fluid_Typography #StyleLint #Component_Scoped_CSS
总结:
两位前端老兵Wes Bos和Scott Tolinski畅聊如何让CSS不变成"垃圾场"。核心思路是选一个系统坚持到底、用变量代替硬编码、保持组件独立可移植,并善用现代CSS原生能力(如@scope、@layer、clamp流体排版)减少媒体查询的重复劳动。他们还对比了Tailwind、StyleX、CSS Modules等主流方案,强调好CSS要"有弹性"——能自适应容器变化,而不是在每个断点重写一遍样式。
文章要点:
- **样式别"漏"出去**:好CSS要像密封舱,组件拆下来放在白纸上照样好看;如果样式太宽泛、到处泄漏,代码很快就会腐烂发臭
- **变量是救命稻草**:颜色、字体、阴影全进变量里,别写死数值;不然一年后你会在代码里挖出40种不同的灰色,改起来想哭
- **给CSS分层控权**:用`@layer`把重置、主题、组件样式分楼层,告别"加权重、加!important"的 specificity 战争,心里踏实多了
- **原生作用域来了**:`@scope`已经登陆主流浏览器,甚至可以把`<style>`直接丢进组件里自动限定范围,Vue和Svelte用户听了直呼"终于等到你"
- **流体排版超省心**:用`clamp()`做字体大小,让文字在手机和桌面之间丝滑缩放,很多时候连媒体查询都可以省了
- **Tailwind vs CSS Modules vs StyleX**:Tailwind像速记本,上手快但类名堆成山;CSS Modules稳扎稳打;StyleX走构建时优化路线,但媒体查询语法劝退不少人——选哪个不重要,关键是别混着用
- **上StyleLint当"坏人"**:让工具自动拦住"用硬编码颜色"这类操作,比你在PR里当挑刺老哥体面多了,团队协作必备
文章URL:https://syntax.fm/show/999/writing-maintainable-css/transcript
《用 React、GSAP 和 AI 打造 Maxima Therapy 网站》
标签:#前端 #React #GSAP #TailwindCSS #ReactRouter #AI辅助开发 #创意编程 #Lottie #MatterJS #ScrollTrigger
总结:
本文是 Codrops 上的一篇案例复盘,记录了团队为神经多样性支持机构 Maxima Therapy 打造高互动、高插画风格网站的全过程。文章详细介绍了技术栈选型(Sanity + React Router + GSAP + TailwindCSS)、多个核心交互模块的实现思路(可拖拽轮播、SVG 水波纹、物理绳索、形状变形、贴纸动效),以及 AI(Claude Code)在实际开发中的辅助作用与局限。对于想在前端项目中融合创意动画与 AI 提效的开发者来说,这是一份非常接地气的实战参考。
文章要点:
- 技术栈选型很务实:团队选了 React Router(而非 Next.js)做静态生成,搭配 Sanity 做 CMS、Cloudflare Pages 托管,理由是配置更轻量;GSAP + Lenis 负责动画和滚动平滑,TailwindCSS 负责样式,TypeScript 做类型检查
- 首页轮播的交互设计很巧妙:把四个节目板块拆成四个旋转的
- SVG 水波纹效果用 AI 辅助生成:Claude Code 帮忙把原始 SVG 路径转换成带 50 个控制点的系统,再结合 GSAP 实现鼠标触发的涟漪动画——AI 在创意编码这类"繁琐但规则明确"的任务上表现不错
- Lottie 动画与 Canvas 背景混合:通过离屏 Canvas 绘制固定图案,再用 Lottie 的 Canvas 渲染模式做遮罩,最后用
- 物理引擎让页面更有生命力:招聘页用 Matter.js 模拟"supports"单词被两根绳索悬挂的物理效果,绳索由复合体堆叠而成,SVG 文字根据物理模拟结果实时位移
- AI 是"得力助手"但不是"万能替身":Claude Code 在 SVG 优化、Sanity 数据模型扩展、TypeScript 类型生成上帮了大忙,但也会出现结果不一致、擅自改动数据获取模式、甚至"幻觉"出不存在 SVG 路径的情况;团队建议把 AI 用在范围明确的小任务上
- ScrollTrigger 让滚动交互管理很轻松:配合
文章URL:
https://tympanus.net/codrops/2026/04/06/building-the-maxima-therapy-website-react-gsap-and-dabbling-with-ai/
标签:#前端 #React #GSAP #TailwindCSS #ReactRouter #AI辅助开发 #创意编程 #Lottie #MatterJS #ScrollTrigger
总结:
本文是 Codrops 上的一篇案例复盘,记录了团队为神经多样性支持机构 Maxima Therapy 打造高互动、高插画风格网站的全过程。文章详细介绍了技术栈选型(Sanity + React Router + GSAP + TailwindCSS)、多个核心交互模块的实现思路(可拖拽轮播、SVG 水波纹、物理绳索、形状变形、贴纸动效),以及 AI(Claude Code)在实际开发中的辅助作用与局限。对于想在前端项目中融合创意动画与 AI 提效的开发者来说,这是一份非常接地气的实战参考。
文章要点:
- 技术栈选型很务实:团队选了 React Router(而非 Next.js)做静态生成,搭配 Sanity 做 CMS、Cloudflare Pages 托管,理由是配置更轻量;GSAP + Lenis 负责动画和滚动平滑,TailwindCSS 负责样式,TypeScript 做类型检查
- 首页轮播的交互设计很巧妙:把四个节目板块拆成四个旋转的
<div>,只有当前可见的板块才响应交互;切换时触发路由变化,但轮播组件通过布局隔离避免了不必要的重渲染- SVG 水波纹效果用 AI 辅助生成:Claude Code 帮忙把原始 SVG 路径转换成带 50 个控制点的系统,再结合 GSAP 实现鼠标触发的涟漪动画——AI 在创意编码这类"繁琐但规则明确"的任务上表现不错
- Lottie 动画与 Canvas 背景混合:通过离屏 Canvas 绘制固定图案,再用 Lottie 的 Canvas 渲染模式做遮罩,最后用
globalCompositeOperation 合成,实现了滚动联动的背景效果- 物理引擎让页面更有生命力:招聘页用 Matter.js 模拟"supports"单词被两根绳索悬挂的物理效果,绳索由复合体堆叠而成,SVG 文字根据物理模拟结果实时位移
- AI 是"得力助手"但不是"万能替身":Claude Code 在 SVG 优化、Sanity 数据模型扩展、TypeScript 类型生成上帮了大忙,但也会出现结果不一致、擅自改动数据获取模式、甚至"幻觉"出不存在 SVG 路径的情况;团队建议把 AI 用在范围明确的小任务上
- ScrollTrigger 让滚动交互管理很轻松:配合
useGSAP hook 自动清理,避免了手动写 Intersection Observer 的繁琐,实现了文字显现、图片揭示、SVG 播放等丰富的滚动动效文章URL:
https://tympanus.net/codrops/2026/04/06/building-the-maxima-therapy-website-react-gsap-and-dabbling-with-ai/
#tailwindcss #CSS 《Tailwind 与原生 CSS 结合》Tailwind CSS 4 通过全面转向原生 CSS 变量和改进的配置方式,实现了与传统 CSS 的无缝融合,解决了之前版本的争议性问题。它引入了“非病毒”模式(“Non-Viral”),允许开发者在不影响现有 CSS 架构或设计系统的情况下灵活使用 Tailwind 的工具类或纯 CSS,极大地提升了开发体验,让作者从批评者转变为支持者,标志着 Tailwind 与原生 CSS 的完美结合。
https://thathtml.blog/2025/08/tailwind-and-css-friends-at-last/
https://thathtml.blog/2025/08/tailwind-and-css-friends-at-last/