参考资料

  1. 后代选择器详细说明以及案例
  2. 背景属性详细说明以及案例
  3. 如何用Flex布局制作响应式布局?
  4. 子选择器详细说明以及案例
  5. CSS有哪些预处理器?
  6. 颜色属性详细说明以及案例
  7. 层次/关系选择器详细说明以及案例
  8. css中div居中
  1. 减少嵌套层级

  • 示例:避免多层flex容器嵌套

<!-- 优化前 -->
<div style="display:flex">
  <div style="display:flex">
    <div>内容</div>
  </div>
</div>

<!-- 优化后 -->
<div style="display:flex">
  <div>内容</div>
</div>
  1. 使用flex-wrap合理换行

  • 示例:移动端适配时自动换行

.container {
  display: flex;
  flex-wrap: wrap;
}
  1. 合理使用flex-grow

  • 示例:分配剩余空间

.item {
  flex-grow: 1; /* 平均分配空间 */
}
.main {
  flex-grow: 2; /* 主区域占2份 */
}
  1. 避免不必要的重排

  • 示例:固定尺寸项目

.item {
  flex: 0 0 200px; /* 不伸缩,固定200px */
}
  1. 使用order属性优化DOM顺序

  • 示例:移动端优先显示重要内容

.important {
  order: -1; /* 移到最前面 */
}
  1. 利用align-self减少额外容器

  • 示例:单独对齐某个项目

.special-item {
  align-self: center; /* 单独垂直居中 */
}
  1. 预定义flex-basis

  • 示例:避免布局抖动

.item {
  flex: 1 1 300px; /* 基准300px */
}
  1. 使用gap属性替代margin

  • 示例:统一间距控制

.container {
  display: flex;
  gap: 10px; /* 项目间距10px */
}