-
应使用rgba()或hsla()设置背景色透明度,而非opacity;rgba(0,0,0,0.5)使背景半透明而文字保持不透明,且兼容性处理可添加十六进制fallback。
-
应使用Map而非普通对象存储DOM节点快照,因Map支持节点作键实现精准对齐;需在重绘前用getBoundingClientRect与getComputedStyle采集,并配合WeakMap或手动清理防泄漏;FLIP动画通过first/last快照计算位移差并invert补偿,结束后清空Map。
-
Temporal.PlainDateTime本身是同步的,不支持异步操作,也不涉及时区换算;它仅表示无时区的日历时间,所有运算均为同步确定性操作,时区相关逻辑需先异步获取时区再同步换算。
-
SVG图标清晰度与devicePixelRatio无关,因其分辨率无关,浏览器会自动重采样;强行按DPR切换SVG版本反而增加请求和缓存碎片;真正需适配DPR的是位图图标。
-
removeEventListener失效的根本原因是传入的函数引用与绑定时不一致,或options参数不匹配;需使用具名函数或稳定变量引用,并确保capture、passive等选项完全相同。
-
利用CSS的:hover和::before可实现无JavaScript提示框,通过position定位与opacity控制显隐,配合transition实现淡入淡出动画,支持上下左右方向自定义,轻量且兼容性好。
-
需手动维护世界坐标到像素的映射关系,用ctx.transform()控制缩放平移,鼠标事件需反向计算逻辑坐标,避免重设变换影响UI,禁用DOM模拟以保渲染精度与性能,导出时须处理devicePixelRatio并关闭抗锯齿。
-
使用gap属性、相对单位和弹性布局优化移动端Flex间距。1.用gap统一控制子元素间隔,避免多余空白;2.结合rem或vw实现响应式间距,提升适配性;3.配合媒体查询微调不同屏幕下的间距;4.使用flex-grow与min-width控制换行,保持布局整洁;5.确保点击区域有8–12px间距,提升触控体验。
-
onCleanup必须在watchEffect副作用函数内部同步调用,接收一个清理函数,Vue会在副作用重新执行或组件卸载前自动触发它,从而解决接口竞态问题。
-
Grid中margin:auto仅对未显式定位的直接子项生效,需容器有明确高度且子项无grid-column等属性;place-items和place-self更可靠,分别用于全局和单个子项居中。
-
结论:crossorigin="use-credentials"在script标签上无效,浏览器绝不发送Cookie;HTML规范强制script请求凭据模式为omit,该属性仅影响错误捕获和CORS检查,不改变凭证行为。
-
clip-path切角后drop-shadow不生效是预期行为,因阴影作用于原始盒模型而非裁剪后的视觉形状;推荐用SVG内联path配合feDropShadow实现精准贴合阴影。
-