css上下左右居中的几种方法

admin 轻心小站 关注 LV.19 运营
发表于前端技术学习版块 css,教程

在网页设计中,经常需要将元素居中对齐。这里介绍几种CSS实现上下左右居中的方法。1. 绝对定位法在父元素中设置相对定位,再在子元素中设置绝对定位,配合top、right、bottom、left属性将子

在网页设计中,经常需要将元素居中对齐。这里介绍几种CSS实现上下左右居中的方法。
1. 绝对定位法
在父元素中设置相对定位,再在子元素中设置绝对定位,配合top、right、bottom、left属性将子元素居中对齐。
html
<p>使用绝对定位法居中</p>
<div class="parent">
  <div class="child">这是一段文字</div>
</div> 

css
.parent {
  position: relative;
}
.child {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
} 

2. flex布局法
使用flex布局时,设置容器display为flex,再在容器内设置align-items和justify-content属性值为center,即可实现子元素的居中对齐。
html
<p>使用flex布局法居中</p>
<div class="parent-flex">
  <div class="child">这是一段文字</div>
</div> 

css
.parent-flex {
  display: flex;
  align-items: center;
  justify-content: center;
} 

3. 网格布局法
网格布局是CSS3新增的布局方式,使用grid-template-columns和grid-template-rows属性可以轻松地定义网格的列数和行数,再使用align-self属性和justify-self属性可以实现子元素的居中对齐。
html
<p>使用网格布局法居中</p>
<div class="parent-grid">
  <div class="child">这是一段文字</div>
</div> 

css
.parent-grid {
  display: grid;
  height: 100%;
}
.child {
  align-self: center;
  justify-self: center;
} 

这三种方法都可以实现上下左右居中,但需要注意的是,绝对定位法需要准确计算子元素的坐标,如果父元素的大小改变,子元素的坐标也需要重新计算。而flex布局法和网格布局法不需要考虑坐标,对于相对复杂的布局,使用flex布局和网格布局会更为方便。

文章说明:

本文原创发布于探乎站长论坛,未经许可,禁止转载。

题图来自Unsplash,基于CC0协议

该文观点仅代表作者本人,探乎站长论坛平台仅提供信息存储空间服务。

评论列表 评论
发布评论

评论: css上下左右居中的几种方法

粉丝

0

关注

0

收藏

0

已有0次打赏