最近官网上有一个小需求html设置文字居中,多行文本在一个区域内垂直居中,如右图所示:
需要让文字垂直居中右侧html设置文字居中,可以通过网上查找资料使用display:table来实现。
请参阅这篇博文;
这篇博文寓意的是垂直居中问题,分为单行文本垂直居中和多行文本垂直居中。
1.通过line-height样式可以轻松实现line-line文本。
2、多行文本垂直居中可以分为两种情况,一种是父元素高度不固定,另一种是父元素高度固定。
2.1 如果父元素的高度不固定,可以使用padding样式来解决。 详细内容可以参考之前的博文:
2.2 当父元素的高度固定时,这是目前的要求。 这就是我解决问题的方法
html部分
心聆教育团队始建于2003年,是一家专注于青少年心理健康、学习能力提升、素质化家庭教育、中小学教育教学改革、
教师培训及跨学科素养课程研发等方面的专业咨询服务企业。经过多年的理论准备和实践探索,于2015年成立了以
文化创意为引领,以认知心理技术,人工智能和教育新文化为手段的教育科技企业——北京心聆教育科技有限公司。
在html部分,可以看到有两个divcss部分,如下:
.video_text{
width: 40%;
height: 400px;
color: #666666;
font-family: "微软雅黑";
font-weight: bold;
text-align: left;
text-indent: 2em;
line-height: 24px;
float: right;
border: 1px solid blue;
display: table;
}
.text_middle{
display: table-cell;
vertical-align: middle;
}
最重要的是设置最里面div的样式:display:table
外层div设置样式:display:table-cell;vertical-align:middle。
如果没有上面两句:display:table和display:table-cell前面的vertical-align:middle不会生效。
通过这个反例,你就会知道当遇到垂直居中的多行文本时该怎么办。
从别人开始的方法是这篇博文:
在这里我要感谢这篇博文的楼主。
没有小溪的积累,就没有江河大海;没有小溪的积累,就没有江河大海;
不积步,无故行千里。