-
transition必须写在非hover的基础样式中才能生效,因为它需同时控制进入和离开的过渡;支持过渡的属性有限,transform和opacity最安全高效。
-
下拉刷新非HTML5原生API,需第三方库或手写实现;主流方案如pulltorefreshjs、iScroll须注意容器滚动配置与iOS兼容性,手写版需处理touch事件被动限制及回弹动画。
-
本文详解如何在AlpineJS中正确绑定数据并实现基于两个select元素值的动态价格计算,重点解决x-text无法显示calculate()返回值的常见错误。
-
最直接方式是用<ahref="about.html">关于我</a>,路径需区分大小写、不可省略.html后缀,相对路径适用于同目录或子目录,绝对路径以/开头更稳定但本地双击无效;按钮跳转需JS配合location.href。
-
浮动容器被文字撑开的典型表现是宽度异常变宽或换行错乱,根本原因是浮动元素未触发BFC且内部文本无换行约束;应优先用max-width配合word-break与overflow-wrap控制断行,并确保父级存在块级上下文。
-
<dialog>元素必须调用showModal()或show()才能显示,其open属性为只读,手动添加仅触发初始显示但丧失模态能力;showModal()实现真正模态(禁背景交互、支持Esc/点击backdrop关闭),show()为非模态;关闭须调用close(),不可仅操作open属性;Safari15.4前不支持showModal(),需运行时检测并降级;点击backdrop关闭需手动监听dialog的click事件并判断e.target===dialog。
-
组件嵌套尺寸失控本质是盒模型在多层继承中被反复计算,需逐层定位box-sizing、margin折叠及transform叠加问题,用outline和computed面板精准排查。
-
console.log不够用,应优先使用console.table()、console.group()、console.time()、console.assert()等结构化调试方法,并结合断点调试、全局错误监听、console.dir和$0等DOM调试技巧。
-
父容器设为grid时,子元素若设position:absolute会脱离Grid流而相对于最近已定位祖先定位;应给Grid父容器加position:relative以提供定位上下文,优先使用Grid自身对齐能力替代绝对定位。
-
JavaScript闭包是函数与其词法作用域中变量的组合,可封装私有变量、解决循环绑定问题、实现函数工厂与柯里化、以及缓存计算结果。
-
浮动塌陷是因浮动元素脱离文档流致父容器高度为0;推荐用overflow:hidden触发BFC解决,但需防溢出裁剪;clear应加在后续兄弟元素上;现代布局优先用Flexbox或Grid。
-
媒体查询必须写在样式表顶层,不能嵌套在CSS选择器内部;推荐使用min-width实现移动优先;常见失效原因包括优先级覆盖、加载顺序错误和浏览器缓存;断点应统一用px单位。
-
可在浏览器中用前端技术解析.docx文件:一、mammoth.js转HTML;二、JSZip+docxtemplater读XML;三、Office.js仅限加载项;四、原生JSZip手动解压提取。
-
fetch()是现代标准但需手动补全Cookie、错误处理和超时;常见无响应因忘await/.then(),且4xx/5xx不reject;需检查res.ok、JSON.stringify、FormData用法、GET无body、credentials控制跨域Cookie、AbortController实现超时与取消。
-
HTML5无版本跳转差异,跳转行为取决于实现方式:a标签、JSAPI(如location.assign)、HTTP重定向在HTML4/5中完全一致;唯一真差异是HTML5新增的HistoryAPI(pushState/replaceState),支持无刷新路由但需同源且服务端配合。