-
必须用box-sizing:border-box、calc()预留误差、BFC防塌陷;因content-box下width不包含padding/border,易超100%换行,且浮动致父容器塌陷需清除。
-
快速修复“NodeSasscouldnotfindabinding”需先执行npmrebuildnode-sass--force,再按系统补全构建环境或设NODE_OPTIONS=--openssl-legacy-provider;推荐迁移到纯JS的sass(DartSass),卸载node-sass和旧版sass-loader,安装sass与sass-loader@^13,并确保配置中implementation指向require('sass'),同时清理node_modules和package-loc
-
WeakRef仅适用于JS对象的弱引用,避免阻止GC回收;不能用于离线资源缓存,因其不支持持久化、无TTL、不触发清理、无法跨页面/ServiceWorker存活,也不兼容CacheAPI或IndexedDB。
-
作用域插槽是解决商品规格动态展示最自然的方式——子组件管数据和逻辑,父组件管样式和交互。它将specList、selected、canSelect等原始信息交由父组件按需渲染,并通过updateSelection方法闭环处理用户操作,支持多品类与移动端响应式适配。
-
Vue通过异步队列批量更新Watcher,利用microtask(如Promise)在当前JS执行结束、渲染前统一刷新,避免冗余DOM操作;推荐用Object.freeze、分片更新、虚拟滚动等优化大批量响应式数据处理。
-
通过::selection伪元素可自定义网页选中文本的样式,如颜色、背景色和文字阴影,需注意仅支持文本相关属性且应保证可读性。
-
使用flex布局可高效实现页面对齐与响应式设计。通过display:flex启用弹性盒子,子元素自动成为flex项目并沿主轴排列。justify-content控制主轴对齐,如center实现水平居中;align-items处理交叉轴对齐,常用于垂直居中;flex:1实现等分空间;flex-wrap:wrap支持换行,结合calc()可构建响应式多列布局。配合gap设置间距,简化样式代码。默认主轴为row,可用flex-direction:column切换方向,满足多样布局需求。
-
<p>.modal-body加overflow-y:auto没反应,是因为未设max-height导致无高度限制,浏览器无法判断溢出边界;必须显式设置max-height(如calc(100vh-200px)),并确保内容真正溢出且滚动样式作用于.modal-body本身。</p>
-
语义化标签通过明确网页结构提升用户体验与机器理解,如<nav>、<article>帮助辅助技术识别导航和内容主体;ARIA属性补充HTML不足,用role和状态属性增强动态组件的无障碍访问;结构化数据通过Schema.org词汇提供机器可读的事实,赋能搜索引擎展示富摘要并支持智能应用解析信息。这三者共同构建多维度语义网,使网页内容更易被不同系统高效理解与利用。
-
原生Set没有symmetricDifference是因ES2015设计时为避免API膨胀而刻意省略,需手动实现;可靠写法是遍历两集合分别添加对方不含的元素,返回新Set,兼容任意可迭代对象且基于SameValueZero比较。
-
Grid容器的max-width失效主因是父容器为flex/grid且未设width,致子项无约束;须配合width:100%或inline-size:100%生效,fr单位还受min-content限制,需设min-width:0或minmax(0,1fr)。
-
TailwindCSS本地加载慢的根源是JIT未生效、content路径遗漏或预构建未包含tailwindcss插件;需确认终端显示“UsingJITmode”,删除purge/mode字段,修正content数组,移除postcss.config.js,并在vite.config.ts中显式配置optimizeDeps.include。
-
浮动与定位的核心区别在于对文档流的影响及使用场景。①浮动(float)使元素半脱离文档流,仍影响相邻内容,常用于文本环绕和简单布局,但需清除浮动以解决高度塌陷问题;②定位(position)则让元素完全脱离文档流(如absolute、fixed),实现精确位置控制和层叠效果,适用于弹窗、固定导航等场景;③两者关系在于均用于改变元素位置,但浮动侧重排版,定位侧重精准放置;④在响应式设计中,浮动因复杂布局和顺序控制的局限逐渐被Flexbox和Grid取代,而定位因其固定、叠加和粘性能力仍不可或缺;⑤层叠上下文
-
bottom:0只对position为absolute、fixed或sticky的元素生效,且依赖最近已定位祖先(如position:relative)作为参考系;若无,则锚定视口底部。
-
解构赋值是JavaScript中按需提取并命名绑定对象/数组属性的原生机制,非语法糖;它支持默认值、重命名、跳过项、剩余元素等,但需防范null/undefined导致的运行时错误。