为什么这么难:
DIV
,包含多行文字以下 JSFiddle 会显示演示。
问题:
.chrome
css)
示例:
.truncate {
border-width: 1px;
border-style: solid;
border-color: #aaaaaa;
padding: 10px;
margin-bottom: 10px;
width: 260px;
overflow: hidden;
display: block;
box-sizing: border-box;
-moz-box-sizing: border-box;
}
.truncate.ellipsis {
height: 50px;
text-overflow: ellipsis;
}
.truncate.ellipsis.chrome {
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}

<div class="truncate">
No truncating at all, height adjusts to text: abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk
</div>
<div class="truncate ellipsis">
Truncating at 50px height: abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk
</div>
<div class="truncate ellipsis chrome">
Truncating at 50px height: abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk abcdefghijk
</div>
&#13;
答案 0 :(得分:1)
目前没有跨浏览器方式来执行此操作。也就是说,您可以尝试一些方法:
:after
伪元素并将其绝对放置在DIV的右下角最后一个例子:
HTML:
<div class="ellipsis-div">
<p>Long text Cras justo odio, dapibus ac facilisis in, egestas eget quam. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit.<p>
</div>
CSS:
.ellipsis-div {
position: relative;
width: 150px;
height: 150px;
overflow: hidden;
}
.ellipsis-div:after {
position: absolute;
display: block;
content: "...";
bottom: 0;
right: 0;
background-color: white;
}
您需要根据DIV的行高等调整:after
元素的位置...
答案 1 :(得分:-2)
show ...(省略号)适用于Chrome,Firefox,IE等。
.truncate {
width:240px;
overflow:hidden;
text-overflow:ellipsis;
white-space:nowrap;
}