Page MenuHomePhabricator

Improve line breaking behavior in Firefox and Chrome under complex conditions

Authored by epriestley on May 13 2020, 6:52 PM.



See In some situations, line-break: anywhere produces better behavior than word-break: break-all. It never appears to produce worse behavior.

Test Plan
  • Break behavior changes if a line contains "<span />" elements caused by syntax highlighting. This CSS adjustment only appears to apply to text with internal "<span />" elements.
  • This specifically impacts certain internal breakpoints adjacent to punctuation, so the test case is highly specific. Generic test cases with latin word characters do not evidence any behavioral changes.
  • This change appears to have no impact on Safari, which uses the better behavior in all cases.
  • Before Patch: In Firefox and Chrome, this specific change breaks awkwardly. There is more room for text to fit on the broken line:


firefox-highlight.png (142×631 px, 15 KB)


chrome-highlight.png (128×641 px, 13 KB)

  • After Patch: Firefox and Chrome break the line better. Here's Firefox:

firefox-fixed.png (181×632 px, 16 KB)

  • Additional context:

Safari Behavior (Unchanged)

safari-highlight.png (123×619 px, 13 KB)

Chrome with no highlighting (desirable behavior). Firefox does the same thing.

chrome-no-highlight.png (128×642 px, 12 KB)

Also tested other cases, which seem never-worse in any browser.

anywhere.png (1×1 px, 369 KB)

Diff Detail

rP Phabricator
Lint Not Applicable
Tests Not Applicable

Event Timeline

This revision was not accepted when it landed; it landed in state Needs Review.May 13 2020, 6:54 PM
epriestley requested review of this revision.
This revision was automatically updated to reflect the committed changes.