整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

CSS 居中布局方式一

able + margin 实现水平方向居中, table-cell + vertical-algin 实现垂直居中

者:蔷薇Nina

原文:https://www.cnblogs.com/wcwnina/p/11297630.html

在CSS里,标签位置居中一直是困扰Web前端的难题。在本文中,我对这类问题进行了探究和给出了几点建议,供读者参考。

1 行内标签

1.1 水平居中

在父级标签中使用 text-align: center

效果:

1.2 垂直居中

如果是单行,则为该标签设置行高line-height)且与其父级标签 height 相等即可。

效果:

如果是多行,稍微有点麻烦,需要在该标签设置 display: table-cell vertical-align: middle,在其父级标签设置 display: table

效果:

2 块标签

2.1 水平居中

方法一:在父级标签中使用 flex 弹性盒子。

效果:

方法二:在该标签中使用 margin 属性。

效果:

2.2 垂直居中

在父级标签中使用 flex 弹性盒子。

效果:

总结:对于行内标签居中,优先考虑文本对齐(text-align)和显示单元格(table-cell);对于块标签居中,优先考虑显示弹性盒子(flex)。

、对于行内元素:

text-align:center;

二、对于确定宽度的块级元素:

(1)margin和width实现水平居中

常用(前提:已设置width值):margin-left:auto; margin-right:auto;

(2)绝对定位和margin-left: -(宽度值/2)实现水平居中

固定宽度块级元素水平居中,通过使用绝对定位,以及设置元素margin-left为其宽度的一半

.content{

width: 200px;

position: absolute;

left: 50%;

margin-left: -100px; // 该元素宽度的一半,即100px

background-color: aqua;

}