【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;
相关推荐
曹一二2 分钟前
前端性能优化场景题:图片懒加载 + 大数据渲染
前端
GISer_Jing8 分钟前
Come on,工作总结
前端·ai·前端框架
Hilaku11 分钟前
Sass 和 Less 在 2026 年彻底多余了吗?
前端·javascript·程序员
百慕大三角16 分钟前
AI 写代码最大的风险不是不会写,而是太能写:我给 Coding Agent 加的 4 层工程约束
前端·ai编程·trae
用户9210802628618 分钟前
从 EventSource 到可复用 SSE Client:我如何实现多实例、双超时与自动重连
前端
咩咩啃树皮19 分钟前
ES6 Set 核心特点 + 最简数组去重
前端·javascript·html
zhanghaha131438 分钟前
HTML系列教程:18_HTML / CSS 颜色零基础详解
css·html·tensorflow
aa小小1 小时前
uniApp离线数据不丢失方案
前端
代码小学僧1 小时前
从 0 到 1,记录我的第一个出海 SaaS 独立开发项目
前端·rpc·音视频开发
Aaswk1 小时前
从 HTML/CSS/JS 到 Vue + Axios 的一篇实战笔记
前端·css·vue.js·html