-
html2text最稳,禁用折行(-b0)、启用Unicode和GitHub模式可批量转;pandoc保真但表格敏感,需列数一致;turndown已停更,Node.js推荐cheerio+remark-html;在线工具不可控,转换本质是降维取舍。
-
是的,link标签顺序影响样式优先级,但仅当同权重规则冲突时,后加载的CSS会覆盖先加载的;源顺序是CSS层叠机制的一部分,需确保文件正确加载且无@import等干扰因素。
-
sticky元素被裁剪需检查overflow非visible的祖先容器,必要时提级至更高层;遮挡问题需确保其定位上下文存在并设z-index;滚动容器决定粘性范围,非body子元素或含overflow祖先将限制效果。
-
当子元素少于4个时强制单列显示,需用:has(>*:nth-child(4))判断存在性,配合not(:has())实现≤3个子项为1fr;阶梯式列数需按≥7、4–6、≤3顺序叠加:has()与:not(:has())规则,注意浏览器兼容性及display:contents兼容问题。
-
Permissions-Policy是细粒度权限闸门,需明确“控谁、控什么、在哪控”;iframe的allow属性优先级高于响应头,须用分号分隔、括号指定来源;HTTP头需服务器配置,注意语法兼容与转义;navigator.permissions.query()返回prompt不代表可调用API,必须用户手势触发且iframe已获授权。
-
事件监听器未清理是内存泄漏的直接原因,需用ChromeMemory面板检测detached节点及EventListeners数量增长,推荐AbortController配合signal自动解绑,尤其注意window/document监听器和React/Vue卸载时的清理时机。
-
应使用btnis-loading表达按钮加载状态,其中is-loading是语义清晰、块级归属的状态修饰符,需与块名组合使用、限定作用域、避免泛匹配,并遵循声明式设计原则。
-
路由守卫是前端权限控制第一道防线,仅做可见性过滤和轻量准入检查,核心权限必须由后端接口返回并校验;适合拦截未登录访问、角色无权路由及动态菜单过滤,不适用于接口权限、字段级控制或绕过地址栏的假安全。
-
优先选用明确标注“CORSenabled”的天气API(如open-meteo.com),否则须通过后端代理中转,禁在前端硬编码Key;渲染时用textContent防XSS,IP定位需合规提示并提供手动修正入口。
-
Stylelint保存时自动修复不生效,主因是VSCode格式化链路冲突或customSyntax未配置;应关闭editor.formatOnSave、启用stylelint.autoFixOnSave,确保安装官方插件、配置匹配的customSyntax及可修复规则。
-
Set和Map是ES6专为去重/存在性判断与灵活键值映射设计的原生集合类型;Set自动去重、O(1)查询、支持集合运算;Map支持任意类型键、保持插入顺序、无原型污染,语义清晰且性能更优。
-
WebStorm中图片对齐失效的主因是display与vertical-align组合不当、Flex父容器缺失display:flex、路径解析错误及盒模型干扰;应优先用Elements面板检查computed样式,再针对性调整。
-
服务端主动关闭WebSocket必须走RFC6455关闭帧流程:先发CLOSE帧、等待对端响应、再关底层连接;直接调用close()或terminate()会导致1006异常断开,生产环境严禁用terminate()主动下线,仅限恶意帧拦截或超时强制清理。
-
width变化不触发transition需确保元素有明确数值宽度(非auto)、写在默认状态而非hover中、行内元素设为block/inline-block;优先用max-width或flex-basis替代width过渡。
-
用Map实现撤销/重做,核心是将其作为“操作-快照”索引层,键为操作ID或类型序号,值存深拷贝状态、diff摘要或命令对象,避免引用污染;更新严格匹配用户显式意图,还原时协同past/future指针精准定位。