【问题标题】:text-overflow:ellipsis doesn't work on IE文本溢出:省略号在 IE 上不起作用
【发布时间】:2013-02-02 16:56:53
【问题描述】:

this 页面的左侧边栏中有一些链接被裁剪:

.widget-area .textwidget li {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

在 Firefox/Chrome 中正确显示:

不幸的是 Internet Explorer 8/9/10...:

问题不在于 IE 10 对 text-overflow:ellipsis 的支持。例如 this 也适用于 IE 10!我的实施有什么问题?我还尝试添加 -ms-text-overflow:ellipsis,但没有任何运气。

【问题讨论】:

  • 将显示属性添加到 block..width 为 100%..或您希望拥有的那个..或设置最大宽度..
  • 此实现在 IE 10 上运行的另一个示例:multiformeingegno.it
  • 好的,我现在无法访问 ie css..我稍后会更新我的代码..
  • 这很奇怪,因为 IE 是最早实现 ellipsis 的浏览器,早在 IE5.5 中,所以你会认为他们做对了。
  • 这是一个 PHP 网站。在第一篇文章中提供的链接中查看 HTML 源代码。

标签: internet-explorer overflow css


【解决方案1】:

删除word-wrap: break-word 属性应该会有所帮助。

【讨论】:

  • 因为上面的 CSS 或我的 CSS 中没有,所以这有点令人困惑。添加“自动换行:正常”似乎确实可以解决它。
  • 这对我来说毫无意义,但这是正确的答案。谢谢你。
  • 注意:如果文本前面有<br>,IE11(可能在下面)将无法使用它!
【解决方案2】:

将 width 属性添加到您的 CSS 代码中。这会有所帮助..

【讨论】:

  • 为了什么?李? .widget-area .textwidget ul? textwidget div..?
  • within li place div.. 我的意思是让每个 li 元素都有 div,然后包含您的内容.. 并将宽度或最大宽度应用于您的内部 div(新添加)
  • 现在试过了,但没用。宽度减小(我尝试使用宽度:190px)但链接仍然在 2 行。
  • 将 display: inline-block 属性赋予你的内部 div (div inside li)
【解决方案3】:

对于 IE,您应该添加一些额外的代码..比如更改您的宽度属性..或尝试使用 dotdotdot jquery 插件..这将是一个替代解决方案.. 像这样

http://dotdotdot.frebsite.nl

编辑: 点此链接

Quirksmode textoverflow

告诉你为 IE 设置 width:100%..

【讨论】:

  • 一个不错的解决方案是使用 jQuery 来处理这个小东西?呐。这应该是一个简单的修复,比如将 3 个 CSS 声明移动到容器中......类似的东西!我用谷歌搜索,但似乎找不到任何有趣的东西。
  • 很好的解决方案,因为它的跨浏览器实现..以及良好的演示..最简单的解决方案并不总是最好的..
  • 尝试在 jsfiddle.net/HerrSerker/kaJ3L/1/ 中运行它
猜你喜欢
  • 2013-08-31
  • 2013-08-19
  • 2016-07-15
  • 1970-01-01
  • 1970-01-01
  • 2016-11-12
  • 1970-01-01
  • 2016-03-15
相关资源
最近更新 更多