【问题标题】:How to avoid line breaks inside `->` operator in `<code>` blocks?如何避免 `<code>` 块中的 `->` 运算符内的换行符?
【发布时间】:2014-07-28 21:00:27
【问题描述】:

我有一个 large HTML document 包含 C++ 内联 &lt;code&gt; 序列,如 foo-&gt;bar。因为连字符经常被用来引起换行,这有时会导致如下输出:

废话foo-
&gt;bar废话

这是不可取的。

  • - (U+002D) 替换为(U+2011;不间断连字符)是不可接受的,因为它会中断在常用浏览器中搜索-&gt;
  • 使用 white-space:nowrap 设置 &lt;code&gt; 元素的样式是不可取的,因为某些内联代码段足够长,它们确实应该换行。
  • 使用&lt;span style="white-space:nowrap"&gt;(或&lt;nobr&gt;)手动设置每个-&gt; 运算符的样式是不可接受的,因为编辑负担过重,但可以编写脚本来执行此操作。

是否有一种声明方式来指定 -&gt; 内部不是换行的好地方?

(这个问题实际上不是How can I use CSS to preserve line breaks in an HTML <code> block? 的重复:这个问题询问如何避免 换行符,而该问题询问如何创建它们。)

【问题讨论】:

  • 搜索-&gt; 真的很认真吗?我从来没有搜索过这样的东西,只有关键字。
  • 似乎没有满足您所有条件的解决方案。见stackoverflow.com/questions/7691569/…
  • @King King:我有好几次不得不在自己的代码中搜索foo-&gt;bar。我不认为他只是指单独搜索 -&gt; 运算符。

标签: html css line-breaks


【解决方案1】:

目前还没有 css 声明方式。据我所知,没有定义的字典格式可以与 hyphenate-resource(或@hyphenate-resource)一起使用或广泛支持它,即使使用供应商特定的字典...

使用 span 并按照您的指示编写脚本:但可以编写脚本来执行此操作

这不是一个完美的解决方案,但它满足您的所有标准并且是跨浏览器

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多