-
变量提升与暂时性死区共存,体现var、let、const在声明机制上的差异:var提升后初始化为undefined,可访问;let/const声明提升但未初始化,处于TDZ中,访问报错。
-
使用@font-face引入字体需确保CORS允许、显式设置font-display(推荐swap)、回退字体栈按平台分组声明、避免强制同步布局,并注意多语言混合排版的字体闪动问题。
-
video标签的poster属性必须是绝对或相对有效路径,浏览器不校验存在性,错误路径导致黑屏;本地file://路径在HTTP下必404;需确保同域可访问、大小写敏感、避免空格中文;动态更换须重建video元素或用CSS遮罩层;poster不受object-fit影响,应匹配视频宽高比并用CSS约束容器尺寸。
-
JavaScript垃圾回收机制通过标记-清除和分代回收策略自动管理内存,但频繁创建对象或内存泄漏会导致GC高频触发或全堆回收,引发页面卡顿、掉帧与响应延迟;开发者应避免不必要的对象创建、及时解绑事件与定时器,并复用对象以降低GC负担,提升性能。
-
用:not()排除特定段落样式时,只能传入简单选择器(如类名、ID、属性或伪类),不可用后代/子代等复合选择器;需配合父容器限定作用域或改用显式重置更可靠。
-
HTML无法运行通常因保存格式、打开方式或路径错误。1.确保文件扩展名为.html且编码为UTF-8;2.用浏览器正确打开本地文件;3.检查代码结构完整性;4.核对资源引用路径是否正确。
-
本文详解如何在Selenium中可靠点击伦敦证券交易所动态渲染页面中带.clickable.td-with-link类的<td>元素,涵盖Cookie弹窗处理、动态内容等待、元素可见性与可点击性校验及多级页面跳转实践。
-
addEventListener的第三个参数决定事件监听阶段:true为捕获阶段,false(默认)为冒泡阶段;它影响执行顺序、stopPropagation()效果及target与currentTarget的区别。
-
prefers-color-scheme是CSS媒体特性,用于声明式适配系统深色模式,支持Chrome76+、Firefox67+、Safari12.1+,值为light/dark/no-preference;应结合CSS自定义属性与合理色彩体系实现语义化主题切换,而非简单反色或硬编码颜色。
-
v-html不自动转义,直接插入HTML存在XSS风险;它绕过Vue编译,不解析插值、指令,也不响应数据变化;安全使用须前置清洗(如DOMPurify),禁用裸传用户输入。
-
font-weight属性通过100-900九级数值实现文字粗细分级,400为常规文本,700为加粗,支持normal、bold关键字及lighter、bolder相对值;并非所有字体均支持全部字重,需确保字体文件包含所需字重以避免浏览器fallback偏差;设计中可利用不同字重构建信息层级:h1-h6标题用600或700形成梯度,正文设400保证可读性,辅助信息用200-300营造轻盈感,关键词高亮可用500-600适度强调;为保障跨设备一致性,应选用如Inter、Roboto等多字重字体,通过@imp
-
利用:hover触发状态变化,结合::before/::after创建视觉层,通过transition和transform实现平滑动画,如背景色渐变、滑入遮罩、上浮下划线等效果,关键在于伪元素content设置与定位上下文控制。
-
preload是浏览器提前获取关键资源的声明式方式,不阻塞渲染但提升字体、图片等核心资源加载优先级;需正确设置crossorigin以避免字体重复请求,仅预加载首屏必需的字体变体并搭配font-display:swap,图片preload仅适用于CSS背景图、JS动态插入等特殊高优先级场景。
-
高度塌陷由子元素脱离文档流导致,解决方法包括:1.使用clearfix类通过伪元素清除浮动;2.触发父元素BFC,如设置display:flow-root或overflow:hidden;3.采用flex或grid布局,自动包裹子元素;4.避免使用固定高度。推荐优先使用display:flow-root或现代布局方式。
-
优先选position:sticky;它支持滚动吸附且不脱离文档流,适用于导航栏等场景;absolute仅用于精确偏移(如气泡),fixed仅用于视口级固定(如全局toast)。