最近更新01
小程序分享卡片被分享签名校验降级的排查
记录炊想分享卡片在发出方正常、接收方却被降级的排查,区分签名校验失败与图片加载失败。结合 3.1.0 说明同步分享对象、具体做法版本、缩略图兜底,以及首次微信登录后双方各得 10 次的邀请规则。
关于技术的认真思考,
也关于生活里的微小发现。
最近更新01
记录炊想分享卡片在发出方正常、接收方却被降级的排查,区分签名校验失败与图片加载失败。结合 3.1.0 说明同步分享对象、具体做法版本、缩略图兜底,以及首次微信登录后双方各得 10 次的邀请规则。
随手记下02
旧版炊想在部分真机上从文本框切到密码框时会丢失焦点。本文保留事件日志、原生输入对照实验和延后聚焦的补救过程,并更新当前状态:3.1.0 使用主动确认协议后的微信登录,原账号密码表单已经下线,历史补救代码不再用于登录页。
随手记下03
用 HTML 按时间渲染画面、无头 Chrome 逐帧截图、numpy 合成做菜声,再用 ffmpeg 编成一支 24 秒美食短片。本文保留 2026-10-09 的视频与制作参数,并补充当前 3.1.0 的厨房功能和新版首页,区分宣传片制作案例与最新产品说明。
随手记下04
给博客搜索弹层加了热门标签和最近文章,电脑上排得整齐,手机上却被撑出了弹层。记录三个坑:网格 auto 列不会比不换行的内容窄、两行截断时内边距漏出第三行半截、固定弹层在小屏上底边出屏,以及之后在多个尺寸下量越界的办法。
随手记下05
从早期菜谱生成触发 504 的现场说明读取空闲超时、总时限、Nginx 与客户端超时的区别,并补充当前异步任务与优先通道回退的时间边界:提交超时先查原任务,断网后恢复轮询;预算检查、读取超时与线程真正停止并不是一回事。
随手记下06
博客文章页的分享海报重做了一遍:加上封面、分类、标签和头像,弹窗改成一屏放下。本文记录重做时量出来的几个问题:旧版逐字换行,全站 372 篇文章里有 288 篇的海报把英文单词拆开、把标点放在行首;canvas 画了跨域图片就会被污染、无法导出,七牛的图要服务器允许跨域、页面设置 crossOrigin 才能画,而 Chrome 还会为这类请求单独建连接;二维码先画成小图再放大,边缘有三成是灰色的过渡像素。以及对应的断行规则、图片加载策略和按屏幕尺寸计算海报大小的写法。
随手记下07
博客默认主题换成流萤后,用无头 Chrome 在手机尺寸下做冷加载实测:首页 1495 KB 里有 849 KB 是一个字体文件,页面上却没有一个字用它。本文记录这一轮排查:预加载让按需下载的字体变成必下,CSS 背景图当最大内容时浏览器发现得太晚,评论照片显示 220px 却下载 1080px,改 srcset 时撞上同一段 HTML 被规范化两遍,以及打字机副标题折行导致的首屏跳动。改完四个页面的冷加载流量减少 42% 到 68%。
随手记下08
给博客的手机菜单做右侧抽屉时,一个 position: fixed、top 和 bottom 都是 0 的抽屉,只要写在顶栏里面就只有 64px 高,顶栏向上收起时还会被一起带走——毛玻璃用的 backdrop-filter 让顶栏成了它的包含块。本文先说明 fixed 元素的包含块什么时候不再是视口,再用 Chrome 154 实测 20 种写法:transform、translate、filter、backdrop-filter、perspective、will-change: transform、contain、content-visibility 会“截胡”,opacity、isolation、mix-blend-mode、z-index、container-type 只建立层叠上下文、不会截胡;全站置灰的滤镜放在 html 上安全,放在 body 上会让所有 fixed 元素跟着页面滚走。最后给出用 offsetParent 一行找到“截胡者”的排查方法,以及挪出 DOM、把属性挪到伪元素上两种修法。
随手记下09
博客在六天里从一套样式变成了六套主题。第一版只叠了一张 1528 行的覆盖样式表,颜色换了、骨架没变,第二天推倒重来:每套主题一套独立模板,评论、表情、AI 助手等组件抽成共享片段,脚本一行不改。本文记录这套结构的划分与回退机制、Thymeleaf 片段选择器和 CSS 层叠带来的几个坑、去掉点击后的焦点框时要对付的 120 条规则,明暗切换的圆形扩散为什么在流萤上看不出来、又为什么一顿一顿,用无头 Chrome 做流畅度测试找到的几处主线程空转,以及不部署就在线上页面验证本地样式的方法。