markdown基本语法.md
文章目录
- 一、基本用法
- 1.目录
- 1.1 TOC
- 1.2 doctoc 和i5ting_toc
- 2.标题
- 2.1使用`=`和`-`标记一级和二级标题。
- 一级标题
- 二级标题
- 2.2使用`#`,可表示1-6级标题。
- 一级标题
- 二级标题
- 三级标题
- 四级标题
- 五级标题
- 六级标题
- 3.段落
- 3.1普通段落
- 3.2 代码区块
- 4.代码
- 4.1 单行代码
- 4.2 多行代码
- 5.区块引用及嵌套
- 6.强调
- 7.锚点和页内跳转
- 7.1markdown的方法:
- 7.2html的方法:
- 8.外部链接
- 9.图片
- 10.列表
- 10.1无序列表
- 10.2有序列表
- 11.自动链接
- 12.注脚
- 13.反斜杠
- 14.空格和缩进
- 15.分割线
- 16.表格
- 17.公式
- 二、或许你会感兴趣
- markdown是什么
- Aaron Swartz
一、基本用法
1.目录
1.1 TOC
在段落中填写 [TOC] 以显示全文内容的目录结构。
效果参见上方的目录。不过github上并不支持,只在一些主流的社区和博客支持。
1.2 doctoc 和i5ting_toc
使用node模块doctoc和i5ting_toc。
doctoc 可以在markdown文件开头生成目录。也可以使用i5ting_toc把markdown编译成带有toc目录的html文件。
用法:
全局安装i5ting_toc
npm install -g i5ting_toc
在要转换的md文件根目录下,使用以下命令:
i5ting_toc -f <文件名>.md -o
-f参数,如果没有填写,默认使用README.md
运行成功之后则在当前目录下生成一个preview文件夹,里面就是转换后的HTML文件。
其他常见的命令参数如下:
-h, –help output usage information
-V, –version output the version number
-f, –file [filename] default is README.md
-o, –open open in browser
-v, –verbose 打印详细日志
2.标题
两种形式:
2.1使用=
和-
标记一级和二级标题。
一级标题
=========
二级标题
---------
效果:
一级标题
二级标题
2.2使用#
,可表示1-6级标题。
# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题
效果:
一级标题
二级标题
三级标题
四级标题
五级标题
六级标题
注意,只有六级
3.段落
3.1普通段落
段落是由一个或多个连续的文本行组成,段落的前后要有空行,空行是指没有文字内容。普通段落不该用空格或制表符来缩进。
若想在段内强制换行的方式是使用 两个以上 空格加上回车(引用中换行省略回车)。效果相当于在行尾添加
<br>
标签。
效果:
在逃去如飞的日子里,在千门万户的世界里的我能做些什么呢?只有徘徊罢了,只有匆匆罢了;在八千多日的匆匆里,除徘徊外,又剩些什么呢?过去的日子如轻烟,被微风吹散了,如薄雾,被初阳蒸融了;我留着些什么痕迹呢?我何曾留着像游丝样的痕迹呢?我赤裸裸来到这世界,转眼间也将赤裸裸的回去罢?但不能平的,为什么偏要白白走这一遭啊?
3.2 代码区块
前后要有空行
并且缩进 4个空格 或是 1个制表符 就可以了。
效果相当于把文字放进<pre>
标签内:
我不去想,是否能够成功。既然选择了远方,便只顾风雨兼程。我不去想能否赢得爱情,既然钟情于玫瑰,就勇敢的吐露真诚。我不去想身后会不会袭来寒风冷雨,既然目标是地平线,留给世界的只能是背影。我不去想,未来是平坦还是泥泞,只要热爱生命,一切,都在意料之中。
4.代码
4.1 单行代码
单行代码使用一对反引号`function`将代码包起来即可。效果同写在<code>标签内。
4.2 多行代码
如同上面提到的,我们可以将代码放进 代码区块 内。不过显然我们有更好的选择:
对代码块的 使用三个反引号[ ``` ] +[ 语言名称]开始,比如java,javascript等标记该部分代码的类型,并且用[```]结束。
```javascript
var quickSort = function(arr) {
if (arr.length <= 1) { return arr; }
var pivotIndex = Math.floor(arr.length / 2);
var pivot = arr.splice(pivotIndex, 1)[0];
var left = [];
var right = [];
for (var i = 0; i < arr.length; i++){
if (arr[i] < pivot) {
left.push(arr[i]);
} else {
right.push(arr[i]);
}
}
return quickSort(left).concat([pivot], quickSort(right));
};
```
在页面展现的时候就可以高亮显示关键字了:
var quickSort = function(arr) {if (arr.length <= 1) { return arr; }var pivotIndex = Math.floor(arr.length / 2);var pivot = arr.splice(pivotIndex, 1)[0];var left = [];var right = [];for (var i = 0; i < arr.length; i++){if (arr[i] < pivot) {left.push(arr[i]);} else {right.push(arr[i]);}}return quickSort(left).concat([pivot],quickSort(right));};
markdown支持代码高亮的语言类型很多,基本上主流的编程语言都在其支持范围。所以你可以放心的使用。
5.区块引用及嵌套
Markdown 标记区块引用是使用类似 email 中用 > 的引用方式。
在段落的每行或者只在第一行使用符号>
,还可使用多个嵌套引用,无数量限制,如:
> 第一层
>> 第二层
>>> 第三层
效果:
第一层
第二层
第三层
6.强调
在强调内容两侧分别加上*
或者_
,如:
*斜体*,_斜体_
**粗体**,__粗体__
***斜体加粗*** ,___斜体加粗___
~~删除~~
效果:
斜体,斜体
粗体,粗体
斜体加粗 ,斜体加粗
删除
7.锚点和页内跳转
如果使用markdown写的文档内容很多,我们使用页内跳转。虽然我们已经借助第三方模块根据标题定位。但锚点让我们更加灵活,有了它,我们就可以更加自由的实现页内跳转了。
首先,我们自定义一个锚点。例如:
<div id=“anchor1”>
接着有两种方式实现定位到上面的锚点:
7.1markdown的方法:
[名称](#id)
注意,id必填,名称选填。
7.2html的方法:
<a href=”#id”>名称
方法一的效果:
anchor1
方法二的效果:
anchor1
8.外部链接
链接可以由两种形式生成:行内式和参考式。
行内式:
[百度](https://baidu.com “百度”)。
[ ]中为链接名。( )中是链接的的地址。" "中的是链接的标题,当鼠标移到链接上时显示的内容。
效果:
百度
注意 如果想要在新页面中打开的话,最好用a标签代替。这样兼容性比较好。
百度
参考式:
[链接一][1]
[链接二][2][1]:https://baidu.com “百度”
[2]:https://taobao.com “淘宝”
效果:
链接一
链接二
9.图片
添加图片的形式和链接相似,只需在链接的基础上前方加一个!
。
![Aaron Swartz](https://github.com/younghz/Markdown/raw/master/resource/Aaron_Swartz.jpg\ “Aaron Swartz”)
当图片加载失败时会显示[ ]中的内容。( )中是图片资源的的地址。" "中的是图片的标题,当鼠标移到图片上时显示的内容。
如果想更改图片的大小和位置:
- 嵌入HTML的方式:
<img src="./xxx.png" width = "300" height = "200" alt="图片名称" align=center />
如果需要居中的话只要在外面包围div标签即可。
<div align="center"> ...
</div>
下面两种方法的兼容性不好
直接在图片后面加上对应的CSS样式即可。
![img](url){:class=“responsive”}
![img](url){:height=“50%” width=“50%”}
![img](url){:height=“100px” width=“100px”}使用支持图片大小更改操作的 Mou 编辑器
10.列表
10.1无序列表
使用·
、+
、或-
标记无序列表,如:
-(+*) 第一项
-(+*) 第二项
- (+*)第三项
注意:标记后面最少有一个_空格_或_制表符_。若不在引用区块中,必须和前方段落之间存在空行。
示例:
+ 第一项
+ 第二项
+ 第三项
效果:
- 第一项
- 第二项
- 第三项
10.2有序列表
有序列表的标记方式是“数字+.
”,如:
1. 第一项
2. 第二项
3. 第三项
"."跟内容之间要有空格。
有空格的效果:
- 第一项
- 第二项
- 第三项
没空格的效果:
1.第一项
2.第二项
3.第三项
11.自动链接
Markdown 支持以比较简短的自动链接形式来处理网址和电子邮件信箱,只要是用方括号包起来, Markdown 就会自动把它转成链接。一般网址的链接文字就和链接地址一样,例如:
<http://example.com/>
效果:
http://example.com/
12.注脚
- 加注:在需要添加注脚的文字后加上脚注名字[^注脚名字]。
- 添加脚注:然后在文本的任意位置“[^注脚名字]: + 内容 ”。
(注前必须有对应的脚注名字。不论你将注脚写在哪里,它始终会被自动归类到文章的最后。)
自题小像
灵台无计逃神矢,风雨如磐暗故园。
寄意寒星[^1]荃不察,我以我血荐轩辕。
[^1]:寒星:宋玉《九辩》:“愿寄言夫流星兮,”荃不察:屈原《离骚》:“荃不察余之衷情兮。”
效果见此处和w文末:
自题小像
灵台无计逃神矢,风雨如磐暗故园。
寄意寒星1荃不察,我以我血荐轩辕。
13.反斜杠
即 转义符 。可以使有特殊作用的markdown符号转化为普通符号在文档中显示出来。
14.空格和缩进
在HTML中,如果你用空格键产生此空格,空格是不会累加的(只算1个)。要使用html实体表示才可累加。
HTML提供了5种空格实体(space entity),它们拥有不同的宽度,非断行空格 是常规空格的宽度,可运行于所有主流浏览器。其他几种空格在不同浏览器中宽度各异。
比较:(为了便于观察加了中括号)
[ ] 
[ ] 
[ ]
[ ] 
[]‌
[]‍
“不换行空格”,全称No-Break Space。这是我们使用最多的空格,也就是按下space键产生的空格。
缩进:1/2字符,1/4中文字符。
 “半角空格”,全称是En Space,en是字体排印学的计量单位,为em宽度的一半。
缩进:1字符,1/2中文字符。
 “全角空格”,全称是Em Space,em是字体排印学的计量单位。
缩进:2字符,1中文字符。
 “窄空格”,全称是Thin Space。占据的宽度是em之六分之一宽。
‌“零宽不连字”,全称是Zero Width Non Joiner,简称“ZWNJ”,是一个不打印字符,放在电子文本的两个字符之间,抑制本来会发生的连字,而是以这两个字符原本的字形来绘制。
‍“零宽连字”,全称是Zero Width Joiner,简称“ZWJ”,是一个不打印字符,放在某些需要复杂排版语言(如阿拉伯语、印地语)的两个字符之间,使得这两个本不会发生连字的字符产生了连字效果。
注意,空格和 可以叠加使用:
之前和之后加一个空格也会显示空格。
15.分割线
分割线最常使用就是 三个或以上 *
或-
和_
。
—
___
***
显示效果是一样的:
16.表格
\|表头\|表头\|表头\|
\|-----\|:----:|----:|
|内容|内容|内容|
内容|内容|内容
效果如下:
表头 | 表头 | 表头 |
---|---|---|
内容 | 内容 | 内容 |
内容 | 内容 | 内容 |
第一行定义表头。
第二行分割表头和定义格式。
- -有一个就行,为了对齐,多加了,无作用。
- 文字默认居左。
- -两边加:表示文字居中。
- -右边加:表示文字居右。
- 外层两边的 | 可省略。
以下行填写表格中的内容。
17.公式
见这篇文章:https://blog.csdn.net/testcs_dn/article/details/44229085
二、或许你会感兴趣
markdown是什么
之所以把markdown写在后面,是因为既然你有兴趣了解它。肯定是对它有所了解。官方的介绍到处可以搜得到。但我仍然想整理一下,以至于不让这篇文章显得没那么单薄。markdown是一种纯文本格式的标记语言。它可以和HTML完美融合,也可以将它转化为HTML,因此也有人它是HTML的远方亲戚。markdown的应用相当普遍,如果你想写博客,那么学会用markdown将会是你最好的第一步。虽然有很多主流博客网站都有着自己不错的markdown编辑器,能够帮助我们不用记住它的语法也能编辑出好看的markdown文本,但如果你想随心所欲的自己编写能够兼容各个博客网站甚至自己的博客网站的markdown。那么你就不应该错过markdown的学习。
Aaron Swartz
提到markdown就不得不提它的创造者Aaron Swartz。这里面的故事足够传奇和精彩。相信你一定有兴趣去了解。
寒星:宋玉《九辩》:“愿寄言夫流星兮,”荃不察:屈原《离骚》:“荃不察余之衷情兮。” ↩︎
markdown基本语法.md相关推荐
- 【MD】Markdown常用语法
Markdown对于程序员来说应该是必备的一项技能,无论是日常笔记还是Github的README,越来越多的手册都应用到了Markdown语法,此篇文章将作为备忘录,记录一些Markdown的基础书写 ...
- Markdown编辑器editor.md的使用
目录(?)[-] 一Markdown和editormd简介 二editormd的使用 1下载 2简单使用 21在自己的页面上引入相关的css和js代码如下 22在自己的页面中加上DIV 23在同页面中 ...
- 【 Markdown 】Markdown 编辑器语法常用格式 ( 整理中 ... )
文章目录 一. MarkDown 常用语法 1. 标题相关语法 (1) 标题模板 (2) 插入目录 2. 字体相关 (1) 字体设置 (2) 常用颜色值速查 3. 插入代码 (1) 单行代码 (2) ...
- Markdown基础语法小结
一.前言 Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式. --摘自百度百科 没想到一向不太靠谱的百度百科这次竟有了如此精辟的解释. ...
- Gradle Groovy 基础语法 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- 1.markdown基础语法
markdown 基础语法 使用VScode时的一些意外情况 最开始用的是vscode写md笔记,但是最后需要用它写代码,所以就去用其他的编辑器了,寻找过程一言难尽,因为我觉得大部分md编辑器都比不上 ...
- MarkDown基本语法--程序员必修
文章目录 MarkDown基本语法 一.标题 二.字体 三.引用 四.分割线 五.图片 六.超链接 七.列表 1.无序列表 2.有序列表 八.表格 九.代码 十.流程图 十一.总结 MarkDown基 ...
- 使用Visual Studio Code编写markdown文件以及转成PDF格式和markdown常用语法
Markdown是一种轻量级标记语言,排版语法简洁,让人们更多地关注内容本身而非排版.它使用易读易写的纯文本格式编写文档,可与HTML混编,可导出 HTML.PDF 以及本身的 .md 格式的文件.因 ...
- Markdown基本语法笔记
markdown 基本语法笔记 基本语法 标题语法 段落语法 换行语法 强调语法 引用语法 单个段落引用 多个段落引用 引用的嵌套 引用中可包含其他元素 这是一个四级标题 列表语法 有序列表 无序列表 ...
最新文章
- 在Ubuntu 14.04 64bit上安装批量图片处理器XnConvert
- Android开发之Serializable 和 Parcelable的区别(源代码分享)
- linux openfire mysql_Openfire 服务器在Linux上的安装
- mysql 51cto 数据类型_Mysql支持的数据类型
- 菜鸟程序员如何提升自己的潜在价值
- 修改MongoDB密码
- CleanCodeHandbook Chapter 1: Array/String(1-16)
- nmea怎么转wgs84坐标c语言源码,NMEA-0813数据格式说明
- vue笔记 keyboard+隐藏input光标+自动跳转到下一个input
- DAV 转 AVI 软件 dav2avi
- python自动打印如何实现-Python 实现自动完成A4标签排版打印功能
- 银河麒麟桌面操作系统V10 SP1 如何安装字体
- 交会定点(前方交会、测边交会、后方交会)程序C++代码
- APP推广重点渠道解析及我这些年踩过的坑
- Matlab中统计灰度值出现的次数
- 平面设计如何做出空间创意作品?
- 一个团队(很多人)都存在的共性问题
- Ansys2020R2的Fluent网格重排问题(reorder)
- 机器学习(三):线性模型
- lepus(天兔)的安装与使用