-
居中需按元素类型选择方案:行内内容用父容器text-align:center;块级元素定宽后margin:0auto;现代布局首选flex的justify-content:center与align-items:center;绝对定位元素用left/top50%加transform回拉。
-
WebWorker适合处理大体积JSON解析、结构化缓存反序列化、缓存数据聚合/过滤三类CPU密集型操作;需通过postMessage通信,主线程中转更新响应式状态,并注意消息体限制、Worker复用及组件卸载清理。
-
不能,AbortController本身不支持层级取消,需手动通过父signal的abort事件显式调用子控制器的abort()实现级联;每个子任务须持有独立AbortController实例,并注意信号不可重用、监听器需清理。
-
语义化标签如header、nav、main等可直接用于JavaScript选择元素,减少对类名依赖,结合ARIA属性如aria-expanded能提升交互控制能力,使代码更简洁高效。
-
Blob是JavaScript中处理二进制数据的对象,支持通过流式读取分块处理大文件,结合TransformStream可实现高效转换,适用于上传、预览、音视频处理等场景。
-
useInView的observer必须在unmount时显式销毁,否则导致内存泄漏;Vue指令中需在unmounted调用disconnect();原生IntersectionObserver必须调用disconnect()才能释放资源。
-
最直接可靠的是Array.prototype.flat(),但默认只扁平一层,需flat(Infinity)彻底展开;兼容老环境或需自定义逻辑时宜用reduce+concat递归实现;扩展运算符配合while仅适用于已知深度;flatMap仅限map后单层扁平。
-
JavaScript剪贴板操作须在用户手势触发且安全上下文(HTTPS/localhost)中使用navigator.clipboardAPI,writeText()和readText()均返回Promise,需try-catch处理;旧浏览器可降级用execCommand('copy')。
-
::first-letter仅对块级容器内首个字母或标点生效,要求父元素为block/inline-block,禁用flex/grid;支持font-size、float等装饰性样式,禁用margin(除左右)、width/height、position;中文需确保无前置空白、使用合适字体。
-
letter-spacing是CSS属性而非HTML5属性,自CSS1起存在,用于精确控制字符间水平间距,支持px/em/rem等单位,可正可负,具继承性,需配合字体与设备实测确保渲染一致。
-
max-width是宽度上限(天花板),min-width是宽度下限(地板);二者共同为auto宽度划定安全区间,可共存实现弹性约束。
-
现代浏览器禁用非静音视频autoplay是因2017–2018年起实施的autoplay策略:仅muted+playsinline、用户交互后调用play()或站点手动启用允许时才生效;未静音且无手势则直接拒绝。
-
使用类选择器如.menu-toggle和.nav-menu.active控制导航显示状态,结合属性选择器input[type="checkbox"]:checked+.nav-menu实现无JS菜单开关,通过媒体查询与后代选择器@media(max-width:768px)调整移动端垂直布局、隐藏主菜单并优化间距,实现响应式导航。
-
使用:not(:last-child)可选中除最后一个子元素外的所有同级元素,常用于为列表项添加分隔线或间距时排除末尾元素;例如li:not(:last-child){border-bottom:1pxsolid#ccc;}可为每个列表项下方加边框,但最后一项不加,使界面更整洁。该选择器基于父元素中的位置判断,若需按标签类型排除末项,应改用:not(:last-of-type)。
-
首先创建无序列表使用<ul><li>标签,有序列表用<ol><li>标签,通过CSS的list-style-type可修改符号或编号样式,还能在<li>内嵌套列表实现多层级结构。