多行文本垂直居中
方式一:display:table;
此方法不兼容ie6,7。
父盒子设置:display:table;
子盒子设置:display:table-cell;vertical-align:middle;
方式二:
此方法可兼容ie6,7,但父盒子高度固定。
父盒子设置固定宽高、line-height:父盒子高;
子盒子设置display:inline-block;vertical-align:middle;line-height:1.2;//覆盖父盒子line-height
原理:子盒子设置display:inline-block转行块元素,当作一行,通过父盒子的line-height属性达到居中效果。
例子:
效果:
html结构:
方式一://**为作用代码
li {
padding-left: 40px;
float: left;
width: 305px;
height: 47px;
padding-top: 16px;
padding-bottom: 19px;
margin: 17px 0;
font-size: 22px;
line-height: 1;
display: table;//***
}
li p.fl {
vertical-align: middle;//***
display: table-cell;//***
float: none;//浮动会强行转换为块元素, 导致display: table-cell失效
}
方式二:
.zjjdwgscx li {
padding-left: 40px;
float: left;
width: 305px;
height: 47px;
padding-top: 16px;
padding-bottom: 19px;
margin: 17px 0;
font-size: 22px;
line-height: 47px;//****
}
li p.fl {
vertical-align: middle;//***
display: inline-block;///****
float: none;//***
line-height: 1.2;//***
width: 220px;
}