如何防止HTML源格式影响输出?

看起来 HTML代码中的额外换行符可能会在最终输出添加不需要的空格.我一直认为无论我如何布局我的HTML代码,它都不会影响渲染结果的样子.但这是一个例子:
<h2>
    <a href="#">Hello.</a>World
</h2>

显示:“Hello.World” – 所有看起来都很好

<h2>
    <a href="#">Hello.</a>
    World
</h2>

显示:“Hello.World” – 点后面有一个额外的空格!

有没有机会摆脱这种影响?
我希望将代码放在不同的行上 – 而不是产生额外的空间.

解决方法

不,没有,不是在这种情况下.

在HTML中,所有空格都计为空格,但是几个空白字符之后只计为一个.所以,你的代码相当于:

<h2> <a href="#">Hello.</a> World </h2>

删除块元素旁边的空格,但不删除文本内的空格.由于锚标记是内联元素,因此无法删除其旁边的空间,因为这会更改内容.因此,在删除空间之后,这就是剩下的:

<h2><a href="#">Hello.</a> World</h2>

因此,只要不是内容的一部分,您可以在任何地方拥有额外的空白区域.这个:

<h2    >

  <p >  test      test    </p     >

  <p   >  test       test  </p  >

</h2   >

将等效于(删除不影响结果的空格后):

<h2><p>test test</p><p>test test</p></h2>

相关文章

操作步骤 1、进入elasticsearch的plugin,进入ik。进入config。 2、在config下面建立以.dic为后缀的字典...
lengend data数据中若存在&#39;&#39;,则表示换行,用&#39;&#39;切割。
代码实现 option = { backgroundColor: &amp;#39;#080b30&amp;#39;, tooltip: { trigger: &...
问题原因 原因在于直接在js中取的变量并复制给var变量。 于是就变成这样。 解决办法 var data = &#...
前言 最近做了一个调查问卷导出的功能,需求是将维护的题目,答案,导出成word,参考了几种方案之后,选...
对于很多人来说,用字符编码都是熟能生巧,而不清楚为什么是那样的字符编码,所以我在这列了一个表,翻...