-
poster属性不支持自动截取第一帧,必须用JavaScript主动截取并赋值;video.currentTime=0后截黑图需检查loadeddata事件、跨域设置、移动端延迟及编码特性。
-
纯CSS画笑脸需用border-radius+clip-path或伪元素分层:脸和眼睛须宽高相等+50%圆角,嘴用clip-path:ellipse()或border技巧配合overflow:hidden裁出弧形,全部使用rem或clamp()保证缩放无锯齿、高保真。
-
移动端input::placeholder样式不生效,需用::-webkit-input-placeholder并加!important;uni-app和小程序须用专用属性;暗色模式应监听媒体查询并切换class;line-height与padding需与input一致。
-
会,text-shadow模拟加粗因软边阴影导致文字模糊,尤其小字号或Retina屏;需设blur-radius为0,用多方向1px硬边阴影(如-1px00,1px00等)并启用GPU加速。
-
网页多语言切换必须在服务端或首屏HTML中正确设置lang属性,JS动态修改无效;lang值须符合BCP47规范(如zh-CN),区分大小写和短横线;局部混排需显式标注lang;:lang()样式需枚举所有可能变体或简化策略。
-
async函数内必须用trycatch包裹await表达式才能捕获异步错误,因async返回Promise,外部trycatch仅捕获同步错误;事件处理器中需显式处理Promise拒绝,避免错误静默丢失。
-
navigator.geolocation需HTTPS或localhost、检查支持性、必须传error回调;watchPosition需手动clearWatch防泄漏;enableHighAccuracy耗电且室内无效;拒绝权限后需降级方案。
-
计算属性比方法更快,因其具备依赖缓存机制:只要依赖数据未变,多次访问直接返回缓存结果;而方法每次调用均重新执行,无缓存。
-
纯CSS可实现侧边栏左右拉伸,但仅WebKit浏览器(Chrome/Safari/Edge)支持通过::-webkit-scrollbar扩展拖拽区域为竖线;Firefox仅限右下角小区域且不支持该扩展,属浏览器限制而非写法错误。
-
应直接监听表单submit事件并调用preventDefault()阻止默认提交,再执行JS验证;required和pattern适用于基础校验,复杂逻辑必须用JS;checkValidity()和reportValidity()仅支持原生约束且提示不可控;错误提示需靠近字段、适时触发、及时清除关联状态。
-
CSS变量值不应加外层引号,否则引号会被当作字面量存储;正确写法是--my-str:helloworld;,需转义时用\"或\',URL和calc等原生语法可直接使用。
-
HTML中通过在<option>标签添加selected布尔属性可设置默认选中项,仅需写selected无需赋值,且同一<select>中只能有一个<optionselected>,否则仅首个生效。
-
findLast更适合权重配置场景,因其短路查找性能优、语义清晰;需确保数组按权重升序排列再使用,旧环境需polyfill或手动反向遍历降级。
-
粘连布局(StickyFooter)必须通过Flexbox或Grid实现高度分配,而非position:sticky/fixed;因sticky对footer无效(无滚动进入过程)、fixed会脱离文档流,Flexbox需body设height:100%和flex-column,Grid推荐minmax(0,1fr)防撑爆。
-
writing-mode:vertical-rl是唯一语义化竖排方案,需配text-orientation:mixed使汉字直立、字母数字自动旋转;失效主因是父容器非块级、触发旧布局或未设高度;换行用white-space:normal或pre-line,line-height必须用无单位值。