-
table-layout:fixed是CSS中控制表格列宽计算方式的属性,它使浏览器仅依据第一行或col元素的宽度声明来确定列宽,从而实现可控的自适应布局。
-
port.start()并非开启长连接的方法,而是启用MessagePort消息接收队列的必要操作,需在获取port后显式调用以开始接收消息,尤其在未设置onmessage时;它属于MessageChannel通信机制,不涉及网络连接。
-
使用CSS:before伪元素结合content属性可在不修改HTML的情况下为元素添加图标。1.基本语法中,:before在元素内容前插入虚拟子元素,通过content定义内容,如.text:before{content:"★";}可插入星号。2.结合FontAwesome等图标字体,通过Unicode编码(如\f007)和font-family指定字体,实现专业图标展示,例如.user-icon:before设置图标并调整样式。3.可直接使用系统支持的Unicode符号,如✉或\2713(对勾),无需
-
最简原生弹窗需控制div显隐、管理焦点、防重复提交、适配移动端键盘及保障可访问性。核心是display:none切换、tabindex="-1"捕获焦点、Esc关闭、submit阻止默认、fetch提交、scrollIntoView修复iOS键盘问题、关闭后requestAnimationFrame恢复触发按钮焦点。
-
用IntersectionObserver实现视频自动播放与离开暂停,需监听视口交集、设置静音autoplay、防抖处理状态、兼容降级。核心是isIntersecting为true时try-catch调用play()(确保muted),false时pause();不支持时回退scroll+getBoundingClientRect模拟。
-
HTML5本身不提供高斯模糊原生API,需依赖CSSfilter:blur()(快捷但粒度粗、近似模拟)或Canvas手动实现(可控但开销大),二者均受限于性能、跨域、精度与导出质量。
-
按钮偏移的根本原因是父容器缺乏明确尺寸或定位上下文,导致绝对定位或浮动失去锚点;应为父容器设position:relative,优先使用flexbox的margin-auto或align-self实现稳定对齐。
-
CSScontent属性无法响应屏幕尺寸变化,必须配合媒体查询控制伪元素显隐;常见失效原因包括样式覆盖、display/visibility隐藏、空content值及布局塌陷;推荐移动优先写法并注意兼容性与布局抖动问题。
-
最轻量方案是用dialog元素,语义清晰、可访问性好,但Safari15.4前不支持;需fallback到带aria-modal和焦点管理的div;注意scroll-behavior、链接安全及法律有效性。
-
代码分割是构建工具配合import()语法实现的运行时分包策略,将大bundle拆为多个小chunk按需加载;必须用字符串字面量路径调用import(),且不能在顶层作用域使用。
-
template标签不渲染、不执行、不绑定,仅作离线仓库;必须用template.content.cloneNode(true)获取可操作内容,填值优先用textContent/value,批量插入需用DocumentFragment优化性能。
-
Grid兼容性需按特性分级处理:IE11仅支持-ms-grid旧语法且需手动换算行列索引,Safari9–10.1不支持gap和fr单位;应优先用@supports检测关键能力并外置降级样式,gap失效时用margin负值抵消。
-
white-space:nowrap是最直接有效的禁止自动换行方式,但需配合width/max-width、display:block/inline-block、overflow:hidden及text-overflow:ellipsis才能实现完整截断效果,且在表格、contenteditable等场景需额外处理。
-
HTML本身无函数,问题实为HTML+JS前端应用在被动散热设备上能否稳定运行;关键取决于JS负载、渲染压力及浏览器实现,需优化代码与配置以控温降耗。
-
用::before和::after实现文字两侧横线需包裹文字于容器(如span或h2),设display:inline-flex/align-items:center,伪元素content:""、flex:1、border-top;IE11兼容用display:table布局。