Подтвердить что ты не робот

Обработка неиспользуемого пространства: <p>&nbsp;</p> vs. <p></p>

&nbsp; - это не разрывное пространство, представляющее пустое пространство, в котором не происходит разрыва строки.

Если я использую

<p>&nbsp;</p>

У меня есть пробел между двумя проходами (большой разрыв). Если я использую

<p> </p>

У меня есть только новая линия между двумя проходами (без перерыва). Почему?

4b9b3361

Ответ 1

В HTML элементы, содержащие ничего, кроме обычных пробельных символов, считаются пустыми. Абзац, содержащий только нормальный пробел, будет иметь нулевую высоту. Неразрывное пространство - это особый вид символа пробела, который не считается несущественным, поэтому его можно использовать как содержимое для непустого абзаца.

Даже если вы рассматриваете поля CSS в параграфах, поскольку "пустой" абзац имеет нулевую высоту, его вертикальные поля будут collapse. Это приводит к тому, что он не имеет высоты и не имеет полей, создавая впечатление, будто он никогда не был там.

Ответ 2

Как об обходном пути? В моем случае я взял значение textarea в переменной jQuery и изменил все "<p>&nbsp" на <p class="clear"> и очистил класс, чтобы иметь определенную высоту и маржу, так как в следующем примере:

JQuery

tinyMCE.triggerSave();
var val = $('textarea').val();
val = val.replace(/<p>&nbsp/g, '<p class="clear">');

Затем val сохраняется в базу данных с новым значением val.

CSS

p.clear{height: 2px; margin-bottom: 3px;}

Вы можете отрегулировать высоту и запас по вашему желанию. А так как "p" - это элемент display: block. он должен дать вам ожидаемый результат.

Надеюсь, что это поможет!

Ответ 3

Если я понимаю вашу проблему, это должно работать

& emsp - пространство em; это должно быть очень широкое пространство, как правило, четыре реальных пространства. & ensp - пространство en; это должно быть несколько широкое пространство, примерно два регулярных пространства. & thinsp - это будет узкое пространство, еще более узкое, чем регулярное пространство.

Источники: http://hea-www.harvard.edu/~fine/Tech/html-sentences.html