-
最值得用且不易踩坑的CSS缩写属性是margin、padding、border、background、font;它们高频、语义清晰、副作用可控,覆盖80%以上重复声明场景,但需注意全量重置子属性的隐性覆盖风险。
-
JavaScript类型转换分显式和隐式两种。显式转换通过Number()、String()、Boolean()手动转类型;隐式转换在运算时自动发生,如+操作符触发字符串拼接,数学运算符触发数字转换,逻辑判断依据真值表。使用==时会进行类型转换,推荐用===避免意外。对象转原始值调用valueOf()或toString(),数组加空字符串即转为字符串。掌握这些规则可减少bug。
-
<selectmultiple>提交时以同名参数传递所有选中value,JS需用selectedOptions读取;checkbox批量操作须每次动态获取元素并重算状态,避免缓存NodeList或漏掉新增项。
-
纯CSS无法实现真正虚拟滚动,因其不能感知滚动位置、计算可视索引或动态更新渲染;核心逻辑必须由JS完成,CSS仅负责高效位移(如transform)与视觉优化。
-
CMS被淘汰而G1成为分水岭,因其并发标记无法处理浮动垃圾且易退化为SerialGC;G1通过Region划分与RememberedSet实现标记与回收解耦,采用“并发标记+并行复制”模式。
-
使用grid-auto-rows和minmax()可统一CSS网格行高,避免错位。通过grid-auto-rows设置固定行高或结合minmax()定义最小高度与自适应扩展,实现内容适配与视觉整齐;再配合grid-template-rows可对前几行单独设定,其余行按规则自动生成,提升布局灵活性与一致性。
-
Blob是JavaScript中处理二进制数据的对象,支持通过流式读取分块处理大文件,结合TransformStream可实现高效转换,适用于上传、预览、音视频处理等场景。
-
background-clip:text仅按字体字形轮廓裁剪,无法实现SVG路径或clip-path级别的自定义不规则形状;所有“不规则”效果均依赖字体本身的glyph设计,如手写体、断笔字或OpenType特性,而非CSS可额外定义的几何路径。
-
srcdoc属性需提供完整合法HTML文档结构,包含DOCTYPE、html、head、body;引号须转义,禁止外部资源引用,JS/CSS须内联,不支持IE,需fallback,存在XSS风险。
-
答案是利用performance.now()或Date.now()记录函数开始和结束时间,通过时间差监测JavaScript函数执行性能。
-
能,但需所有CSS文件被同一文档加载且定义在使用前;变量失效时应检查Computed面板中的CustomProperties、拼写、大小写及单位是否匹配。
-
accent-color可直接修改checkbox、radio、range和progress的用户交互高亮色;对select、textarea、text等无效,需手动样式覆盖。
-
@media(orientation:landscape)不稳定,根本原因是viewport缺失或被覆盖、依赖重排导致延迟触发、iOS/安卓兼容性差异;需配合viewport设置、aspect-ratio兜底、dvh单位及主动matchMedia监听。
-
用百分比定位标注点会偏移,因为left/top以父容器宽高为基准计算,而图片缩放后渲染区域与父容器尺寸不一致;需使定位参考系与用户所见图片完全重合,推荐JS动态校准或background-image方案。
-
RSA-OAEP+AES-GCM混合加密是当前Web端最可行方案,因RSA-OAEP有长度限制(2048位密钥仅支持约214字节),无法加密长消息,而AES-GCM负责主体加密、RSA-OAEP加密临时密钥,兼顾效率与兼容性。