网页之文本溢出显示省略号

1、单行文本溢出显示省略号的css写法

1 overflow:hidden;
2 text-overflow:ellipsis;
3 white-space:nowrap;/*不换行*/

2、多行文本显示省略号

  这里根据应用场景来实现

1)Webkit浏览器或移动端页面

  可以使用webkit的私有属性:-webkit-line-clamp(这个属性不属于css规范),该属性用来显示块元素显示的文本行数。要实现该效果,需要组合其他的Webkit属性。

常见结合的属性: 

  • display: -webkit-box; 必须结合的属性 ,将对象作为弹性伸缩盒子模型显示 。
  • -webkit-box-orient 必须结合的属性 ,设置或检索伸缩盒对象的子元素的排列方式 。
  • text-overflow: ellipsis;,可以用来多行文本的情况下,用省略号“…”隐藏超出范围的文本

例如:

 1 <!DOCTYPE html>
 2 <html>
 3 <head lang="en">
 4     <meta charset="UTF-8">
 5     <title>多行文字溢出省略</title>
 6     <style>
 7         .text-contorl{
 8             display: -webkit-box;
 9             -webkit-box-orient:vertical;
10             -webkit-line-clamp:3;/*显示3行文字*/
11             text-overflow: ellipsis;
12             font-size: 16px;
13             border: 1px solid #ccc;
14             width: 500px;
15             max-height: 300px;
16             overflow: hidden;
17         }
18     </style>
19 </head>
20 <body>
21 <p class="text-contorl">
22     摘要: 之前公司是用flash做的这个网站,现在因为访问速度过慢或者别的原因,由我来用html5重新写过,排版布局和之前的都是一样的。网页总体需要实现以下功能:(1)背景图片轮播(2)文字动画的实现(3)导航条动画效果(4)设计图片的展示效果(不知道怎么写,其实我还没弄明白它的实现原理,差不多就是图片的无缝
23 </p>
24 </body>
25 </html>

运行效果

  2)跨浏览器兼容方案

比较靠谱的做法就是设置相对定位的容器高度,用包含省略号(...)的元素模拟实现

例如:

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>多行文字溢出省略</title>
    <style>
        .text-contorl{
            position: relative;
           line-height: 1.4em;
            height: 3.2em;
            overflow: hidden;
        }
        .text-contorl:after{
            content: "...";
            font-weight: bold;
            bottom: 0;
            right: 0;
            padding: 0;

        }
    </style>
</head>
<body>
<p class="text-contorl">
    摘要: 之前公司是用flash做的这个网站,现在因为访问速度过慢或者别的原因,由我来用html5重新写过4)设计图片的展示效果(不知道怎么写,其实我还没弄明白它的实现原理,差不多就是图片的无缝滚动。
</p>
</body>
</html>

运行效果

这里需要注意的是:

  • height的高度需要设置 正好是line-height的3倍(经过测试发现,如果height的值设置过小,省略号没有显示,所以可能需要按需调整)
  • 结束的省略好用了半透明的png做了减淡的效果,或者设置背景颜色;
  • IE6-7不显示content内容,所以要兼容IE6-7可以是在内容中加入一个标签,比如用<span class="line-clamp">...</span>去模拟;
  • 要支持IE8,需要将::after替换成:after

参考来自:http://www.css88.com/archives/5206

时间: 2024-08-11 03:37:57

网页之文本溢出显示省略号的相关文章

CSS换行文本溢出显示省略号

现代浏览器中使用css可以实现文本溢出,使用 text-overflow: ellipsis;在有些场景下没有效果,这个时候你需要检查应用的场景是是否是块元素,是否有确切的width. 如果是行内元素则需要使用display设置为inline-block; 下面是对a,span等行内元素的使用CSS换行文本溢出显示省略号的比较准确的用法: a,span { overflow: hidden; text-align: center; text-overflow: ellipsis; white-s

单行文本溢出显示省略号.多行文本溢出显示省略号

单行文本溢出显示省略号 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatib

浅谈移动端过长文本溢出显示省略号的实现方案

本文首发于 vivo互联网技术 微信公众号? 链接: https://mp.weixin.qq.com/s/39NCyZvm8EYiJ-pEEtjxGw 作者:何彦军 目前在移动端开发的展示界面中,如果一段文本的数量过长,受限于屏幕的宽高等因素,有可能不能完全显示,这个时候就会把溢出的文本显示成省略号. 最近就亲身经历了一系列类似的需求,于是这里做个总结和记录. 首先一个最基本的需求就是当文本超过一行最大宽度时,超出的部分变为省略号,如下图所示. 这个功能比较基础,只用css就可以实现,如下图所

HTML元素文本溢出显示省略号(...)

一 单行文本 overflow: hidden; text-overflow: ellipsis; white-space: nowrap; overflow 属性规定当内容溢出元素框时发生的事情. visible 默认值.内容不会被修剪,会呈现在元素框之外. hidden 内容会被修剪,并且其余内容是不可见的. scroll 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容. auto 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容. inherit 规定应该从父元素继承 ove

单行文本溢出显示省略号

用css实现:overflow: hidden;//影藏溢出部分 text-overflow:ellipsis;//显示省略号 white-space: nowrap;//单行文本不换行 原文地址:https://www.cnblogs.com/wangjianping123/p/8900669.html

前端面试题-文本溢出显示省略号(...)

一.文本溢出隐藏 如下图所示,我们需要对溢出文本进行"..."显示的操作,单行多行的情况都有(具体几行得看设计的心情) 二.单行文本溢出隐藏 <style type="text/css"> .text { overflow: hidden; text-overflow:ellipsis; white-space: nowrap; } </style> 1. 注意 以上设置是单行文本溢出隐藏的3个必须CSS属性,缺一不可. 2. 说明 over

长文本溢出显示省略号(…) text-overflow: ellipsis

text-overflow 属性规定当文本溢出包含元素时发生的事情. 默认值: clip 继承性: no 版本: CSS3 JavaScript 语法: object .style.textOverflow="ellipsis" 语法: text-overflow: clip|ellipsis| string ; 值 描述   clip 修剪文本. ellipsis 显示省略符号来代表被修剪的文本. string 使用给定的字符串来代表被修剪的文本. 这里主要说说 text-overf

小程序文本溢出显示省略号(单行/多行)

1.单行:外部容器应加overflow: hidden;否则不显示省略号 .text { font-size: 38rpx; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } 2.多行 .text { font-size: 38rpx; line-height: 38rpx; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; word-

文本溢出显示省略号

width :;必须结合的属性display:-webkit-box;必须结合的属性 ,将对象作为弹性伸缩盒子模型显示 .overflow:hidden;必须结合的属性text-overflow:ellipsis;可以用来多行文本的情况下,用省略号"-"隐藏超出范围的文本 .-webkit-line-clamp:2; //控制..显示在第几行-webkit-box-orient:vertical;必须结合的属性 ,设置或检索伸缩盒对象的子元素的排列方式 .white-space:now