У коллеги возникла проблема с выравниванием текста на экране, который я завершил.Мне показали проблему на ПК с Win10 с использованием Chrome, и некоторые строки текста выглядели так:
Text line 1.
Text line 2 is much longer and wraps to two lines, but the second line
does not have the whitespace added.
Text line 3 does not wrap, and has the same alignment issue.
Когда я просматривал его на своем Mac с помощью Chrome, я не увидел проблему, поэтому я изобретательновывел это, скорее всего, из-за ошибки Win-Chrome с некоторым классом начальной загрузки и т. д.
Но после копания проблема оказалась в формате содержимого тега <p>
:
<p>Text line 1.</p>
<p>
Text line 2 is much longer and wraps to two lines, but the second line does not have the whitespace added.
</p>
<p>
Text line 3 does not wrap, and has the whitespace.
</p>
Мне известно, что символ новой строки в середине строки будет выводить пробел в большинстве браузеров (слава богу), так что вам не нужно добавлять пробел / ведущий при написании многострочного контента.Однако я никогда не видел, чтобы начальная возвращаемая причина приводила к пробелам.
Дело в том, что таким образом может быть отформатировано много кода, и клиент обнаружит проблемы с выравниванием, как они тестируют в Win10. Почему это происходит, и, скорее всего, это ошибка Win / Chrome? Это сознательный выбор некоторых разработчиков браузеров?
Ссылки будут высоко оценены, но я лично не смог найтивсе, что связано с SO, CSS-хитростями или документацией браузера Chrome.
РЕДАКТИРОВАТЬ: Другой коллега подтвердил, что добавление <br />
в теге <p>
(без пробелов / пробелов) также генерирует один ведущийпробелы непосредственно после этого.