Markdown表格、单元格合并、快速编辑表格

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-NC-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/zgdwxp/article/details/101196571

CommonMark并未定义表格
市面上大部分markdown的扩展已经支持表格定义、且遵循一套事实标准。

下面分享下markdown表格的实现。

基本语法

| 列1 | 列2      |
|:--------:| -------------:|
| 文本居中 | 文本居右 |

效果如下:

列1 列2
文本居中 文本居右

语法非常简单,但也牺牲了很多细节的支持。下面介绍复杂的场景。

复杂实现

以单元格合并为例。

markdown表格语法不支持单元格合并,虽然它是HTML的子集,但没有实现相关属性。
需要我们自行使用HTML标签实现(其他复杂场景也采用该思路,如锚链接)。

HTML合并单元格,依赖colspanrowspan属性,分别表示跨几列、跨几行

例:

<table>
  <tr>
    <th>no</th>
    <th>c1</th>
    <th>c2</th>
    <th>c3</th>
  </tr>
  <tr>
    <td>1</td>
    <td colspan="2">r1-c12</td>
    <td rowspan="2">r12-c3</td>
  </tr>
  <tr>
    <td>2</td>
    <td></td>
    <td></td>
  </tr>
  <tr>
    <td>3</td>
    <td colspan="2" rowspan="2">r34-c12</td>
    <td></td>
  </tr>
  <tr>
    <td>4</td>
    <td></td>
  </tr>
</table>

如果遇到代码中的行被转义,可以将代码两端加上<escape></escape>

效果如下:

no c1 c2 c3
1 r1-c12 r12-c3
2
3 r34-c12
4

注意:模拟的表格中不再支持markdown语法,需要自行使用HTML来处理,如自定义锚链接

总结

markdown可以支持表格,但要实现优美的、灵活的表格,即便可以通过HTML实现,写作成本太高,这不符合markdown的初衷:“ 专注写作而不是排版 ”

实在要用,建议用编辑器生成表格,推荐一个工具:http://www.tablesgenerator.com/markdown_tables
效果如下图,支持多种语法:
在这里插入图片描述


以上。感谢您的阅读。

猜你喜欢

转载自blog.csdn.net/zgdwxp/article/details/101196571