在我的 HTML 中,我有一个很长的单词,并且我试图仅在没有足够空间的情况下强制一个特定的断点。我需要的是一种打破条件的占位符。我怎样才能做到这一点?
5 回答
也许Unicode零宽度空间会有所帮助:http ://www.fileformat.info/info/unicode/char/200b/index.htm
​
例如
,HTML 实体over​flow
会在“over”和“flow”之间断开单词,仅当整个单词不适合时。
标签<wbr>
(用于 Word BReak)会做你想做的事。
我将发布另一种选择,因为那是我第一次发现这个问题时真正想要的。
您应该使用Soft hyphen而不是Zero-width space。
从软连字符:
软连字符或音节连字符,缩写为SHY,是在某些编码字符集中保留的代码点,用于通过插入可见连字符来跨行分隔单词。
此外,将其与软连字符的“零宽度空间”进行比较:
它用作一个不可见的标记,用于指定文本中允许使用连字符的位置,而不会在文本重新排列时在不方便的位置强制换行。它只有在行尾换行后才可见。软连字符的 Unicode 语义和 HTML 实现在许多方面类似于 Unicode 的零宽度空间,除了软连字符会在不可见时保留两边字符的字距。另一方面,零宽度空间不会,因为即使未渲染它也被视为可见字符,因此具有自己的字距调整指标。
您还可以查看 wikipedia 文章,其中包含在窗口调整大小时更改的示例文本。
br 的反义词:
<nobr> </nobr>
问候
Microsoft CSS 规则 "word-wrap:word-break" 应该做你想做的事,大多数旧浏览器都支持
https://developer.mozilla.org/en-US/docs/CSS/word-wrap
http://msdn.microsoft.com/en-us/library/ie/ms531186(v=vs.85).aspx
现在还有一个 WC3 版本 - “overflow-wrap:break-word;” 正如您在规范中所读到的“出于遗留原因,UA 必须将 'word-wrap' 视为 'overflow-wrap' 属性的替代名称,就好像它是 'overflow-wrap' 的简写。” - 所以你可能想测试你的浏览器集是否真的实现了这个。
http://www.w3.org/TR/css3-text/#overflow-wrap
http://caniuse.com/#search=overflow-wrap
你总是可以安全地使用它并同时使用
p.breaklongwords {
word-wrap:word-break;
overflow-wrap:break-word;
}