添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
逆袭的板栗  ·  python selenium ...·  1 年前    · 
怕考试的杯子  ·  JavaScript 和 jQuery ...·  2 年前    · 
Markdown 技巧:如何改变表格宽度(列宽)?

Markdown 技巧:如何改变表格宽度(列宽)?

本文是个人学习笔记,文中技巧均来自 StackOverflow 相关问题中的回答

前言(废话区)

现在很多 Markdown 编辑器带的解析器都支持一些快捷插入表格的语法。比如 Typora,MWeb 等支持用如下语法插入表格:

第一格表头 | 第二格表头
--------- | -------------
内容单元格 第一列第一格 | 内容单元格第二列第一格
内容单元格 第一列第二格 多加文字 | 内容单元格第二列第二格

但是当表格内容稍微复杂的时候,这个基本语法可能就满足不了需求 (不过这也不能怪 Markdown,毕竟初衷就是要简单)。典型的,比如列宽,默认都是按照单元格内容自适应,或者整表列宽与行宽相同。内容一多,排版就比较混乱。下面就分享几个我刚学的,利用简单 html 语法调列宽的方法。

Case 1: 预留宽度,用于打印后填写

一个比较简单粗暴的方法自然是加一段空格符          

一个更加优雅的方法则是使用空的 <img> 标签。例如

| a | b | c |
|---|---|---|
| 1 |  <img width=200/> | 3 | 
使用 &amp;amp;amp;lt;img&amp;amp;amp;gt; 标签效果


Case 2: 长文本需要指定列宽,控制换行

第一种方法可以使用 <div style="width:[长度]">[单元格文本]</div> 的形式,长度单位可以是 pt , px , cm 等。比如:

**默认**
| a | b | d |
|---|---|---|
| 1 | very very very very very long long long long long text | 3 |
**使用后效果**
| a | b | d |
|---|---|---|
| 1 | <div style="width: 150pt">very very very very very lonng long long long long text</div>| 3 |
Markdown 中调整表格列宽


第二种方法可以从外部定义一个 「Style」来指定各列的列宽

<style>
table th:first-of-type {
    width: 4cm;
table th:nth-of-type(2) {
    width: 150pt;
table th:nth-of-type(3) {
    width: 8em;
</style>
| a | b | c |
|---|---|---|
| 列宽 = 3 cm| 列宽 = 5 cm| 列宽 = 8em |
用绝对长度定义列宽


当然你可以把单位改成 % 这样就相当于按照所占行宽的比例来分配列宽

<style>
table th:first-of-type {
    width: 20%;
table th:nth-of-type(2) {
    width: 30%;
table th:nth-of-type(3) {
    width: 50%;