巧用flex布局实现左侧文字溢出省略,右侧文字自适应。

想要实现一个左侧文字可以根据文字长短自动调整宽度,当一行显示不下时,不挤压右侧文字空间,左侧文字溢出省略。同理当右侧文字变长的时候,右侧文字全显示,左侧文字被挤压后溢出省略的效果。

我说的可能不是很清楚,让我们看看效果图吧。

1.右侧文字是多少就是多宽,左侧默认占据剩余的所有空间。
图片描述

2.右侧文字是多少就是多宽,和1一样。左侧文字很长很长溢出省略。
图片描述

3.左侧文字和2一样,右侧文字给他加了两个right。
图片描述

下面上样式:

.footer {
  width: 300px;
  height: 20px;
  display: flex;
  overflow: hidden;
}
.left {
  background: #3cc8b4;
  flex: 1 1 auto;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 50px;
}
.right {
  background: #9bc;
  max-width: 250px;
}
.right-ellipsis {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

<div class="footer">
   <div class="left">
     leftleftleftleftleftleftleftleftleftleftleftleftleft
  </div>
  <div class="right">
    <div class="right-ellipsis">
      rightrightrightrightrightrightrightrightright
    </div>
  </div>
</div>

代码中多加了max-width、min-width和叫right-ellipsis的div。来达到如下效果:

图片描述

大家根据需要可以实现不同需求的效果了。设计需求总结:左侧宽度自动增长,右侧宽度自动增长并且不可溢出省略。当左侧文字长度超出的时候,左侧文字溢出省略。效果如下:

图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值