css怎么设置字体居中?下面本篇文章就来给大家介绍一下,希望对大家有所帮助。
一、CSS设置字体水平居中
在CSS中可以使用text-align属性来设置字体水平居中。该属性规定元素中的文本的水平对齐方式,通过使用center值设置文本居中。
text-align是一个基本的属性,它会影响一个元素中的文本行互相间的对齐方式。值left、right和center会导致元素中的文本分别左对齐、右对齐和居中,想要使文本居中,直接使用center即可。
该属性设置文本和img标签等一些内联对象(或与之类似的元素)的居中。
该属性有如下几个特点:
1)、text-align的center应用在一个容器上,它只针对容器里面的文字以及容器里面的display为inline或者inline-block的容器,如果里面的容器display为block,则里面的容器的内容不会居中。
2)、text-align具有向下传递性,会不断地向子元素传递。如果设置一个div,则其子div中的内容也会居中。
css 水平居中.box {
width: 400px;
height: 100px;
background: #ddd;
text-align:center;
}
效果图:
二、CSS设置字体垂直居中
1、line-height属性 使文字垂直居中---单行字体
css 垂直居中.box{
width: 300px;
height: 300px;
background: #ddd;
line-height:300px;
}
效果图:
这样就能让div中的文字水平垂直居中了
2、CSS3的flex布局 使文字垂直居中
css 垂直居中.box{
width: 300px;
height: 300px;
background: #ddd;
line-height:300px;
/*设置为伸缩容器*/
display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
/*垂直居中*/
-webkit-box-align: center;/*旧版本*/
-moz-box-align: center;/*旧版本*/
-ms-flex-align: center;/*混合版本*/
-webkit-align-items: center;/*新版本*/
align-items: center;/*新版本*/
}
效果图:
3、vertical-align:middle +display:table-cell 使文字垂直居中
css 垂直居中.box {
width: 300px;
height: 300px;
background: #ddd;
vertical-align:middle;
display:table-cell;
}
效果图:
说明:vertical-align:middle +display:table-cell能够使单行文字、多行文字都居中。但是因为 table-cell 是 inline 类型,所以会导致原来的块级元素每个 div 一行移动到了同一行。如果需要分列两行,需要在外面额外添加容器对位置进行控制。