-
Sticky定位在表格元素中失效,因<table>、<tbody>、<tr>等不支持sticky,浏览器直接忽略;正确做法是用div模拟表格并设sticky,或采用双层table、CSSGrid、第三方库等替代方案。
-
transform:rotate()单独使用无动画效果,需配合transition或@keyframes;hover中直接写会瞬变,须加transition:transform0.3sease并定义起始态;@keyframes旋转进入需明确from/to、单位、forwards及transform-origin。
-
JavaScript优化页面加载速度需减少体积、提升解析执行效率、合理控制资源加载时机;核心手段包括Terser/SWC/esbuild压缩、动态导入与代码分割、type="module"启用、defer/async策略及精准polyfill。
-
本文介绍使用JavaScript类名切换配合CSStransform:scaleY()实现div元素的平滑垂直展开/收起效果,适用于隐藏内容(如SVG容器或子模块)的交互式显示控制。
-
UnoCSS配置更简洁的根本原因是属性化模式(Attributify)将class属性视为可解析DSL,无需预定义类名集合;它默认支持动态CSS生成,仅需配置shortcuts、rules和attributifyOptions等边界控制与语义映射。
-
triggerRef专门用于手动触发shallowRef的响应式更新,因其只监听.value赋值而不追踪内部属性变化;修改userInfo.value.age后需调用triggerRef(userInfo)才能刷新视图,不可传userInfo.value或普通对象。
-
border-radius动画失效主因是起止值类型不一致或不可插值,须统一用数值单位且四角写法匹配;应避免auto等非数值值,优选class切换而非JS直改,并注意Safari兼容性问题。
-
多个@keyframes可共存但元素仅能应用一个animation-name;需用逗号分隔多个名称实现叠加,且各子属性项数必须严格对应;transform函数顺序影响最终效果,合并写入同一句可实现复杂原子动画。
-
优先用font-display:swap控制字体加载,配合preload预加载关键字体、分平台设置中英文字体fallback,并为IE11等旧浏览器用document.fonts.load()或WebFontLoader主动控制加载时机。
-
translate属性用于禁用浏览器自动翻译,不影响i18n库或API;必须加translate="no"的包括code内容、品牌名、API路径、字段名、CSS类名等;该属性可继承,但textarea/input的value、script/style内部文本除外。
-
不能用opacity设置背景透明,因为它会作用于整个元素及所有子元素,导致文字、边框、图标等同步变淡甚至叠加衰减;应使用background-color:rgba()仅控制背景色透明度,保持内容清晰可读。
-
需借助HTML5的FileAPI与FormData实现图片选择、预览及上传:一、用input[type="file"]获取图片文件;二、用FileReader读取为DataURL实现预览;三、用FormData组织数据;四、用fetch或XMLHttpRequest发送至服务器。
-
深度监听性能开销源于递归遍历建立依赖和变更时的深层diff;优化需精准监听、computed缓存、节流防抖、手动diff或替代策略。
-
闭包是JavaScript中函数记住并访问其定义时词法作用域中自由变量的运行时现象;它由内部函数、对外层局部变量的引用及外层函数返回后内部函数仍被调用三要素构成,本质是引擎延长外层词法环境生命周期以维持变量引用。
-
CSS3属性缺少厂商前缀会导致浏览器兼容性问题,解决方案包括:一、手动添加-webkit-、-moz-、-ms-、-o-前缀;二、用Autoprefixer自动化补全;三、引入normalize.css和prefixfree.min.js;四、确保带前缀属性位于标准属性之前。