text-overflow:ellipsis
文本溢出显示省略号,通常的搭配用法以下:bash
div{
text-overflow:ellipsis;
overflow:hidden;
white-space: nowrap;
}
复制代码
而想要在必定宽度内显示省略号,必须还有一个固定的宽度,不然元素宽度会扩展至父级元素的宽度。但前不久碰到一个问题,但愿实现以下布局: 布局
<div id="wrap">
<img alt="" id="left" src="img1.jpg">
<div id="right">
<p class="name">昵称</p>
<p class="content">内容显示省略号内容显示省略号内容显示省略号内容显示省略号内容显示省略号内容显示省略号内容显示省略号内容显示省略号内容显示省略号内容显示省略号内容显示省略号内容显示省略号内容显示省略号内容显示省略号内容显示省略号内容显示省略号内容显示省略号内容显示省略号</p>
</div>
</div>
复制代码
#wrap {
display: flex;
border: 1px solid black;
}
#left {
width: 100px;
height: 100px;
margin: 10px;
border: 1px solid #ccc;
}
#right {
flex: 1;
background: yellow;
}
.content {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
background: red;
}
复制代码
这时候表现以下: flex
显然,因为.content设置了white-space:nowrap
;,所以内容就将父元素#right撑开,溢出了#wrap。停一下,想想既然溢出是由于#right被撑开了,那给#right(即.content的父元素)设置overflow:hidden就能够防止.content将#right撑开,应该就能达到效果。试一下,果真达到了预期效果: spa