我使用Hakyll生成一些文档,我注意到它有一种奇怪的方式来关闭它生成的代码中的HTML标记。
有一个页面,他们说你必须像他们那样生成标记,否则你的页面布局会在某些条件下被破坏,但我现在找不到它。
我创建了一个小测试页面(下面的代码),它有一个带有“普通”HTML标记的红色图层,以及一个带有类似于hakyll生成的标记的黄色图层。
我看不出两个div之间在Firefox中存在任何差异。
有人可以解释他们说的是真的吗?
<html>
<body>
<!-- NORMAL STYLE -->
<div style="background: red">
<p>Make available the code from the library you added to your application. Again, the way to do this varies between languages (from adding import statements in python to adding a jar to the classpath for java)</p>
<p>Create an instance of the client and, in your code, make calls to it through this instance's methods.</p>
</div>
<!-- HAKYLL STYLE -->
<div style="background: yellow"
><p
>Make available the code from the library you added to your application. Again, the way to do this varies between languages (from adding import statements in python to adding a jar to the classpath for java)</p
><p
>Create an instance of the client and, in your code, make calls to it through this instance's methods.</p
></div
>
</body>
<html>
答案 0 :(得分:5)
实际上pandoc正在生成HTML代码。 Pandoc问题跟踪器中有一个很好的解释:
http://code.google.com/p/pandoc/issues/detail?id=134
原因是 因为HTML标记之间的任何空格(包括换行符和制表符)都会导致 浏览器在这些元素之间插入空格字符。它更容易 机器逻辑将这些空间排除在外,因为那时你不需要考虑 HTML文本格式化可能会混淆浏览器添加的方式 额外的空间。
答案 1 :(得分:0)
有时,剥离两个标签之间的空白区域会有所不同,特别是在处理内联元素时。
答案 2 :(得分:0)
我对它进行了整理,并修复了不寻常的换行符。