-
通过设置body{overflow:auto}并移除子容器的overflow-y:scroll,可将滚动行为交由浏览器窗口接管,避免在页面中部出现孤立的滚动条。通过设置`body{overflow:auto}`并移除子容器的`overflow-y:scroll`,可将滚动行为交由浏览器窗口接管,避免在页面中部出现孤立的滚动条。在Web开发中,当页面内容超出视口高度时,我们常希望整个页面自然滚动,而非某个内部容器(如#c
-
原生getter哨兵通过被动拦截“幽灵对象”属性访问来精准捕获内存泄漏,而非监听值变化;它轻量、兼容性好、可追溯调用栈,适用于开发阶段快速定位闭包残留、事件未解绑等典型泄漏场景。
-
移动端蓝灰色高亮是iOSSafari等浏览器对元素硬编码的taphighlight反馈,非普通CSS:active样式;应使用-webkit-tap-highlight-color:rgba(0,0,0,0)禁用,并通过JS监听touchstart/touchend模拟可靠点击反馈。
-
应使用CSScolor属性而非废弃的<font>标签;内联样式适合临时调试,类选择器利于统一维护;需显式定义伪类如:hover;注意可访问性与对比度规范。
-
TailwindCSS不支持在类名中直接使用calc()表达式,因其工具类为静态预生成,仅识别配置值或字符串字面量,不解析运行时CSS函数;方括号语法(如w-[calc(100%-2rem)])仅透传合法CSS值字面量,而calc()是需浏览器计算的函数调用,JIT引擎拒绝解析且生成无效CSS。
-
IntersectionObserver初始化时不触发回调,主因是目标元素未挂载到DOM或offsetParent为null(如display:none、父级未渲染);需确保元素已渲染且可见,延迟至useEffect/mounted中调用observe,并验证getBoundingClientRect有效。
-
不能继承HTMLInputElement等内置表单元素,因浏览器已策略性封禁;唯一稳定方案是自治型自定义元素+attachInternals(),通过setFormValue和setValidity接入原生表单管线。
-
Firefox完整支持mask-composite全部值,Chrome/Edge虽识别关键词但忽略语义、始终按add逻辑合成,根源在于该属性属CSSMaskingLevel1“at-risk”特性,Blink引擎尚未实现可配置合成模型,生产环境应降级使用SVG<mask>或clip-path。
-
Webpack中控制CSS引入路径的关键是编译期决定模块引入,而非运行时判断;正确做法是在配置中通过环境变量选择entry或rules,或用DefinePlugin注入后在JS中用动态import()按需加载。
-
Firefox51及更早版本不支持align-self和justify-items(除stretch外),需用margin:auto等兼容方案替代;Firefox52起才完整支持。
-
EarlyHints(103)是服务器在主响应前发送的提示性状态码,仅通过Link头告知浏览器后续将使用的资源,由浏览器自主决定是否预加载;它不传输内容、不保证执行,且仅对HTML中实际引用的资源生效。
-
Dreamweaver2026中align属性失效,因HTML5已废弃该内联属性;应改用CSS控制对齐:float、margin:auto、Flex布局或vertical-align等现代方案。
-
ShadowDOM样式隔离必须通过attachShadow()创建真实边界,否则scoped属性(已弃用)和BEM命名均无效;浏览器在样式计算阶段直接跳过跨boundary匹配,外部CSS(含!important)根本不可见,唯一合法穿透方式是:host和::slotted()。
-
Vue.js的props更新由父组件重渲染驱动,触发子组件重新执行render生成新VNode,再经patch算法比对更新DOM;props本身不被直接diff,仅作为渲染输入,且为只读响应式代理。
-
Array.prototype.slice.call(arrayLike)可将类数组转为真数组,因其仅依赖length属性和数字索引,不校验Array实例,故零依赖、兼容IE6+、性能优。