多行文本省略号
单行文本省略号
css 代码:
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
多行文本省略
常见结合属性:
display: -webkit-box;
必须结合的属性 ,将对象作为弹性伸缩盒子模型显示 。-webkit-box-orient
必须结合的属性 ,设置或检索伸缩盒对象的子元素的排列方式 。text-overflow: ellipsis;
,可以用来多行文本的情况下,用省略号“…”隐藏超出范围的文本
css 代码:
- overflow : hidden;
- text-overflow: ellipsis;
- display: -webkit-box;
- -webkit-line-clamp: 2;//行数,2行
- -webkit-box-orient: vertical;
-
跨浏览器兼容的方案
比较靠谱简单的做法就是设置相对定位的容器高度,用包含省略号(…)的元素模拟实现;
-
css 代码:
- p {
- position:relative;
- line-height:1.4em;
- /* 3 times the line-height to show 3 lines */
- height:4.2em;
- overflow:hidden;
- }
- p::after {
- content:"...";
- font-weight:bold;
- position:absolute;
- bottom:0;
- right:0;
- padding:0 20px 1px 45px;
- background:url(http://newimg88.b0.upaiyun.com/newimg88/2014/09/ellipsis_bg.png) repeat-y;
- }
-
这里注意几点:
- height高度真好是
line-height
的3倍; - 结束的省略好用了半透明的png做了减淡的效果,或者设置背景颜色;
- IE6-7不显示
content
内容,所以要兼容IE6-7可以是在内容中加入一个标签,比如用<span class="line-clamp">...</span>
去模拟; - 要支持IE8,需要将
::after
替换成:after
;
- height高度真好是