-
EventSource连接失败但不报错的主因是服务端响应头缺失Content-Type:text/event-stream或消息格式错误(如前置空行、末尾单换行);需检查响应头、验证readyState、手动close并重建实例。
-
最快上手是pdfkit(依赖wkhtmltopdf),但易崩;puppeteer更可控但启动慢;window.print()非真PDF;FlyingSaucer适合静态报表;核心难点是业务验收细节。
-
本文介绍一种轻量、高性能的递归算法,用于快速计算两个对象间的深度差异,支持嵌套对象与属性删除标记(值为"deleted"),适用于高频调用场景。
-
当使用<inputtype="number">且min="0"时,浏览器原生增减按钮首次点击仍显示1而非0;本文提供纯HTML/CSS/JS实现方案,无需自定义控件,通过事件监听与状态标记可靠触发初始值设为0。
-
应使用JavaScript添加自定义类(如is-loading)并配合CSS设置cursor:wait,而非依赖button:disabled;因:disabled在多数浏览器中会忽略cursor样式,且语义上仅防重复提交,不传达加载状态。
-
Less的@import默认是嵌套导入,直接全局替换会导致样式优先级混乱;应改用@import(reference)避免重复输出,对第三方CSS用@import(inline),并监控编译后文件体积。
-
直接用style属性设置字体、字号、颜色最简单高效;推荐font-family备选链、rem单位、十六进制颜色;内嵌style标签适合统一控制;中文字体需注意系统差异、引号包裹、@font-face匹配;rem利于缩放与响应式,px适用于固定尺寸场景。
-
元素未变大主因是默认inline显示不支持宽高;需改display为block等,同时注意替换元素例外、父容器限制、百分比依赖包含块高度、box-sizing默认content-box易溢出、vw/vh与max-width的优先级关系及vh在移动端的滚动风险。
-
现代浏览器默认禁止有声视频自动播放,需静音或用户交互后触发;preload应设为metadata;视频编码需用H.264Baseline/Main、Level≤3.1、GOP1–2秒,MP4格式优先。
-
浮动元素脱离文档流并左/右排列,导致父容器塌陷和布局错位,需通过clear、BFC或伪元素清除,曾用于多列布局,现多由Flex/Grid替代。
-
浅拷贝仅复制第一层引用,Object.assign和展开运算符属此类,修改嵌套属性会影响原对象;深拷贝需递归处理所有层级,JSON方法有诸多限制,structuredClone是现代标准方案,支持多种内置类型但不支持函数、Symbol等。
-
屏幕阅读器忽略HTML中所有类型空格(包括普通空格、 、 、 等),不朗读、不停顿;需用语义化标签、ARIA属性或CSS控制可访问性节奏。
-
WebCryptographyAPI提供浏览器原生加密能力,支持密钥生成、加解密、签名验证,实现端到端加密。通过crypto.subtle接口使用非对称加密(如RSA-OAEP、ECDH)交换密钥,结合对称加密(如AES-GCM)加密数据,确保服务器无法访问明文。安全密钥交换依赖公钥基础设施,常用非对称加密或Diffie-Hellman协议实现完美前向保密。为防中间人攻击,需结合安全码验证、TOFU或带外认证。API存在安全边界:客户端易受XSS或恶意软件攻击,私钥不应明文存储于localStorage,
-
ChromeDevTools中无法直接查看完整渲染树,但Layers面板最接近:打开Layers面板后,点击某合成层,右侧Nodes列表即为该层内实际参与渲染的可见、有样式的DOM节点(已过滤display:none等)。
-
Bootstrap5栅格需严格遵循container→row→col嵌套规则,漏掉row会导致负margin缺失、列宽不准;col-auto与col混用时,前者自适应内容宽度,后者均分剩余空间;响应式须显式声明col-12col-md-6才实现小屏单列、中屏双列。