在开发中我们经常会遇到这种布局,要求文字垂直居中,且超出使用省略号
说到垂直居中,兼容性最好的就是flex
布局,但在flex
布局下出现了text-overflow失效的情况
实例代码
<div class="wrapper"> <div class="flex item">hahhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh</div> </div>
.flex{ display: flex; align-items: center; } .item{ height: 40px; background-color: bisque; overflow: hidden; text-overflow: ellipsis; }
出现了如下效果,我们可以看出over-flow
属性是生效的,而text-overflow
却失效了
解决方案
方案一
在文本外面再多包装一层div
元素
<div class="wrapper"> <div class="flex item"> <div class="item-con">hahhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh</div> </div> </div>
.flex{ display: flex; align-items: center; } .item{ height: 40px; background-color: bisque; } .item-con{ overflow: hidden; text-overflow: ellipsis; }