防止溢出:隐藏在裁剪文本

时间:2017-04-28 15:43:53

标签: css css3 overflow

我有一个重复行(具有不同内容)的表,每个行包含以下相同的单元格:

<td><img src="/images/a_photo.jpg" height="150" width="225"></td>
<td class="right">
<div class="stuff">
<h4>Two or three words</h4><h5>Two or three more words</h5>
<p>Quite alot of words</p>
</div>
<div>
Always a single line of known height
</div>
</td>

(td class =“right”)的高度由第一个(td)中照片的高度设置。这导致(div class =“stuff”)的固定可用高度。但是,(h4)和(h5)给出的空间高度会有所不同,因为有时候会跑到第二行,而其他时候只会跑到(h5)。

我知道我可以通过使行高与可用高度的精确分数来控制(p)的裁剪以仅显示完整的行。但是由于可用高度是可变的,我有时会得到半行文本,看起来很丑陋和错误。

简化的CSS是

h4{font-size:1.5em}
h5{font-size:0.9em}
td.right{overflow:hidden}

有没有办法将(p)限制为整行(垂直),还是我问不可能?

1 个答案:

答案 0 :(得分:0)

我通过另一条路线找到了解决方案。

现在最大的问题是(h4)和(h5)文本延伸到第二行,但第二行有时是(h4)的高度,有时是(h5)的高度。这改变了(p)文本的可用空间大约半行,所以我有时会得到一行文本的上半部分。

我放弃了(h4)并将所有第一部分写入(h5)。这意味着前两行总是相同的高度,然后我可以定制剩余的空间以始终显示(p)文本的完整行。

这仅适用于相当窄的屏幕(平板电脑方向),因此当屏幕宽度低于阈值时,响应式CSS只会将(h4)的高度更改为(h5)。