您的位置首页百科问答

css怎么设置多行垂直居中

css怎么设置多行垂直居中

的有关信息介绍如下:

css怎么设置多行垂直居中

css在设置多行垂直居中之前,我们要先区分行内元素与块状元素的区别,然后分别针对具体的需求情况(内元素或块状元素)来做出正确的代码功能,本文中分别针对行内元素、块状元素进行设置多行垂直居中的讲解

新建一个html页面,首先,将页面(多行元素)的基本结构写出来:

例子:

多行水平垂直居中

多行水平垂直居中

多行水平垂直居中

多行水平垂直居中

多行水平垂直居中

给容器#container添加css样式,要让行内元素垂直居中,必须已知容器的宽高;对于行内元素我们可以用display:table,无需知道行内元素的宽高

css:

#container{

margin:20px auto;

background: #ccc;

position: relative;

width:900px;

height:600px;

display: table;

}

给行内元素添加样式:display:table-row 让行内元素垂直居中;

然后再添加水平居中样式:text-align: center;

如果需要让行内元素的文字也垂直居中的话,就根据容器的高度(600px)分成五等分,即120px;添加样式:line-height:120px;

CSS:

#container span{

display: table-row;

text-align: center;

line-height: 120px;

}

首先,将页面的多个块状元素的基本结构写出来,如下:

1

2

3

4

5

使用弹性盒子

弹性盒子将父级元素设置为(注意兼容性):

display:-webkit-box;

display:-moz-box;

display:-ms-box;

display:box;

控制子元素的方向,让子元素竖排:

-webkit-box-orient:vertical;

-moz-box-orient:vertical;

-ms-box-orient:vertical;

box-orient:vertical;

CSS:

.test3{

width:800px;

margin:30px auto;

height:600px;

border: 10px solid #ccc;

padding: 10px;

display:-webkit-box;

display:-moz-box;

display:-ms-box;

display:box;

-webkit-box-orient:vertical;

-moz-box-orient:vertical;

-ms-box-orient:vertical;

box-orient:vertical;

}

给子元素设置宽高:

.test3 div{

width:100px;

height:100px;

background: red;

border: 1px solid #fff;

}

效果如图:

根据父级元素的高度、子元素的高度及每一子元素有1px的边框,600-100*5-2*5=90;然后将90分成六等分,即:15px,给子元素添加样式:margin: 15px auto 0 auto;

子元素CSS样式:

.test3 div{

width:100px;

height:100px;

background: red;

border: 1px solid #fff;

margin: 15px auto 0 auto;

}

效果如图: