首页
学习
活动
专区
圈层
工具
发布

css文字省略号

CSS文字省略号基础概念

CSS文字省略号(Text Ellipsis)是一种CSS属性,用于在文本溢出其容器时显示省略号(...),而不是显示整个文本。这在设计中常用于保持布局的一致性和美观性。

相关优势

  1. 简洁的布局:通过使用省略号,可以避免文本溢出容器导致的布局混乱。
  2. 用户体验:用户可以清晰地看到内容被截断,而不是被无序的文本覆盖。
  3. 响应式设计:在移动设备或小屏幕上,省略号可以帮助更好地管理空间。

类型

CSS文字省略号主要通过以下三个属性实现:

  1. text-overflow: ellipsis;:指定当文本溢出时应显示省略号。
  2. white-space: nowrap;:防止文本换行。
  3. overflow: hidden;:隐藏溢出的文本。

应用场景

  • 导航栏:在有限的导航栏空间内显示长标题。
  • 列表项:在列表中显示较长的描述性文本。
  • 搜索结果:在搜索结果中显示较长的标题或描述。

示例代码

代码语言:txt
复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>CSS Text Ellipsis Example</title>
    <style>
        .ellipsis {
            width: 200px;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }
    </style>
</head>
<body>
    <div class="ellipsis">
        This is a very long text that will be truncated with an ellipsis.
    </div>
</body>
</html>

参考链接

常见问题及解决方法

问题:为什么省略号没有显示?

原因:

  1. 容器宽度不够:确保容器的宽度足够小,以便文本能够溢出。
  2. 属性顺序:text-overflow: ellipsis; 必须在 overflow: hidden; 和 white-space: nowrap; 之后设置。

解决方法:

代码语言:txt
复制
.ellipsis {
    width: 200px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

问题:如何实现多行文本省略号?

原因: CSS本身不直接支持多行文本省略号,但可以通过一些技巧实现。

解决方法: 使用伪元素和绝对定位来实现多行文本省略号。

代码语言:txt
复制
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Multi-line Text Ellipsis Example</title>
    <style>
        .ellipsis {
            width: 200px;
            overflow: hidden;
            position: relative;
        }
        .ellipsis::after {
            content: '...';
            position: absolute;
            bottom: 0;
            right: 0;
            background: white;
            padding-left: 4px;
        }
        .ellipsis > span {
            display: block;
            overflow: hidden;
            white-space: nowrap;
        }
    </style>
</head>
<body>
    <div class="ellipsis">
        <span>This is a very long text that will be truncated with an ellipsis.</span>
    </div>
</body>
</html>

总结

CSS文字省略号是一种强大的工具,用于在文本溢出时保持布局的整洁和美观。通过合理使用 text-overflow, white-space, 和 overflow 属性,可以实现单行和多行文本的省略号效果。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

css 控制文字超出部分显示省略号

该文章转自:http://www.daqianduan.com/6179.html 如果实现单行文本的溢出显示省略号同学们应该都知道用text-overflow:ellipsis属性来,当然还需要加宽度...但是这个属性只支持单行文本的溢出显示省略号,如果我们要实现多行文本溢出显示省略号呢。 接下来重点说一说多行文本溢出显示省略号,如下。...适用范围: 因使用了WebKit的CSS扩展属性,该方法适用于WebKit浏览器及移动端; 注: -webkit-line-clamp用来限制在一个块元素显示的文本的行数。 ...适用范围: 该方法适用范围广,但文字未超出行的情况下也会出现省略号,可结合js优化该方法。 注: 将height设置为line-height的整数倍,防止超出的文字露出。...给p::after添加渐变背景可避免文字只显示一半。

2.5K20

CSS控制文字,超出部分显示省略号

但是这个属性只支持单行文本的溢出显示省略号,如果我们要实现多行文本溢出显示省略号呢。 接下来重点说一说多行文本溢出显示省略号,如下。...适用范围: 因使用了WebKit的CSS扩展属性,该方法适用于WebKit浏览器及移动端; 注: -webkit-line-clamp用来限制在一个块元素显示的文本的行数。 ...适用范围: 该方法适用范围广,但文字未超出行的情况下也会出现省略号,可结合js优化该方法。 注: 将height设置为line-height的整数倍,防止超出的文字露出。...给p::after添加渐变背景可避免文字只显示一半。...CSS设置一行文字,超出部分自动隐藏 1 2 3 4 5 6 7 8 9 .textone {         overflow: hidden;         text-overflow: ellipsis

4.1K20
  • 使用代码实现文字在超出内容时显示省略号

    一行超出显示省略 overflow: hidden; white-space: nowrap; text-overflow: ellipsis; 演示文字演示文字演示文字演示文字演示文字演示文字演示文字演示文字演示文字演示文字演示文字演示文字演示文字演示文字演示文字演示文字演示文字...hidden; white-space: nowrap; text-overflow: ellipsis; } ::: 两行(多行)超出显示省略号...-webkit-line-clamp: 2; -webkit-box-orient: vertical; } ::: JS判断是否显示了省略号...有时候我们需要知道是否已经溢出,显示了省略号,可以用到clientHeight和scrollHeight的知识: let cHeight = noWrapDiv.clientHeight; let...sHeight = noWrapDiv.scrollHeight; if (sHeight > cHeight) { console.log("已经溢出显示省略号"); } else {

    2.9K10

    CSS 样式控制溢出的数据 省略号隐藏

    https://blog.csdn.net/u011415782/article/details/79011399 § 背景 近日,在规整界面时,发现有的文字因为长度和行数总是显得不尽如人意,如果考虑到用户在输入文字的随意性因素...,就更需要前端进行文字 显示效果的限制了. ♩ a 标签限制行数 一般是控制a 标签单行显示时,多余的文字以省略号代替 .a-article-recommend{ width:100%;...♪ p 标签限制行数 CSS实现单行、多行文本溢出显示省略号(…) .p-article-abstract{ display: -webkit-box; -webkit-box-orient...可参考:CSS实现文章 ♫ div 限制高度 隐藏溢出的内容 有时因为div中的内容过多,会叠加显示,造成布局的混乱,这种情况下,可以尝试进行下面的限制. .div-article-view{

    1.7K30
    领券