-
JavaScript大对象内存泄漏主因是隐式引用未清除,赋值null仅在无其他引用时有效;应优先用WeakMap、destroy方法、避免闭包捕获等主动管理策略。
-
可通过五种方式阻止HTML5功能:一、Firefoxabout:config禁用MediaSource、WebAudio等API;二、uBlockOrigin等扩展用CSS隐藏video/audio/canvas;三、IE/EdgeLegacy降级文档模式;四、UA伪装为旧浏览器;五、禁用JavaScript间接停用依赖JS的HTML5特性。
-
答案:使用Flexbox实现侧边栏与内容区布局时,通过设置container的display:flex,结合flex-grow与flex-shrink控制空间分配;固定宽度侧边栏可设width和flex-shrink:0,内容区用flex-grow:1占满剩余空间;按比例布局时使用flex:1和flex:3等简写,配合flex-basis设定基准宽度,实现自适应与响应式效果。
-
bind创建的函数this在绑定时即固化且不可变,即使再bind、call或apply也无法更改;同时支持预设参数实现柯里化。
-
核心是用repeat(auto-fill,minmax(250px,1fr)))实现列数自适应:每列最小250px,剩余空间均分,auto-fill保持列宽稳定,gap控制间距;minmax第二参数禁用固定像素,推荐1fr。
-
HTML条件注释仅IE5–IE9支持,IE10+及现代浏览器完全不支持;替代方案包括document.documentMode检测、服务端UA判断、CSS类渐进增强和JS功能降级。
-
relative定位本身不使元素脱离文档流,仅作为absolute子元素的定位参照;需配合top/right/bottom/left才产生视觉位移,且其top向下偏移、left负值向左;它是最近非static祖先,但受外层定位元素或flex/grid布局影响。
-
聊天气泡布局核心是用margin-left:auto和margin-right:auto控制左右对齐,禁用float和absolute;尾巴用双层伪元素三角实现;长文本需max-width:80%并按语言设置换行;滚动需nextTick确保DOM渲染完成。
-
本文系统讲解CSS媒体查询(@media)不生效的五大主因——语法错误、断点逻辑混乱、视口缺失、优先级覆盖及浏览器缓存,并提供可立即落地的调试方案与标准写法示例。
-
HTML文件需先格式化再diff,否则90%差异为格式噪音;推荐tidy或prettier标准化,浏览器端用diff2html可视化,语义级对比须用lxml或html5lib解析DOM树。
-
不能仅靠单一viewportmeta标签禁止缩放,需组合viewport设置(width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=no)、JS拦截手势事件、以及表单控件font-size≥16px三重防御。
-
closed模式无法实现真正封装,仅使shadowRoot返回null,却无法阻止调试工具查看、测试框架访问或无障碍检测,且易引发逻辑错乱;可靠封装需依赖open模式下的样式隔离、事件边界与slot分发等主动设计。
-
本文介绍如何通过JavaScript合并<th>或<td>元素自身定义的class与对应<col>元素(来自<colgroup>)所声明的class,从而准确获取单元格的“有效类名集合”。
-
列表项hover闪烁的根本原因是布局重排,应避免hover改变padding、border、width等盒模型属性,优先使用transform和opacity配合精准transition实现平滑动画。
-
360极速浏览器适配需强制viewport锁定缩放、JS动态设rem基准、媒体查询分档设1px边框、手动按DPR加载高清图,真机调试不可替代。