HTML 转 Markdown 在线转换器简介
HTML转Markdown转换器是一种工具,旨在将HTML(超文本标记语言)内容转换为Markdown格式。HTML是用于创建和设计网页的标准语言,具有多种标签来格式化文本、创建链接、插入图像等。而Markdown是一种轻量级标记语言,使用纯文本格式化语法,旨在易于阅读且易于转换为HTML,但更易于编写和阅读。
该转换器将HTML文档的结构化内容,如标题、段落、列表、链接和图像,转换为相应的Markdown语法。例如,HTML段落(<p>
)在Markdown中变为纯文本,粗体文本(<strong>
或<b>
)转换为Markdown的粗体语法,以此类推。
这一过程特别适用于需要将网页内容迁移到支持或要求Markdown的平台,或者用户偏好Markdown的简洁性和可读性用于文档编写、笔记记录或内容创作。它简化了将复杂的HTML结构手动转换为Markdown的任务,节省时间并确保格式的一致性。
为什么利用人工智能和ChatGPT创作内容时,HTML转Markdown工具至关重要?
为了引导AI,如通义千问、文心一言、智谱清言等,我会提供一到两个样本文本。这种方法有助于为新生成的内容设定方向。最初,我提取这些模板文本,结果得到一个过于复杂的HTML代码,这往往会令AI感到困惑。
这时,HTML转Markdown转换器的魔力就显现出来了,它能无缝地将HTML转换成易于阅读的Markdown格式。
HTML 转 Markdown转换器在哪些场景极为有用?
- 内容迁移: 方便将网站内容(HTML)转移到支持Markdown的平台,如GitHub、Reddit或基于Jekyll的博客,确保格式保持一致。
- 文档管理: 有助于将在线文档从HTML格式重构为Markdown格式,便于管理和版本控制文档,尤其是在偏好Markdown的平台。
- 教育材料: 使教育者和在线课程创建者能轻松将基于HTML的学习材料转换为Markdown格式,更易于编辑和在多个教育平台上分享。
- 博客写作: 偏好使用简单Markdown编辑器的博主,可以通过转换器轻松将作品从HTML模板转换到Markdown,使编辑过程更加直接。
- 邮件到文档: 将HTML邮件转换为Markdown格式,便于将邮件内容整合到项目文档或报告中。
- 内容备份: 提供一种方式,将网页内容备份为Markdown格式,这种格式在纯文本形式下更为紧凑和易读,保留结构元素而不涉及复杂的HTML标签。
- 网页开发: 开发者可以快速在Markdown中起草内容,并转换为HTML用于网页,或反之,简化内容更新和维护。
- 出版: 出版者可以将HTML手稿转换为Markdown,以便在支持Markdown的平台上进行更简单的编辑和格式化。
- 笔记与知识库: 便于将在线研究和文章转换为Markdown格式,以便纳入个人或协作知识库,使信息更易于组织和搜索。
- 技术写作: 技术作家可以将复杂的HTML文档翻译成Markdown,简化编辑过程并提高技术文档的可读性,特别是在与偏好Markdown的开发者合作时,用于README文件和文档。
Markdown 语法说明
段落、标题、区块代码
一个段落是由一个以上的连接的行句组成,而一个以上的空行则会划分出不同的段落(空行的定义是显示上看起来像是空行,就被视为空行,例如有一行只有空白和 tab,那该行也会被视为空行),一般的段落不需要用空白或换行缩进。
Markdown 支持两种标题的语法,Setext 和 atx 形式。Setext 形式是用底线的形式,利用 =
(最高阶标题)和 -
(第二阶标题),Atx 形式在行首插入 1 到 6 个 #
,对应到标题 1 到 6 阶。
区块引用则使用 email 形式的 ‘>
’ 角括号。
Markdown 语法:
A First Level Header
====================
A Second Level Header
---------------------
Now is the time for all good men to come to
the aid of their country. This is just a
regular paragraph.
The quick brown fox jumped over the lazy
dog's back.
### Header 3
> This is a blockquote.
>
> This is the second paragraph in the blockquote.
>
> ## This is an H2 in a blockquote
输出 HTML 为:
<h1>A First Level Header</h1>
<h2>A Second Level Header</h2>
<p>Now is the time for all good men to come to
the aid of their country. This is just a
regular paragraph.</p>
<p>The quick brown fox jumped over the lazy
dog's back.</p>
<h3>Header 3</h3>
<blockquote>
<p>This is a blockquote.</p>
<p>This is the second paragraph in the blockquote.</p>
<h2>This is an H2 in a blockquote</h2>
</blockquote>
修辞和强调
Markdown 使用星号和底线来标记需要强调的区段。
Markdown 语法:
Some of these words *are emphasized*.
Some of these words _are emphasized also_.
Use two asterisks for **strong emphasis**.
Or, if you prefer, __use two underscores instead__.
输出 HTML 为:
<p>Some of these words <em>are emphasized</em>.
Some of these words <em>are emphasized also</em>.</p>
<p>Use two asterisks for <strong>strong emphasis</strong>.
Or, if you prefer, <strong>use two underscores instead</strong>.</p>
列表
无序列表使用星号、加号和减号来做为列表的项目标记,这些符号是都可以使用的,使用星号:
* Candy.
* Gum.
* Booze.
加号:
+ Candy.
+ Gum.
+ Booze.
和减号
- Candy.
- Gum.
- Booze.
都会输出 HTML 为:
<ul>
<li>Candy.</li>
<li>Gum.</li>
<li>Booze.</li>
</ul>
有序的列表则是使用一般的数字接着一个英文句点作为项目标记:
1. Red
2. Green
3. Blue
输出 HTML 为:
<ol>
<li>Red</li>
<li>Green</li>
<li>Blue</li>
</ol>
如果你在项目之间插入空行,那项目的内容会用 <p>
包起来,你也可以在一个项目内放上多个段落,只要在它前面缩排 4 个空白或 1 个 tab 。
* A list item.
With multiple paragraphs.
* Another item in the list.
输出 HTML 为:
<ul>
<li><p>A list item.</p>
<p>With multiple paragraphs.</p></li>
<li><p>Another item in the list.</p></li>
</ul>
链接
Markdown 支援两种形式的链接语法: 行内 和 参考 两种形式,两种都是使用角括号来把文字转成连结。
行内形式是直接在后面用括号直接接上链接:
This is an [example link](http://example.com/).
输出 HTML 为:
<p>This is an <a href="http://example.com/">
example link</a>.</p>
你也可以选择性的加上 title 属性:
This is an [example link](http://example.com/ "With a Title").
输出 HTML 为:
<p>This is an <a href="http://example.com/" title="With a Title">
example link</a>.</p>
参考形式的链接让你可以为链接定一个名称,之后你可以在文件的其他地方定义该链接的内容:
I get 10 times more traffic from [Google][1] than from
[Yahoo][2] or [MSN][3].
[1]: http://google.com/ "Google"
[2]: http://search.yahoo.com/ "Yahoo Search"
[3]: http://search.msn.com/ "MSN Search"
输出 HTML 为:
<p>I get 10 times more traffic from <a href="http://google.com/"
title="Google">Google</a> than from <a href="http://search.yahoo.com/"
title="Yahoo Search">Yahoo</a> or <a href="http://search.msn.com/"
title="MSN Search">MSN</a>.</p>
title 属性是选择性的,链接名称可以用字母、数字和空格,但是不分大小写:
I start my morning with a cup of coffee and
[The New York Times][NY Times].
[ny times]: http://www.nytimes.com/
输出 HTML 为:
<p>I start my morning with a cup of coffee and
<a href="http://www.nytimes.com/">The New York Times</a>.</p>
图片
图片的语法和链接很像。
行内形式(title 是选择性的):
![alt text](/path/to/img.jpg "Title")
参考形式:
![alt text][id]
[id]: /path/to/img.jpg "Title"
上面两种方法都会输出 HTML 为:
<img src="/path/to/img.jpg" alt="alt text" title="Title" />
代码
在一般的段落文字中,你可以使用反引号 `
来标记代码区段,区段内的 &
、<
和 >
都会被自动的转换成 HTML 实体,这项特性让你可以很容易的在代码区段内插入 HTML 码:
I strongly recommend against using any `<blink>` tags.
I wish SmartyPants used named entities like `—`
instead of decimal-encoded entites like `—`.
输出 HTML 为:
<p>I strongly recommend against using any
<code><blink></code> tags.</p>
<p>I wish SmartyPants used named entities like
<code>&mdash;</code> instead of decimal-encoded
entites like <code>&#8212;</code>.</p>
如果要建立一个已经格式化好的代码区块,只要每行都缩进 4 个空格或是一个 tab 就可以了,而 &
、<
和 >
也一样会自动转成 HTML 实体。
Markdown 语法:
If you want your page to validate under XHTML 1.0 Strict,
you've got to put paragraph tags in your blockquotes:
<blockquote>
<p>For example.</p>
</blockquote>
输出 HTML 为:
<p>If you want your page to validate under XHTML 1.0 Strict,
you've got to put paragraph tags in your blockquotes:</p>
<pre><code><blockquote>
<p>For example.</p>
</blockquote>
</code></pre>