【CSS基础】文字内容溢出处理

2021-03-30  本文已影响0人  今夜相思又几许

前言

前端开发的时候,经常会遇到需要一行文本显示或者多行文本显示,这种实现方法使用js也可以做到,但是无疑增加了开发成本,能用css实现的效果,就当然不会再去使用复杂的js进行计算了。

解决方法

原文字展示效果


全部文字展示效果

一、单行溢出处理

css样式

      .single_line {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
      }

html

<h4>2. 单行溢出</h4>
<div class="container single_line">
为推动湖北企业复工复产,助力湖北地区经济快速复苏,
百度打造12小时直播, 以“宝藏湖北”为核心,选取9个城市9个主人公,带出湖北不止有美食,
还有更多美好值得关注的核心信息。 2020年5月27日,百度APP12小时慢直播。
带你探索,宝藏湖北和湖北好物背后的故事。
</div>

效果


二、多行溢出处理

css样式

      .multiple_line {
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        overflow: hidden;
      }

html

<h4>3. 多行溢出 (限制3行)</h4>
<div class="container multiple_line">
为推动湖北企业复工复产,助力湖北地区经济快速复苏,
百度打造12小时直播, 以“宝藏湖北”为核心,选取9个城市9个主人公,带出湖北不止有美食,
还有更多美好值得关注的核心信息。 2020年5月27日,百度APP12小时慢直播。
带你探索,宝藏湖北和湖北好物背后的故事。
</div>

效果


注意:仅适用于webkit内核的浏览器,如chrome,android手机浏览器

三、多行溢出兼容

由于方法二存在兼容性问题,所以又出现一种兼容的解决方案,主要是使用伪元素+定位的方式,相对较为复杂一点

css

      .multiple_line_compat::after {
        content: '...';
        position: absolute;
        line-height: 20px;
        height: 20px;
        right: 10px;
        bottom: 0;
        background-color: #fff;
      }

html

<h4>4. 解决多行兼容问题</h4>
<div class="container multiple_line_compat">
为推动湖北企业复工复产,助力湖北地区经济快速复苏,
百度打造12小时直播, 以“宝藏湖北”为核心,
选取9个城市9个主人公,带出湖北不止有美食,
还有更多美好值得关注的核心信息。
 2020年5月27日,百度APP12小时慢直播。
带你探索,宝藏湖北和湖北好物背后的故事。
</div>

效果


上一篇下一篇

猜你喜欢

热点阅读