在某些情况下,使用CSS居中元素总是很容易的,而在其他情况下则很难。这是如何以CSS为中心以及现代CSS技术的完整列表
如果需要水平或垂直居中,则在CSS中居中元素是一项非常不同的任务。
在这篇文章中,我将解释最常见的场景以及如何解决它们。如果提供了新的解决方案弹性盒我忽略了旧技术,因为我们需要继续前进,并且Flexbox多年来一直受浏览器支持(包括IE10)。
水平居中
文本
文本很简单,可以使用text-align
属性设置为center
:
p {
text-align: center;
}
积木
将非文本内容居中的现代方法是使用Flexbox:
#mysection {
display: flex;
justify-content: center;
}
里面的任何元素#mysection
将水平居中。
如果您不想使用Flexbox,这是另一种方法。
通过在左边和右边应用自动边距并设置元素的宽度,可以将所有非文本内容居中放置:
section {
margin: 0 auto;
width: 50%;
}
以上margin: 0 auto;
是以下内容的简写:
section {
margin-top: 0;
margin-bottom: 0;
margin-left: auto;
margin-right: auto;
}
记住将项目设置为display: block
如果它是一个内联元素。
垂直居中
传统上,这一直是一项艰巨的任务。现在,Flexbox为我们提供了一种以最简单的方式完成此操作的好方法:
#mysection {
display: flex;
align-items: center;
}
里面的任何元素#mysection
将垂直居中。
垂直居中和水平居中
可以组合使用Flexbox垂直和水平居中的技术,以完全将页面中的元素居中。
#mysection {
display: flex;
align-items: center;
justify-content: center;
}
可以使用CSS网格:
body {
display: grid;
place-items: center;
height: 100vh;
}
免费下载我的CSS手册
更多CSS教程:
- Flexbox指南
- CSS网格教程
- CSS变量(自定义属性)
- PostCSS简介
- CSS保证金属性
- 如何使用CSS将元素居中
- CSS系统字体
- 如何使用样式打印HTML
- CSS过渡入门指南
- CSS动画教程
- CSS简介
- CSS指南
- 如何使用PurgeCSS和PostCSS设置Tailwind
- 尾风备忘单
- 如何使用CSS连续旋转图像
- 使用CSS使表响应
- 如何通过二等分来调试CSS
- CSS选择器
- CSS级联
- CSS特异性
- CSS属性选择器
- CSS颜色
- CSS单位
- CSS url()
- CSS排版
- CSS Box模型
- CSS位置属性
- CSS媒体查询和响应式设计
- CSS功能查询
- CSS转换
- 如何使用CSS设置列表样式
- CSS供应商前缀
- CSS继承
- CSS伪类
- CSS伪元素
- 用CSS样式化HTML表
- CSS Display属性
- CSS calc()函数
- CSS边框
- 使用@import导入CSS文件
- CSS错误处理
- CSS过滤器
- CSS Box大小
- CSS背景
- CSS注释
- CSS字体
- CSS填充
- CSS float属性和清除
- CSS规范化
- CSS z-index属性
- 如何使用CSS禁用文本选择
- 如何使用CSS将项目放在其容器的底部
- 如何使用CSS反转颜色
- CSS中的响应式前置标签
- 自适应YouTube视频嵌入
- 响应式设计的良好CSS断点值是多少?
- 如何在Flexbox中对齐中心