2017-08-31 21 views
0

說我有以下字符串:飼養文本:無論換行,空格和長單詞

"This line should always break on newline \n, spaces if it is about to overflow and veryLongLinksThatDoNotFitInsideTheDiv" 

我希望它打破:

,我想:

<div id="log" style="word-break: break-all"></div> 
    <!-- <div id="log" style="word-wrap: break-word"></div> --> 
    <!-- <div id="log" style="white-space: pre-line"></div> --> 
    <!-- <div id="log" style="white-space: pre; word-break: break-all"></div> --> 

但我不能得到所有3(也不4)標準滿足。

小提琴:https://jsfiddle.net/6kq14cfc/

回答

1

您可以使用

<div id="log" style="overflow-wrap: break-word;white-space: pre-wrap;"></div> 

<div id="log" style="word-wrap: break-word;word-break: normal;white-space: pre-wrap;"></div> 
+0

艾米特,謝謝你的回覆。不幸的是,至少在我的小提琴中,建議的解決方案沒有解決換行符「\ n」。它確實滿足其他要求。 –

+0

@ThomasHubregtsen:確認,同時放置兩個\ n。你應該看到額外的換行符。 – Amit

0

我覺得你的答案就在於用 「< BR/>」 取代 「\ n」。 HTML無法識別新行字符 - 它需要代替< br/>標記。

+0

謝謝拉瑪施奈德。然而,「白色空間:前線」確實接受\ n作爲新線。不幸的是,在這種情況下,break這個詞不起作用。 (我把這也放在小提琴展示)。如果可能的話,我不想改變我的服務器發送/執行替換JavaScript中的數據。 –