html – 文本溢出省略号不显示某些自定义字体

前端之家收集整理的这篇文章主要介绍了html – 文本溢出省略号不显示某些自定义字体前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使一个隐藏文字的文本框.它工作正常,但有一部分.我在用着
text-overflow: ellipsis;

这应该在我的文本被切掉的地方放置三个点(“…”),但它不会放置三个点,而是放置看起来像三个点的字符(称为“省略号”).

我目前使用的字体没有这个字符,所以它显示一些其他随机字符而不是三个点.

有没有人有一个简单的解决方法(没有JavaScript涉及,只有CSS),同时保持我的字体的文本?

解决方法

完全模仿文本溢出的功能:省略号,而不使用JavaScript,同时仍然有完整的浏览器支持(文本溢出:“…”仅在这篇文章中适用于Firefox 9,并且在任何其他浏览器中完全不可用)是非常困难的(如果不是不可能的话).

我可以想到没有任何“黑客”的唯一解决方案是编辑您的字体文件,为…省略号字符创建一个unicode字符.我在这方面没有任何经验,但这里有一个似乎相当不错的链接http://sourceforge.net/projects/ttfedit/

这里有一些HTML代码

<div id="wrapoff">
  Lorem ipsum dolor sit amet,consectetur adipiscing elit. Pellentesque vehicula,augue id pretium euismod,nisi dolor sodales orci,non porttitor ligula velit ac lorem.
</div>

和一些CSS:

#wrapoff {
  width: 200px;
  border: 2px solid blue;
  white-space: nowrap;
  overflow: hidden;
  position: relative;
}
#wrapoff:after {
  content: "...";
  position: absolute;
  right: 0;
  top: 0;
  background-color: white;
  padding: 0 5px;
}

这会在#wrapoff div的顶部在右上角添加一个伪元素,允许内容像文本溢出:省略号一样工作.这样做的缺点是,“省略号”总是显示在那里,而不管内容是否实际上延伸并溢出.这是无法修复的,因为没有办法使用CSS来确定文本是否溢出页面.

这是一个JSFiddle:

http://jsfiddle.net/ysoxyuje/

边框是向你展示元素本身的大小.

猜你在找的HTML相关文章