-
<p>Tailwind的shadow-类是封装的box-shadow值,非简单“一键立体”;档位差异体现设计意图:shadow-sm轻抬升、shadow-md贴边凸出、shadow-lg双层压低、shadow-2xl大模糊撑开但易卡顿;hover需配transition-shadow且防overflow-hidden裁剪;深色背景应改阴影色;自定义shadow-[]在Safari/AndroidWebView中兼容性差;shadow-inner是内阴影,非边框替代,需配合适当背景与圆角;核心在
-
必须用background-image替换linear-gradient才能自定义Bootstrap5条纹进度条颜色,background-color无效;.progress-bar-striped和.progress-bar-animated需同步修改且方向、色标一致,并注意.progress底色对比度。
-
video的error事件仅在致命加载或解码失败时触发,如404、跨域拒绝、格式不支持、文件损坏;其触发依据是video.error为非null的MediaError对象,code为1~4分别对应用户取消、网络错误、解码失败、源不可用。
-
图片在Grid中拉伸变形的根源是img未设object-fit且父容器无明确尺寸约束;需先为griditem设置宽高或aspect-ratio,再对img应用object-fit:cover/contain并配overflow:hidden与object-position。
-
直接用localStorage.setItem易出问题,因其仅支持字符串:存对象变"[objectObject]",null/undefined转字符串,iOS隐私模式下写入抛QuotaExceededError且静默失败;故封装须守住序列化-反序列化与错误兜底两条底线。
-
迭代器是JavaScript中按需遍历数据的机制,核心是实现[Symbol.iterator]方法返回含next()的对象,每次调用返回{value,done};可借助生成器函数快速创建,yield产出值,自动满足迭代协议。
-
不能。CSS.supports()是JavaScriptAPI,依赖JS引擎初始化和DOM就绪,无法在JS运行前调用;应改用CSS的@supports规则实现早期能力检测。
-
JavaScript模块化主流规范有CommonJS和ES6Module两种广泛落地,前者用于Node.js默认环境,后者获现代浏览器及新版Node原生支持;AMD/CMD已基本淘汰。
-
中介者模式通过引入中介者对象封装组件交互,实现解耦。组件间通信由中介者统一管理,如搜索框触发事件、结果列表监听渲染,避免直接依赖。优势为降低耦合、提升可维护性与扩展性,适用于表单联动、状态同步等场景。但需防中介者臃肿,避免过度抽象,适合复杂交互而非简单逻辑。
-
Symbol.toPrimitive不能使组件实例真正参与数学运算,仅控制类型转换;需配合显式转换逻辑(如.valuegetter或.add()方法)才能实现+、*等运算。
-
<fieldset>元素默认带有边框和外边距,但若标签未正确闭合(如<select>缺少结束标签)或语义结构错误,会导致渲染异常、边框消失、内容重叠。本文详解常见陷阱与修复方法。
-
不能只改后缀,因SCSS解析器更严格:需同步更新文件后缀、引用路径及做最小语法适配,否则易致编译失败或样式失效。
-
十六进制颜色写错一位即失效,浏览器仅接受3位或6位合法十六进制(a–f),非法字符或位数错误会导致整条声明静默忽略;rgb()、rgba()、hsl()等函数也需严格遵循参数类型、范围与单位规则,否则同样静默失效。
-
答案:编写JavaScript库应优先使用功能检测而非user-agent判断环境,通过检查全局对象属性(如'fetch'inwindow)、验证API行为完整性、结合降级方案与模块兼容处理,确保代码在多环境中可靠运行。
-
异步迭代器适用于逐步获取异步数据的场景,如流式读取文件、分页请求API和任务队列处理。通过forawait...of语法,开发者能以同步风格线性编写异步序列处理逻辑,提升代码可读性与控制力。