CSS-only option
Я считаю, что одним из самых простых вариантов является использование css white-space: pre-line;
В других ответах также упоминается использование пробела, но я думаю, что нужно немного большеинформация:
В большинстве случаев вам, вероятно, следует выбрать pre-line
вместо pre-wrap
.Посмотрите разницу здесь .
Очень важно помнить о white-space
, что вы не должны делать что-то вроде этого:
<p style="white-space: pre-line;">
<%= your.text %>
</p>
Это приведет к дополнительнымпробелы и переносы строк в выводе.Вместо этого перейдите к следующему:
<p style="white-space: pre-line;"><%= your.text %></p>
Альтернатива HTML
Другой способ - заключить текст в теги <pre>
.И последнее замечание о моей опции CSS здесь также верно:
<code><p>
<pre><%= your.text %>
Не отделяйте текст от тегов <pre>
с пробелами или переносами строк.
Заключительные мысли
После небольшого приближения к этому вопросу у меня возникает ощущение, что html-подход считается менее чистым, чем css-подход, и мы должны пойти по-css-way.Однако html-путь кажется более совместимым с браузером (поддерживает устаревшие браузеры, но кого это волнует):
предварительный тег
пробел