在HTML中,是否可以插入换行提示?

在HTML中,是否可以插入换行提示?,html,word-wrap,soft-hyphen,wbr,Html,Word Wrap,Soft Hyphen,Wbr,想象一下,我在一个DIV中有一个长的、多单词的文本行: 你好,亲爱的顾客。请看一下我们的报价 DIV具有动态宽度。我想对上面的文字进行换行。当前,换行发生在单词边界上,该边界使第一行的长度最大化: |-DIV WIDTH------------------------------------| Hello there, dear customer. Please have a look at our offer. 我希望包装发生在句子的边界上。然而,如果没有包装是必要的,我想保留作为一个线 为

想象一下,我在一个DIV中有一个长的、多单词的文本行:

你好,亲爱的顾客。请看一下我们的报价

DIV具有动态宽度。我想对上面的文字进行换行。当前,换行发生在单词边界上,该边界使第一行的长度最大化:

|-DIV WIDTH------------------------------------|
Hello there, dear customer. Please have a look
at our offer.
我希望包装发生在句子的边界上。然而,如果没有包装是必要的,我想保留作为一个线

为了说明我的观点,请查看不同的DIV宽度以及我希望文本如何包装:

|-DIV WIDTH--------------------------------------------------------|
Hello there, dear customer. Please have a look at our offer.
|-DIV WIDTH-----------------------------------|
Hello there, dear customer. 
Please have a look at our offer.
|-DIV WIDTH--------|
Hello there, dear 
customer. 
Please have a look
at our offer.
对于单词,您可以使用软连字符,以便在建议的音节边界上进行单词换行。如果不需要包装,则
­保持不可见。如果需要包装,则
­是它发生的地方:

magnifi­cently

有没有类似的方法来暗示HTML中的单词包装?

不太准确,但很接近:


简而言之,您应该设置
空白:nowrap用于文本容器,并使用
根据需要在单词之间插入分隔符。

使用
­
在单词中或单词之间,因为
不会引入连字符

另见:


当不允许换行时,在单词之间使用无中断空格U+00A0(或
,如果无法方便地输入字符),否则使用正常空格

当单词包含连字符“-”和一些其他字符(如括号)时,这将不起作用,因为一些浏览器将它们视为允许在它们之后换行。请参阅一篇长篇论文,包括处理这些问题的各种技巧。但是,如果您的单词只有普通标点符号,没有连字符,那么您应该可以使用简单的方法。

元素
通常有效,但并不总是有效。当设计一个静态登录页面时,它们尤其有问题,(a)必须在各种屏幕和浏览器上工作,(b)必须看起来很好

在这种情况下,我希望在各种不同的屏幕分辨率下控制换行提示。为此,我使用

标记和css。如果它变得复杂,可能会变得一团糟,但我发现它在一定程度上起作用。例如:

<p class='break-hints'>
Hello there, dear customer. <br class='break-big'>
Please have a look <br class='break-small'> at our offer.
</p>

我也有同样的问题。我的文本如下所示:

助理某物/任何东西
/
字符后面打断它确实有助于提高可读性

在我的例子中,我通过使用内联块(现在
inline flow root
显然)元素包装所需的“较低换行优先级”块来解决这个问题:

助理某物/任何东西
有关结果,请参见代码段

.d{
边缘:1米;
}
#b跨度{
显示:内联块;
}
助理某物/任何东西

助手某物/任何东西Pabulum Navigation
+1:请下次提供您的代码的简短摘要,因为您还提供了
作为可能的解决方案。我注意到,Gmail等Google Web应用程序甚至在文字中使用
p.break-hints br {
  display: none;
}

@media only screen and (max-width: 300px) { 
  p.break-hints br.break-small {
    display: inline;
  }
}

p.break-hints br.break-big {
  display: inline;
}