-
figure适用于内容可抽离且不影响主文逻辑的场景,如架构图、API响应示例等;figcaption须为直接子元素且唯一,与alt分工明确,不可互换。
-
TailwindCSS构建慢的主因是JIT配置错误或content扫描失控:v3+已默认启用JIT,须删除mode:'jit';需确认版本≥3.0.0且无@tailwindcss/jit;content必为数组、路径精准覆盖所有class使用处;NODE_ENV=development和TAILWIND_MODE=watch缺一不可;@apply和动态class需符合静态分析要求。
-
Less中filter属性不支持多值直接拼接,必须用空格连接成单个字符串,否则后声明会覆盖前声明;正确做法是用带参数的Mixin封装并动态拼接,配合e()函数移除引号,兼容旧版需显式添加-webkit-filter。
-
nav和dropdown必须是两个独立block,因nav只管语义结构与布局,dropdown专责交互行为(显隐、定位、过渡),二者职责分离才能避免样式耦合与测试爆炸。
-
flex-grow控制子元素在容器有剩余空间时的扩展比例,默认为0不扩展,数值越大扩展越多;flex-shrink控制空间不足时的收缩能力,默认为1可收缩,值越大压缩越明显,常用于响应式布局调整。
-
fetchpriority仅对<img>和<iframe>标签生效,且仅在Chrome119+、Edge101+、Opera新版等Chromium内核浏览器中支持;对<link>、<script>、<video>等标签及Firefox、Safari无效。
-
Diff算法处理插槽的核心是父组件决定slots引用是否变更,触发子组件重新render并执行自身diff;插槽VNode惰性生成、不跨patch复用,更新严格遵循父先子后时序。
-
scrollIntoView默认为instant行为,需显式传入{behavior:'smooth'}才有动画;注意IE不支持,DOM未就绪或id不匹配会导致target为null,应加防御性判断;固定头部遮挡时可用scroll-margin-top或block参数调整;频繁点击需防抖或await前序滚动。
-
Bootstrap.badge垂直对齐需按场景定制:按钮内用vertical-align:text-bottom加微调,混排推荐inline-flex容器,表格中确保td未重置vertical-align,SVG场景需先清除内联对齐。
-
支配者树是反映“谁不释放谁就无法被回收”的逻辑结构,直接定位导致内存峰值的顶层支配对象;其RetainedSize越大,说明该对象锁死的内存越多,往往是泄漏源头或误缓存根节点。
-
TextDecoder解码Uint8Array最轻量高效:一次性解码用response.arrayBuffer()转Uint8Array后decode;流式需复用实例并启用{stream:true},末次调用decode()清缓冲。
-
BEM结构应分层:.select为容器,.select__trigger为点击区,.select__list为面板,.select__option为选项;选中态用.select__option--selected,组件激活态用.select--open或.select--focused。
-
不是必须,但强烈建议用<thead>包裹表头;它提升语义化、可访问性及打印/滚动时表头重复显示能力,WCAG和主流UI库均要求该结构。
-
margin-left:auto靠右生效的前提是元素处于干净的flex上下文:父容器需为display:flex且未被justify-content等覆盖,目标元素须为直系子项、无DOM干扰节点,并在flex-direction:row下使用。
-
mailto链接点开没反应,主因是参数含未编码的中文、空格、换行或符号导致浏览器截断;收件人含空格或全角字符也会失败;部分环境(如iOSPWA、企业Android平板)未注册默认邮件客户端而静默丢弃。