Blog Cover

CSS Grid轨道尺寸分配算法:为什么你的列宽总与你预想的不一样

当你写下 grid-template-columns: 1fr 1fr 1fr 时,你是否真正理解那三个 fr 是如何瓜分容器宽度的?当你发现设置了 minmax(200px, 1fr) 的列在某些情况下却只有100px时,你是否知道浏览器在背后做了什么? ...

9 min · 4194 words

CSS Flexbox布局入门:从弹性容器到项目对齐的完整指南

当你尝试让一个元素在页面中水平垂直居中,是否曾经写过这样的代码:设置绝对定位,然后手动计算top: 50%和left: 50%,最后还要加上负的margin来修正偏移?当你在做导航栏时,是否为如何让几个链接均匀分布而头疼?这些问题在CSS Flexbox出现之前,确实需要各种"黑魔法"才能解决。 ...

7 min · 3090 words

移动端点击为何总是慢半拍?从300ms延迟到触摸事件处理的完整技术解析

2007年,第一代iPhone发布时,一个看似简单的决定埋下了困扰移动Web开发十年的技术债务:为了区分单击和双击缩放,移动浏览器在每次点击后都要等待约300毫秒。这个延迟在当时的桌面网页上几乎不可感知,但在触摸交互的场景中却成了用户体验的隐形杀手。 ...

9 min · 4439 words