可选的换行符HTML实体,始终不可见

问题描述 投票:39回答:3

我想要一个可选的换行符,它总是不可见的,与word-wrap: break-word; CSS样式一起使用。

以下是一些细节。我的目标是在合理的地方拆分长链接。这些角色是一个很好的起点:-._/\。这不是特定于Rails的问题,但我想分享一些我现在正在使用的代码:

module ApplicationHelper
  def with_optional_line_breaks(text)
    text.gsub(%r{([-._/\\])}, '\1­')
  end
end

这是上面代码的问题:当­生效时(在表格中:word-wrap: break-word;),­显示为-。我不想看到-;我想要一个没有显示任何角色的换行符。


html line-breaks html-entities
3个回答
73
投票

​是称为零宽度空间(ZWSP)的unicode字符的HTML实体。

“在HTML页面中,这个空间可以用作长字中的潜在换行符,作为<wbr>标签的替代品。” - Zero-width space - Wikipedia

<wbr>所述,Aaron's answer标签也有效。我认为我喜欢这个HTML实体而不是标签,因为实体看起来更简单:unicode处理它,而不是Web浏览器。


6
投票

<wbr>看起来像它做你想要的,但它看起来像它的支持,而&shy;就此而言,是very inconsistent。所以不幸的是,可能没有一种特别好的方法来做你想要的。


3
投票

我将在2019年将其作为答案发布,尽管它完全从本页的其他文章中提取其内容:使用<wbr>。它适用于允许包装长URL,因此不会让它们脱离内容框。根据caniuse.com以及我自己在Chrome和Firefox for Android中的快速测试,能够将您显示的链接粘贴到Web浏览器中的用户确实很重要,并且支持<wbr>在现代浏览器中很有用。我用正斜杠和WBR替换了正斜杠,现在URL很好地包装了。

© www.soinside.com 2019 - 2024. All rights reserved.