【CSS】水平垂直居中

  1. 给父盒子设置属性 flex

    • display: flex;写在父元素上这就是定义了一个伸缩容器
    • justify-content:center 设置主轴对齐方式为居中,默认是横轴。子元素居中。
    • align-items:center 设置纵轴对齐方式为居中,默认是纵轴。子元素居中。
  2. 给父盒子和子盒子设置属性

    给容器设置 display: flex; 子项设置 margin: auto;

  3. 绝对定位设置居中

    容器设置position: relative。子元素设置 position: absolute; left: 50%; top: 50%; transfrom: translate(-50%, -50%);

    优点就是不用关心子元素的长和宽,但是这种方法兼容性依赖 translate2d 的兼容性

  4. 绝对定位另一种方法

    需要给子元素设置 position: absolute; 设置固定宽度和高度;top、left、bottom、right都设置为0; margin设置为auto;也能实现垂直水平居中。

flex:1 的作用

  • 首先 flex: 1; 等同于 flex: 1 1 auto;
  • flex: 1 实际上是三个属性的缩写:flex-grow: 1; flex-shrink: 1 flex-basis: auto;
相关推荐
ai超级个体3 分钟前
前端唯一的护城河?结合 AI 将字节组件库 Headless 化后的感想~
前端·react·ai编程·ant design·组件库·vibe coding
冴羽yayujs11 分钟前
前端周报:Remix 3、Node 26 与 Chrome 148
前端
问心无愧051312 分钟前
ctf show web 入门39
android·前端·笔记
卷无止境12 分钟前
Alpine.js入门笔记
前端
@王先生118 分钟前
【K8S-ETCD初始化三节点集群】
前端·chrome·k8s·etcd·集群
LinDaiDai_霖呆呆25 分钟前
做 Agent 开发入门必懂的 10 个 Agent 核心概念
前端·agent·ai编程
原则猫1 小时前
await 到底在等待什么
前端
西洼工作室1 小时前
fetch+ReadableStream实现SSE推送实时踢人下线
前端·python·全栈
农夫山泉不太甜1 小时前
Nuxt 4 完全指南:从入门到精通
前端
Momo__1 小时前
Vue 3.4+ 被低估的 3 个 API,让你的代码更优雅
前端·vue.js