-
Sass模块化用@use替代@import实现样式作用域隔离,组件独立文件+语义类名map集中管理+响应式变量同步测试配置,确保样式可定位、可替换、可验证。
-
CSS网格线命名必须在grid-template-columns/rows中轨道尺寸前后用空格包围的[name]语法,如1fr[header-top]2fr;命名仅提供语义别名供grid-column-start等引用,区分大小写且行列线独立,不支持变量,兼容现代浏览器但IE不支持。
-
CSS变量不能直接用于@media条件,需通过:root定义断点值并配合媒体查询重设、构建工具替换或JS动态控制;流体缩放应使用clamp()与calc()组合变量,注意单位兼容性;变量仅传递状态,响应逻辑仍需媒体查询、容器查询或JS监听配合。
-
上下浮动动画需用@keyframes配合transform:translateY()实现,位移量宜小(±8px),起止状态一致,周期内往返偏移;须避免重排、确保DOM挂载后触发,启用硬件加速并控制视口内播放。
-
1px边框在跨平台(尤其iOSSafari和旧AndroidWebView)中易渲染模糊或虚线,主因是sub-pixel渲染差异;推荐优先使用伪元素+scale(0.5)方案,兼容性最佳。
-
flex-direction:column不能实现瀑布流,因其子项垂直堆叠、无法回填空白,且flex-wrap在column下无效;纯CSS瀑布流唯一可靠方案是columns属性。
-
Map的键支持对象/函数且不转字符串,而Object会将对象键转为"[objectObject]"导致覆盖;Map用SameValueZero比较保留引用,遍历严格按插入顺序,提供size、has()等确定性API,不可用中括号或点号访问。
-
WeakMap的键只能是对象,原始值会报错;它不阻止垃圾回收,而Map会强引用锁住对象;WeakMap不支持遍历、size、clear等操作,适用于为对象附加私有元数据。
-
HTML分段应使用语义化块级标签(如<p>、<section>)而非换行或<br>,配合CSSmargin控制间距,并在模板/JS中显式包裹标签,确保结构清晰、响应式友好且无障碍可访问。
-
Provide/Inject是Vue跨组件共享逻辑的轻量机制,通过按模块provide(如Symbol('user'))和inject实现解耦;需用readonly保障安全性,适用于中低频状态传递,非全局状态管理替代方案。
-
margin、border和padding影响元素布局空间:content为内容区,padding扩增内部尺寸,border增加边框厚度,margin创建外部间距;默认width仅含content,而box-sizing:border-box可使width包含padding和border,避免溢出。
-
HTML文件打不开的根本原因是file://协议限制及文件关联错误;应启用扩展名确认.html后缀、设置浏览器为默认程序、拖入浏览器或用LiveServer启动HTTP服务规避安全策略。
-
background-position不生效常因display为inline或background-attachment:fixed导致参考系错误;需确保元素有尺寸、合理设置background-origin(padding-box/border-box/content-box);百分比值按锚点对齐逻辑理解(如50%50%为居中);关键词仅限9种合法组合;多背景图时position值须一一对应且与background-size数量一致。
-
使用position:fixed可实现顶部固定导航,通过top:0、left:0和z-index确保定位,配合margin-top防止内容遮挡,并用响应式设计适配移动端。
-
本文讲解如何通过JavaScript动态识别当前页面URL,并自动为对应导航链接添加active类,从而实现页面跳转后导航项持续高亮的效果,无需修改HTML结构或阻止默认跳转行为。