css文字上下居中,一行文字居中,两行或多行文字同样居中

附图:

1. 利用Flex布局实现

demo.html

1 <div class="demo demo-flex"><span>孤云将野鹤,岂向人间住。莫买沃洲山,时人已知处。</span></div>

style.css

 1 .demo {
 2         width: 120px;
 3         height: 200px;
 4         border: 1px solid red;
 5         /*line-height: 25px;*/
 6         font-size: 12px;
 7       }
 8       .demo-flex{
 9         display: flex;
10         align-items: center;
11         justify-content: center;
12         flex-direction: column;
13       }

2. 利用属性 line-height

<div id="box">
  <span>文本上下居中</span>
</div>

style.css

1 #box {
2       width: 200px;
3       height: 120px;
4       border: 1px solid red;
5       text-align: center;
6  }
7 #box span {
8       line-height: 120px;
9 }

注意: 这个方法只适用于 单行文本

3. 利用position 定位来实现

 html

1 <div class="box">
2     <a class="remind">春宵一刻值千金,花有清香月有阴。歌管楼台声细细,秋千院落夜沉沉。</a>
4 </div>

css

 1 .box{
 2   width: 500px;
 3 
 4   height: 500px;
 5 
 6   border: 1px solid red;
 7 
 8   text-align: center;
 9 }
10 
11 定位方法 (一)
12 
13 .remind {
14   position: absolute;
15   top: 50%;
16   left: 50%;
17   transform: translate(-50%, -50%);
18 }
19 
20 定位方法 (二)
21 
22 .remind {
23   position: absolute;
24   top: 0;
25   left: 0;
26   right: 0;
27   bottom: 0;
28   margin: auto 0;
29   height: 0;
30 }

4. 利用 vertical-align 来实现

即在父容器内放一个100%高度的伪元素,让文本和伪元素垂直对齐,从而达到垂直居中的目的。

1     <div id="box">
2       <span>两个黄鹂鸣翠柳</span>
3     </div>

css

 1 #box {
 2   width: 200px;
 3   height: 120px;
 4   border: 1px solid red;
 5   text-align: center;
 6    7 }
 8 #box::before {    //    伪元素
 9   content: " ";
10   display: inline-block;
11   height: 100%;
12   width: 1%;
13   vertical-align: middle;
14 }
15 #box span {
16   vertical-align: middle;
17 }

 

5. 利用 Flex布局 来实现

1 <div id="box">
2    <span>两个黄鹂鸣翠柳</span>
3 </div>

css

1 #box {
2         width: 200px;
3         height: 120px;
4         border: 1px solid red;
5         /*text-align: center;*/
6         display: flex;
7         align-items: center;
8         justify-content: center;
9       }

 

posted @ 2018-06-04 11:49  echo丶若梦  阅读(51461)  评论(5编辑  收藏  举报