-
使用::first-line伪元素可对块级元素的第一行文本设置样式,如颜色、字体等,仅适用于块级元素且支持有限CSS属性,与选择首个子元素的:first-child不同。
-
JavaScript中有6个falsy值:false、0、-0、""、null、undefined、NaN;在条件判断中,这些值会被自动转为false,其余均为true,包括空数组和空对象。
-
HTML函数不受CPU超频影响,其执行速度由浏览器引擎、事件循环和网络栈决定;超频仅提升WebWorkers中计算密集型任务性能,却可能降低计时精度并暴露竞态问题。
-
CSS工具和框架本身不降低可维护性,关键在于规范选型、约束使用与统一约定;需控制嵌套层级、禁用随意!important、封装语义化类名、集中管理变量,并通过工具链保障一致性。
-
HTML5正式支持约20个rel值,但仅部分被主流浏览器实现:stylesheet(唯一触发CSS加载)、icon(需type和sizes)、preload(须配as)、prefetch(空闲低优先级)、preconnect(单域名)、dns-prefetch;noopener/noreferrer仅对target="_blank"有效;alternate/author/next等慎用;第三方服务要求的rel值需严格按规范配as、crossorigin等属性。
-
file://协议下crossorigin="anonymous"会强制触发CORS检查但因无服务端响应头而失败,导致图片/脚本加载错误;本地开发应移除该属性,仅在HTTP(S)跨域场景(如CDN、WebGL、integrity校验)中保留。
-
发布订阅模式通过事件总线实现组件间解耦,核心是发布者与订阅者不直接通信,而是通过中心化的调度器传递消息,提升代码模块化与可维护性。
-
Vue3的reactive通过Proxy实现响应式,支持深层监听、动态增删属性、数组索引赋值及Map/Set等结构,采用懒代理、依赖收集与触发更新闭环机制。
-
fieldset的核心作用是语义化分组而非美化,必须搭配legend(作为首个子元素)实现无障碍支持;disabled属性可原生禁用整组控件,CSS模拟无效且破坏可访问性。
-
用DevTools实时调试比手写或在线生成器更可靠,box-shadow参数顺序为h-offsetv-offsetblur-radiusspread-radiuscolor,易错点是混淆后两者,多阴影逗号分隔且从左到右渲染。
-
图片与文字浮动错位的核心原因是图片未限宽且脱离文档流,导致文字环绕异常;需限制图片尺寸(max-width:100%;height:auto)、统一浮动方向、清除父容器浮动(overflow:hidden或display:flow-root),并确保文字容器宽度充足、换行正常。
-
D3.js的核心是数据驱动DOM与SVG操作,通过enter/update/exit模式、比例尺、坐标轴、形状生成器等工具实现高度定制、响应式强、性能可控的可视化;适合需深度交互、动态更新或教学研究的场景。
-
JavaScript操作浏览器标签页的核心是window.open()和window.close(),但受限于安全策略,仅能由用户交互触发且无法控制非脚本创建的标签页。通过window.open()可打开新标签页并获取其引用,结合URL参数、window.opener、localStorage、BroadcastChannel等实现同源页面间的数据传递与通信。需注意弹窗拦截、跨域限制、安全风险(如opener泄露)及用户体验问题。移动端window.open()的窗口特性支持有限。此外,浏览器扩展API提
-
动态import()返回Promise,实现运行时异步加载模块,区别于静态import的预加载;当执行到import('./module.js')时才发起请求,结合Webpack或Vite可自动代码分割,生成独立chunk,用于路由级分割、功能懒加载或条件加载,首屏仅加载核心代码,降低初始体积,提升性能,且支持浏览器缓存复用。
-
navigator.sendBeacon是“最后一眼”日志唯一可靠选择,因其被规范明确保证页面卸载后仍尽力发送,不阻塞流程、不依赖事件循环,且兼容主流现代浏览器;但仅支持POST,payload须为Blob/FormData等合法类型,不可直接传字符串或JSON对象。