-
HTML项目必须分目录,否则三个月后难以维护;推荐结构为根目录放HTML、css/js/assets分设子目录,统一用根相对路径(/开头)引用资源,并启用本地服务器避免file://协议问题。
-
本文详解如何在jQuery中准确捕获Backspace(退格)和Delete(删除)按键事件,并结合输入框长度限制实现安全的数字输入控制,重点解决keypress无法触发的问题。
-
最可靠方案是用setInterval或递归setTimeout逐字符写入textContent;禁用innerHTML+=避免解析开销、XSS风险及光标跳动;递归setTimeout更适配交互控制。
-
Array.prototype.join()拼接字符串比反复+=更快,配合模板字符串预处理数据可提升性能、可读性与可维护性;应避免频繁DOM操作,一次性innerHTML插入,并做好XSS防护。
-
动态切换HTML5音频需先改src再调load(),否则不重载;建议pause()后操作,用canplaythrough事件判断可播,preload="none"节省资源;iOS/微信需用户手势触发首次播放。
-
HTML文件本身不适合长期缓存,应设no-cache或max-age=0,must-revalidate确保每次验证更新;静态资源则需配合内容哈希与immutable指令实现强缓存,CDN策略必须与源站响应头一致,否则易导致版本错配。
-
闭包实现异常自动回滚的核心是将全部数据变更操作封装在DB::transaction闭包内,确保异常穿透触发回滚;禁止闭包内try-catch拦截、前置校验须用throw_if/throw_unless中断,返回值天然代表事务成功结果。
-
单页应用路由本质是用history.pushState/replaceState改URL并操作历史栈,配合popstate监听导航,需服务端兜底返回index.html且前端主动匹配初始路径。
-
HTML模块复用需在构建期介入,用posthtml-include等工具将header.html等片段内联为标准HTML,避免fetch动态注入导致的样式丢失、脚本不执行及SEO问题。
-
HTML转PDF样式丢失主因是媒体查询和相对单位被忽略,需强制启用样式、换用pt/mm单位、显式写@mediaprint并嵌入中文字体;动态内容需等待JS执行完毕;PDF体积大或文字不可选源于图片base64和字体未嵌入。
-
required属性失效的5种常见原因:1.用在非支持元素上;2.元素被disabled或hidden禁用;3.inputtype不支持required;4.非原生submit事件触发提交;5.JS清空值后未重置validity状态。
-
srcset应根据图片容器是否固定宽选择x或w描述符:固定尺寸用1x/2x,响应式布局必须用400w/800w配合sizes;二者不可混用,否则整个属性被忽略而回退到src。
-
用HTML表格写报价表应严格遵循语义化规范:用<table><thead><tbody>结构,<thscope="col">定义列头,价格列统一用<tdclass="price">并配合CSS右对齐与等宽数字字体,禁用rowspan/colspan和空格对齐,导出Excel需加UTF-8BOM,移动端优化须设table-layout:fixed及列宽。
-
必须同时设置-webkit-background-clip:text、background:linear-gradient()和color:transparent,且元素为inline或inline-block;Firefox不支持该特性,需用@supports降级。
-
写padding应按顺时针顺序(上右下左),优先用单边属性;两值为上下/左右,三值为上/左右/下;失效常因box-sizing、inline元素或overflow隐藏;勿与margin混用,后者会合并且不影响背景。