【问题标题】:CSS property "word-break: break-all" isn't working expectedly with specific characters in ChromeCSS 属性“word-break: break-all”在 Chrome 中的特定字符无法正常工作
【发布时间】:2016-12-26 09:58:59
【问题描述】:

我正在使用“word-break: break-all”在任何字符之间插入中断。
但是,在 Chrome 中,它不能按预期使用特定字符(例如冒号、分号、逗号),如下所示。
(我的codepen在这里:https://codepen.io/yukito/pen/wobZJq

源代码:

<style>
  .test {
    width: 300px;
    word-break: break-all;

    /* cosmetic */
    background-color: red;
    margin-bottom: 5px;
  }
</style>

<div class="test">
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
</div>

<div class="test">
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
</div>

在 FireFox 和 Safari 中,它可以正常工作。

我的问题:
.这是一个错误吗?还是规格?
.如何在 Chrome 中的连续分号之间换行?

谢谢。

更新:

“break-word”考虑到像这支笔这样的单词边界来换行:https://codepen.io/yukito/pen/xRNopJ
我真的想在任何字符之间插入中断而不考虑单词边界。

【问题讨论】:

  • codepen 链接的代码在 Chrome 和 Firefox 上都能正常工作。
  • @aavrug 它在 Opera 中对我不起作用,我在下面发布的解决方案似乎可以解决它。

标签: css google-chrome word-break


【解决方案1】:

使用break-word 属性而不是break-all

看看下面的sn-p:

<style>
  .test {
    width: 300px;
    word-break: break-word;
  
    /* cosmetic */
    background-color: red;
    margin-bottom: 5px;
  }
</style>

<div class="test">
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
</div>

<div class="test">
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
</div>

希望这会有所帮助!

【讨论】:

    【解决方案2】:

    对于webkit浏览器,需要添加:

     .test {
          word-break: break-word;
        }
    

    Demo

    【讨论】:

    • 谢谢。但是,考虑到像这支笔这样的单词边界,“break-word”会换行:codepen.io/yukito/pen/wobZJq。我真的很想在任何字符之间插入中断而不考虑单词边界。
    • 我认为'test'这个词出现在它自己的行上的原因可能是你在它之后添加了一个新行。请参阅此处的第二个框:codepen.io/sol_b/pen/LboKGr -- 还是我误解了你?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-17
    • 2011-03-16
    • 1970-01-01
    • 2015-05-20
    • 1970-01-01
    • 2013-11-02
    相关资源
    最近更新 更多