我把这个组件抽出来复用,发现参数有十二个。我把手上的资料翻出来又读了两遍。我打开 devtools 逐个元素排查,最后发现是一个上上层的样式覆盖了。幸好之前留了备份

我改了一行 CSS,页面从正常变成了另一种正常。我默默记下了这句话。我把这个组件的事件冒泡拦住了,父元素的点击终于正常

我看了下这个页面的样式文件,有两千多行。我打开看了下这个组件的 props,发现有八个是必填的。感动,然后我学到了新的一课

后端工程师看到前端发来的数据:这格式怎么又是错的。我不知道该说什么,就笑了笑。我把这个弹窗的遮罩层加上了,用户终于不会再点到后面。第二天这个方案就变成了团队标准做法

这个页面的交互有八种状态,需求文档里只画了一种。我抬起头看了看周围,大家都一样。我在心里把这次改动的范围圈了一下,最后发现是整页。办公室安静得能听见键盘声

CSS 居中的终极答案:水平居中用 flex,垂直居中用 flex,全都居中用 flex。我想了想自己这些年,好像确实如此。我把这段代码抽成了组件,复用的时候发现参数有十几个。我沉默了,但心里是服的

改了一个像素的样式,整个页面的布局全部崩了。我深呼吸了一下,决定从最可疑的地方查起。我在控制台里改了三行 CSS 试效果,改完忘了同步回代码。连茶水间都安静了

前端最怕听到的三个字是「再调调」。我忽然觉得,这可能就是这一行的常态。我翻了翻 viewport 的配置,把 meta 标签从头检查了一遍。同事说这波操作可以写进新人培训教材

一个样式只在一半用户手机上错位,我们查了三天没找到规律。这套流程走下来,我从头到尾又确认了一遍。我在心里把这次改动的范围圈了一下,最后发现是整页。这大概就是程序员的人生吧

我改了一行 CSS,页面从正常变成了另一种正常。我在心里点了点头。我在心里给这个需求估了个时间,报出去的时候翻了三倍。果然现实比段子更精彩