Аналог оператора C# \n для строки в HTML не отрабатывает

Сайт на Django 3.2, Visual Studio 2019. Необходимо перенести текст описания ссылки - текстовой строки в коде HTML. Существуют специальные коды HTML &#10 ; &#13 ; для окончания строки и перевода каретки. Их применение не даёт нужного результата. < p >, < br >, < div > - действуют за рамками строки. Потому создаются две разные ссылки с одинаковым содержанием, что нежелательно (прописано поведение при :hover). Т.е. необходим аналог "\n" для языков C#/C++/C, который обрабатывается внутри строки в коде HTML.

{% extends "/layout.html" %}<!--♕-->{% block content %}<div class="Jambotron">
<h1>Добро пожаловать!</h1>
<p class="lead">Text1!&#10;&#13;Text2.</p>
<a href="link">Text3.&#10;&#13;Text4.</a></div>{% endblock %}

Пример: cпец коды не отработали, как задумывалось

Пример: cпец коды не отработали, как задумывалось


Ответы (1 шт):

Автор решения: Rattlefire

В HTML несколько пробелов по умолчанию сворачиваются в один пробел. Это отличная "фича", так как она позволяет вам писать разметку с удобочитаемыми отступами и т. д.

Однако вы можете управлять этим поведением с помощью свойства CSS https://developer.mozilla.org/en-US/docs/Web/CSS/white-space

Для сохранения специальных пробелов вы можете использовать white-space: normal;

p {
white-space: normal;
}

a {
white-space: normal;
}

После дополнения к стилю - спец коды начинают работать

<p class="lead">Text1!&#10;&#13;Text2.</p>
<a href="link">Text3.&#10;&#13;Text4.</a>

(Спасибо lupz)

→ Ссылка