文本溢出:省略号不起作用

Ran*_*lue 237 html css

这就是我试过的(见这里):

body {
    overflow: hidden;
}

span {
    border: solid 2px blue;
    white-space: nowrap;
    text-overflow: ellipsis;
}
Run Code Online (Sandbox Code Playgroud)

基本上,当窗口变小时,我希望跨度用省略号缩小.我做错了什么?

yun*_*zen 404

你需要有CSS overflow,width,max-width,和display.

http://jsfiddle.net/HerrSerker/kaJ3L/1/

span {
    border: solid 2px blue;
    white-space: nowrap;
    text-overflow: ellipsis;
    width: 100px;
    display: block;
    overflow: hidden
}
Run Code Online (Sandbox Code Playgroud)

附录 如果您想要了解线条夹紧技术(Multiline Overflow Ellipses)的概述,请查看此CSS-Tricks页面:https://css-tricks.com/line-clampin/

  • 很糟糕,你需要`white-space:nowrap;`属性.现在,您只能使用...而不是块文本结束一行文本. (58认同)
  • 白色空间属性是我所缺少的.谢谢. (11认同)
  • 今天,所有主流浏览器都支持省略号:http://caniuse.com/#feat=text-overflow (3认同)
  • @basZero Multiline Ellipsis 不支持单独使用 CSS。你必须采取其他措施 (2认同)
  • 是的,第 256 票赞成。拥有 2 的幂次的点赞数会有一种特定的奖励感…… (2认同)

Zip*_*pyV 41

确保您具有块元素,最大大小并将溢出设置为隐藏.(在IE9和FF 7中测试过)

http://jsfiddle.net/uh9zD/

div {
    border: solid 2px blue;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    width: 50px;
}
Run Code Online (Sandbox Code Playgroud)

  • 看起来像white-space:nowrap属性通常也是必需的,对于任何有空格的东西. (5认同)

Arr*_*xas 17

对于Chrome中的多行使用:

display: inline-block;
overflow: hidden;
text-overflow: ellipsis;
display: -webkit-box;
-webkit-line-clamp: 2; // max nb lines to show
-webkit-box-orient: vertical;
Run Code Online (Sandbox Code Playgroud)

灵感来自youtube ;-)


Ben*_*cot 7

只是给任何可能偶然发现这个问题的人的提示......我的 h2 正在继承

text-rendering: optimizelegibility; 
//Changed to text-rendering: none; for fix
Run Code Online (Sandbox Code Playgroud)

这不允许省略号。显然这很挑剔吧?


Ram*_*asi 7

对于多行

在 chrome 中,如果您需要在多行上应用省略号,则可以应用此 css。

您还可以在 css 中添加宽度以指定特定宽度的元素:

.multi-line-ellipsis {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}
Run Code Online (Sandbox Code Playgroud)
<p class="multi-line-ellipsis">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</p>
Run Code Online (Sandbox Code Playgroud)


aim*_*ano 6

word-wrap: break-word;
Run Code Online (Sandbox Code Playgroud)

这个并且只有这个为我完成了工作

<pre> </pre> 
Run Code Online (Sandbox Code Playgroud)

标签

其他一切都没有做省略号....


Joe*_*oel 5

我在chrome下出现省略号问题。启用空白:nowrap似乎可以解决此问题。

max-width: 95px;
max-height: 20px;
overflow: hidden;
display: inline-block;
text-overflow: ellipsis;
border: solid 1px black;
font-size: 12pt;
text-align: right;
white-space: nowrap;
Run Code Online (Sandbox Code Playgroud)


sha*_*ver 5

无固定宽度

对于我们这些不想使用固定宽度的人来说它也可以使用display: inline-grid. 因此,除了所需的属性之外,您只需添加display

span {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: inline-grid;
}
Run Code Online (Sandbox Code Playgroud)