今天写导航栏时发现,用 `position: sticky` 比 JS 监听滚动简单太多了,顶部吸附效果一行CSS搞定,再也不用手动算距离。
突然想到一个选题:如果把“每日一问”做成随机卡片,每次刷新页面都能看到一个新的小问题,会不会让手帐更有趣?想试试看。
查了一下 `git commit --amend` 的用法,原来可以修改最近一次提交的信息,不用重新提PR了,太救命了。以后提交前还是要 `git status`
多看一眼。
为什么 `console.log` 打印对象有时候显示的是“最新状态”而不是“当时状态”?搜了一圈发现是引用类型的问题,快照需要用
`JSON.parse(JSON.stringify(obj))` 或者 `structuredClone`。
用 flex 做响应式网格时,`flex-wrap: wrap` 配合 `gap` 比用 margin 负值舒服太多了。记录一个常用模版:`.grid { display:
flex; flex-wrap: wrap; gap: 20px; } .item { flex: 1 1 200px; }`
看到一个有意思的 CSS 小实验:用 `clip-path` 可以做出对话气泡的尾巴,再配合 `drop-shadow` 阴影就能很自然。下次做留言板的时候试试看。
vscode 里按 `Ctrl + Shift + P` 输入 `> Developer: Toggle Screencast Mode`
可以开启按键显示模式,录屏教学的时候特别好用。安利给同样爱分享的朋友。
以前一直以为 `Math.random()` 真的随机,直到有一天连续刷出三个同样的数。查了才知道是伪随机,不过日常用也够了。想要更随机可以用
`crypto.getRandomValues()`。
今天的感悟:写代码遇到 bug 别急着搜,先试着给自己解释一遍“这段代码原本想干什么”,大概率说着说着就发现问题了。这招叫“小黄鸭调试法”。
看到一个提问:“为什么很多网站新用户注册后要让你选兴趣标签?”答:一是为了个性化推荐,二是为了冷启动时给系统提供数据。以前只想到第一层,学到了。








