一个同事在我完成的屏幕上出现文本对齐问题。在使用Chrome的Win10 PC上向我显示了该问题,并且出现了如下几行文字:
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-Tricks或Chrome浏览器文档相关的任何内容。
编辑:
另一位同事证实,在<br />
标记内添加<p>
(没有尾随/前导空格)也会在之后直接生成单个前导空白。
答案 0 :(得分:1)
white-space: pre-wrap
保留空格,因此在自动换行时,由于它位于段落的开头,因此不会添加额外的空间。
如果您希望整个段落即使在自动换行后也要有额外的空间,请尝试white-space: none;
或添加一些填充/边距。