html - 文本溢出 : ellipsis doesn't work after line break in Internet Explorer

标签 html css internet-explorer cross-browser

我有一个问题,当有文本被换行符分隔时,text-overflow: ellipsis 在 Internet Explorer 中不起作用。

在 Firefox 和 Chrome 中,两行文本都被省略号截断。在 Internet Explorer 中,第一行被省略号截断,第二行仅在右侧截断。

这是我的代码:

.text-wrapper {
  border: solid 1px #C2C2C2;
  padding:10px;
}
.text-wrapper p{
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
<div class="text-wrapper" style="width:250px;">

    <p>
      This line overflows and gets an ellipsis in any browser. 
      <br/>
      This line overflows and gets an ellipsis in any browser except IE.
    </p>

</div>

最佳答案

text-overflow , 省略号可以应用于单行文本。

必须满足以下 CSS 要求:

  • 必须有一个宽度
  • 必须有 white-space: nowrap
  • 必须有 overflow,其值不是 visible
  • 必须有 display: blockinline-block

看起来 IE 实际上正确地呈现了省略号:第二行不应该有省略号。这使得它实际上是多行的,违反了 nowrap 的意图>,省略号应该失败。

Chrome 和 Firefox 在换行符后呈现省略号的事实可能是他们自己采取的实现差异。

一种解决方法是创建新段落而不是换行符。

对于多行文本上的省略号,请考虑以下选项:

关于html - 文本溢出 : ellipsis doesn't work after line break in Internet Explorer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34774088/

相关文章:

php - 如何将 JSON 放入 PHP 变量中?

css - 如何控制边框底部长度?

css - 如何将此按钮旋转 180°?

html - 修复了容器 div 中的文本滚动

internet-explorer - 是否可以从浏览器运行 VBScript 文件(.vbs)?

javascript - 为什么在 IE 中进行 setInterval div 替换后,我的容器会丢失其内容?

WPF Web 浏览器控件 : What browser does it use?

javascript - 为什么我在 <span> 元素后换行

html - 用内部 CSS 覆盖主要的 Bootstrap 4 颜色

Javascript Only Anchor - 更好地使用跨度?