-
HTML函数内存泄漏是软件问题而非硬件故障;因定时器、事件监听器未清理或闭包引用导致对象无法被GC回收,需在组件卸载时手动清除。
-
HTML5向后兼容HTML4网页,旧标签如<font><u>等仍被解析渲染,但语义弱或样式有差异;真正影响兼容性的是DOCTYPE触发的标准/怪异模式切换及API支持情况。
-
用<inputtype="file">实现头像上传前预览,需监听change事件,校验event.target.files[0]存在且为图片,用URL.createObjectURL()生成临时URL赋给<img>的src,预览后调用URL.revokeObjectURL()清理内存。
-
JavaScript的sort方法根据数组长度动态切换算法:≤10用插入排序,11–1000用快排(取中值基准),>1000用采样中位数优化快排;默认字符串化比较导致数值排序错误,需传比较函数;ES2019起稳定排序,但会就地修改原数组。
-
nth-child依赖DOM中的物理位置而非可见性,因此隐藏行(display:none)仍参与计数,导致奇偶背景色错乱;正确做法是动态重置可见行的序号类(如row-1,row-2)或改用:nth-of-type配合结构优化。
-
通过CSStransition实现宽高平滑过渡,需设置transition属性控制width和height变化,可使用all简化多个属性过渡,解决height:auto无法直接过渡的问题可用max-height或JavaScript动态计算,也可结合transform:scale()提升性能,注意两者对布局的影响差异。
-
Flexbox布局的核心优势在于简化对齐与空间分配,特别是通过display:flex、flex-direction和justify-content等属性协同实现灵活的元素排列;它能轻松实现垂直居中、响应式换行及主轴空间均匀分布,减少媒体查询依赖,提升开发效率与可维护性。
-
最简洁可靠的方式是使用flex-direction:column配合margin-top:auto作用于页脚元素;需设置html,body{height:100%;margin:0;},.layout{display:flex;flex-direction:column;min-height:100vh;},footer{margin-top:auto;}。
-
<footer>必须嵌套在语义化区块(如<body>、<article>)内,不可悬空于<html>外;应作为内容结束标记,配合position:sticky与父容器min-height:100vh实现可靠贴底,并添加role="contentinfo"提升可访问性。
-
ReactHooks是React16.8引入的函数,使函数组件支持状态(useState)和副作用(useEffect);useState用于声明和更新状态变量,可多次调用管理多个独立状态;useEffect用于处理数据获取、订阅等副作用,依赖数组控制执行时机,并支持清理函数。
-
rgba遮罩是最直接有效的解决方式——通过在背景图上叠加半透明色块来调节局部明暗,提升文字可读性;它保留图片纹理,避免opacity连带降低文字透明度,且支持精准明暗控制与暗色模式适配。
-
Grid圣杯布局更省心因原生支持显式轨道与隐式区域分配,无需清除浮动、手动计算flex-basis或写媒体查询即可实现侧边栏自动换行;关键需用grid-template-areas明确定义语义区域,配合grid-area精准归位,避免DOM与视觉顺序错乱。
-
字符串不可变性导致频繁拼接效率低;2.模板字符串适合少量动态拼接,语法简洁高效;3.大量拼接应使用数组join()方法,避免O(n²)复杂度,提升性能。
-
HTML5规定<kbd>是标注键盘快捷键的唯一语义化标签,应分开展示组合键如<kbd>Ctrl</kbd>+<kbd>S</kbd>,避免用<strong>或<span>替代;需注意跨平台符号(如⌘)、编辑器快捷输入及样式调整时不破坏可访问性。
-
JavaScript拖拽核心是mousedown→mousemove→mouseup手动控制,需计算鼠标偏移量并更新元素位置;边界限制防越界,碰撞检测用AABB判断矩形相交;推荐transform替代left/top、适配移动端、防文字选中。