-
Autoprefixer不能直接处理SCSS文件,因为它只解析标准CSS,不识别SCSS语法(如$color、@mixin);必须先用Sass编译器转为CSS,再经PostCSS流程添加前缀。
-
通过设置flex-grow:1,子元素可在Flex布局中自动填满父容器的剩余空间,解决响应式设计中的尺寸适配问题。
-
Permissions-Policy(原FeaturePolicy)是声明式策略,通过HTTP响应头或iframe的allow属性在资源加载前限制API访问;allow属性仅作用于该iframe及其子上下文,权限需显式指定来源并用分号分隔,空格分隔已废弃,且不控制父页面行为。
-
TrustedTypes是需服务端、策略层、调用层三方对齐的强制拦截机制;必须配置CSP响应头(如require-trusted-types-for'script'),否则JS策略无效,且策略名须与CSP中声明的一致,否则抛TypeError。
-
“一键复制”卡顿主因是剪贴板API的权限、执行时机与格式处理:需用户手势同步调用,HTTPS环境,iOS13.4+才支持writeText;HTML内容须用write()配text/htmlBlob实现富文本粘贴,writeText仅支持纯文本。
-
贪吃蛇核心是坐标更新、碰撞检测、食物生成三步:用requestAnimationFrame驱动,蛇身存{x,y}数组,禁止180°掉头,撞墙/自身(从第4节起检测)/吃食物判定,食物在空闲格子中随机生成。
-
纯CSS深度按钮靠多层linear-gradient叠加实现明暗错觉:第一层tobottom垂直高光渐变,第二层toright水平阴影渐变,顺序不可颠倒,用background-size/position精准控光效;stop-color是SVG属性,CSS中应写#fff0%;:active时位移各层background-position增强按压感;IE11等旧环境用@supports降级单层渐变。
-
:checked+label不生效的根本原因是DOM顺序错误:input必须在同级label之前,因+选择器只能向后匹配;正确结构为<input><labelfor="id">,或改用<label><input></label>配合:has()或后代选择器。
-
color不能直接用keyframes逐帧精准卡点改色,因其RGB线性插值会导致中间色干扰;应优先用SVGstroke分段配rotate动画,或CSS伪元素叠加错峰旋转实现多色轮转。
-
-webkit-line-clamp必须与display:-webkit-box、-webkit-box-orient:vertical、overflow:hidden配合使用才生效,缺一不可;单独设置会被浏览器忽略,且仅在WebKit内核浏览器中支持,Firefox和IE需降级处理。
-
navigator.locks.query()不能监控localStorage或IndexedDB的锁状态,因其仅管理跨线程/标签页的WebLocksAPI同步原语;localStorage无公开锁机制,其隐式页面级互斥锁不可查询;IndexedDB事务隔离由浏览器自动处理,开发者无法干预或观测底层锁。
-
*重置边距常失效,因浏览器默认样式权重高、优先级低且box-sizing不统一;应改用html/body显式清零+**,::before,::after组合重置并设border-box。
-
字体回退是浏览器按font-family顺序逐个匹配的硬性规则,需显式声明中文字体、正确设置font-display:swap、src中网络字体置前、local()置后,并确保font-weight/style与文件一致。
-
JavaScript对象应优先用字面量{}创建,动态键名用计算属性,点号仅限合法标识符属性名,方括号用于动态或非法名,访问不存在属性返回undefined,可选链可防御深层访问错误。
-
justify-content:space-between没生效的主因是容器宽度不足或子元素存在干扰性margin/padding;应确保父容器有明确宽度、清除子元素外边距、避免inline/float残留,优先用Flex的margin:auto或Grid的grid-template-columns实现可靠布局。