【发布时间】:2018-08-14 14:19:15
【问题描述】:
这是我修复它的第三个实现(之前用 ul-li 尝试过)。我需要在一行中显示类似下面的内容(必须!),最后一部分,即描述如果较长,则应显示为省略号,但是,CompanyName 应始终显示为完整的。我的容器宽度是 310px。
约束:CompanyName 和 Description 都是动态的,它们必须在包装内,即同一行(宽度:ca. 310px)。描述文本必须使用所有宽度(使用最大宽度或宽度解决此问题时遇到了很大问题)。
它使用 max-width 或 width 工作,但问题是内容是动态的,如果 CompanyName 很短而 Description 很长,反之亦然,那么就会有问题即,描述应该在省略号出现之前到行尾。这就是为什么由于内容的动态特性,我在使用 width 或 max-width 时遇到问题。
- CompanyName: 这家公司做得很好.....
我的代码:
<div id="wrapper">
<div class="bullet">
<span class="classBullet"></span>
</div>
<div class="company">
<span class="spanCompany">Microsoft Long Company:</span>
</div>
<div class="description">
<span class="spanDescription">Windows 10 is a ok operating system with occassional bugs and problems otherwise it is a good OS</span>
</div>
CSS:
div.bullet{
float:left;
display:inline-block;
margin-left:10px;
}
.classBullet:before{
content:"*";
color:black;
}
.company{
float:left;
display:inline-block;
padding-right:5px;
}
.spanCompany{
font-weight:bold;
}
.description{
float:left;
display:inline-block;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
Jsfiddle 链接:link to jsfiddle 你也可以看看我之前在这个 jsfiddle 上的尝试。
【问题讨论】:
-
如果我错了,请纠正我,但您需要做的是切断文本并在超过 310 像素时显示省略号?
-
@Callat 不使用宽度怎么办?
-
我不会使用特定的宽度,我会按字符长度,然后使用 javascript 检查文本长度以及是否超出字符拼接。
-
抱歉,我的第一个实现是使用 JavaScript。我不能使用它:-(