[BUG]-hexo中插入HTML表格出现过多空白

最近打算写一个汇总表,因为markdown自带的表格不支持跨行和跨列,所以打算直接插入HTML表格,不过发现插入表格之后和预期效果不太一样,当时怀疑是文本编辑器的编码问题,简单的测试确认是hexo实现相关的bug。

问题

首先创建一个新post并且插入表格,正常的思路:

1
2
3
4
5
6
7
8
test start
<table>
<tr>
<td>d1</td>
<td>d2</td>
</tr>
</table>
end!

渲染结果是这样的,表格前面多出很多空白行:
image

猜想

经过试验发现,表格越长前面生成的空白也越长,怀疑空行的产生跟表格本身有关

验证

修改post中的代码如下:

1
2
3
test start
<table><tr><td>d1</td><td>d2</td></tr></table>
end!

渲染结果正常了!
image
由此看来,确实是md文件中的tab和换行符造成了错误。

解决

向hexo提出 issue 很快得到回复,确认这是marked.js中的bug并建议使用markdown本身的表格。由于markdown不满足这里的需求,暂时的选择只有牺牲可读性或者直接插入图片了(为了排版的一致性我选了第一种)。

一脚得斯(:P)