Заголовки H1–H6 выделяются в Markdown с помощью знаков решетки (диез/шарп). Можно просто поставить нужное количество решеток в начале строки, чтобы указать уровень.
# H1
## H2
## H3
#### H4
##### H5
###### H6
Форматирование курсивом и жирным точно есть во всех инструментах, где другие функции Markdown могут быть ограничены. Синтаксис выделения текста и расставления акцентов:
__Жирный__
Жирный
**Тоже жирный**
Тоже жирный
*Курсив*
Курсив
_Тоже курсив_
Тоже курсив
~~Зачеркнутый~~
Зачеркнутый
<ins>Подчеркнутый</ins>
Подчеркнутый
Чтобы оформить строку в элемент маркированного списка, в начале нужно поставить плюс, минус или звездочку. Звездочка не приведет к курсивному выделению, потому что отделяется от слова пробелом.
Пункт 1
Пункт 2
Пункт 3
или
Пункт 1
Пункт 2
Пункт 3
или
Пункт 1
Пункт 2
Пункт 3
Если необходимо создать нумерованный список, используйте в начале строки цифру с точкой. Удобно, что нумерация автоматическая: можно вставить любые цифры, и ошибки не будет.
Пункт 1
Пункт 2
Пункт 3
или
Пункт 1
Пункт 2
Пункт 3
или даже
Пункт 1
Пункт 2
Пункт 3
Маркдаун-разметка также позволяет оформлять многоуровневые списки. Уровень обозначается не количеством спецсимволов, как в случае с заголовками, а за счет отступов. Проще не считать пробелы, а каждый новый подпункт выделять табуляцией.
- Пункт 1
- Подпункт A
- Подподпункт a
- Пункт 2
+ Подпункт A
* Подподпункт a
Пункт 1
Пункт 2
1. Пункт 1
+ Подпункт A
- Подподпункт a
2. Пункт 2
1. Подпункт 2.1.
1. Подподпункт 2.1.1
3. Пункт 3
Пункт 2
Подпункт 2.1.
Подподпункт 2.1.1
Пункт 3
Если пункт списка включает несколько строк или абзацев, нужно соблюдать всё те же отступы, чтобы было красиво оформлено. Ключевые мысли в списках также можно выделять другой разметкой, например, жирным. Примеры:
* __Тезис №1__
Раскрываем тезис
* _Тезис №2_
Раскрываем тезис
* __Тезис №3__ Раскрываем тезис
* __Тезис №4__ Раскрываем тезис
Тезис №1
Раскрываем тезис
Тезис №2
Раскрываем тезис
Тезис №3 Раскрываем тезис
Тезис №4 Раскрываем тезис
Чтобы поставить гиперссылку без анкора, нужно взять URL в угловые скобки. С e-mail – аналогично. Если вставлять с анкором, то тогда текст ссылки заключается в квадратные скобки, а адрес страницы – в круглые. Рядом с URL можно прописать тайтл, его объявляют в кавычках (он тоже остается внутри круглых скобок).
Это простая [ссылка](http://ya.com/) в тексте.
Это [ссылка](http://ya.com/ "Титул") с аттрибутом title.
Чтобы длинные URL не затрудняли чтение и написание документа Markdown, есть вариант присвоения каждой ссылке определенных ID (меток/переменных). Можно сделать это несколькими способами:
Ссылаемся на [блог][blog-link] через ID.
Объявляем метку позже по аналогии со сносками.
Цифрами обозначить тоже можно: [Google][1], [Yandex][2].
[blog-link]: /blog "Блог про интернет-маркетинг"
[1]: google.com 'Сайт Google'
[2]: yandex.ru (Сайт «Яндекса»)
Ссылаемся на блог через ID.
Объявляем метку позже по аналогии со сносками.
Цифрами обозначить тоже можно: Google, Yandex.
Синтаксис Markdown для работы с картинками очень похожий. Разница в восклицательном знаке перед первыми квадратными скобками. Ссылке на картинку тоже можно присвоить определенный ID. Примеры:

или 
b. С помощью метки-идентификатора. Синтаксис данной команды записывается следующим образом: ![Alt текст][id]
, где id
— имя определённой метки изображения. Метки изображений определяются при помощи синтаксиса: [id]: путь/к/изображению "Необязательная подсказка"
и соответственно там где нужно отобразить или повторить изображение размещаем ![Alt text][id]
(т.е. вместо «путей» мы используем id
).
[](http://www.youtube.com/watch?v=YOUTUBE_VIDEO_ID_HERE)
Можно ***
звездочки без пробелов, можно ---
дефисы без пробелов.
| Header | Header |
| ---- | ---- |
| Content | Content |
| Content | Content |
First Header | Second Header |
---|---|
Content Cell | Content Cell |
Content Cell | Content Cell |
Выравнивание задается двоеточием - влево, по центру, вправо:
:--- | :---: | ---:
Выравнивание по левому краю.
| Option | Description |
| :------| :-----------|
| data | path to data files to supply the data that will be passed into templates. |
| engine | engine to be used for processing templates. Handlebars is the default. |
| ext | extension to be used for dest files. |
Option | Description |
---|---|
data | path to data files to supply the data that will be passed into templates. |
engine | engine to be used for processing templates. Handlebars is the default. |
ext | extension to be used for dest files. |
Выравнивание по правому краю.
| Option | Description |
| ------:| -----------:|
| data | path to data files to supply the data that will be passed into templates. |
| engine | engine to be used for processing templates. Handlebars is the default. |
| ext | extension to be used for dest files. |
Option | Description |
---|---|
data | path to data files to supply the data that will be passed into templates. |
engine | engine to be used for processing templates. Handlebars is the default. |
ext | extension to be used for dest files. |
Вставлять его можно как внутрь строк, так и отдельными блоками. Для соответствующей разметки используют грависы или обратные тики (на букве Ё). Инлайн-код выделяют одиночными символами, а блоки – тройными.
Простой инлайн-код: print("Hello, World!")
`print("Hello, World!")`
Если внутри кода есть апостроф, то код надо обрамить двойными апострофами: There is a literal backtick (`) here.
``There is a literal backtick (`) here.``
При оформлении целого блока можно указать язык программирования, чтобы подсветить соответствующий синтаксис:
Код на Python:
```python
код
```
Итог:
x = int(input())
if x > 0:
print(x)
else:
print(-x)
Код на JavaScript:
let greeting1 = 'Father!';
console.log(greeting1);
let greeting2 = 'Mother!';
console.log(greeting2);
Код на PHP:
include('Parsedown.php');
$filename = 'test.md';
$text = file_get_contents($filename);
$Parsedown = new Parsedown();
$Parsedown->setSafeMode(true);
echo $Parsedown->text($text);
Экранирование Для экранирования служебных символов маркдауна нужно использовать обратный слеш \
Дополнительные элементы Обратный слеш Может употребляться в Markdown перед специальными символами для того, чтобы они воспринимались в их буквальном (а не служебном) значении. Полный список данных символов приводится ниже:
«\» - слеш;
«`» - обратный апостроф;
«*» - звездочка;
«_» - символ подчеркивания;
«{}» - фигурные скобки;
«[]» - квадратные скобки;
«()» - круглые скобки;
«#» - символ решетки;
«+» - плюс;
«-» - минус (дефис);
«.» – точка;
«!» - восклицательный знак.
Автоматические ссылки Markdown поддерживает упрощённый порядок автоматического создания ссылок для URL-адресов и адресов электронной почты. Для этого достаточно поместить URL-адрес или почтовый адрес в угловые скобки, и Markdown сделает его гиперссылкой. В отличие от вышеописанных стилей, в данном случае сам же URL-адрес или почтовый адрес становится и текстом гиперссылки. Автоматические ссылки на адреса электронной почты работают аналогично. Автоматические ссылки в языке Markdown выглядят следующим образом
http://example.com/ В результате на экран выводится следующее: http://example.com/
Автоматическая ссылка на адрес электронной почты в Markdown выглядит следующим образом
address@example.com В результате на экран выводится следующее: address@example.com
Специальные символы HTML В языке HTML существует два символа, требующих специального рассмотрения: это символы («<») и («&»). Левая угловая скобка используется как начало тэга; амперсанды применяются для обозначения специального символа HTML. Для того чтобы использовать эти символы в их буквальном смысле, необходимо заменить их элементами HTML, а именно < и & соответственно. При использовании Markdown подобных действий совершать не нужно. Он позволяет использовать эти символы в исходном виде. В случае если амперсанд используется как часть спецсимвола HTML, он останется неизменным. В противном случае Markdown преобразует его в &.
HTML В любой момент можно вставить кусок html и не париться.
Тег. Внутри тега markdown **игнорируется**.
В любой момент можно вставить кусок html и не париться.
Тег. Внутри тега markdown игнорируется.
Цитаты Для обозначения цитат достаточно поставить знак > в начале строки.
«Зимний вечер», А.С.Пушкин
[comment]: <> (This is a comment, it will not be included)
[comment]: <> (in the output file unless you use it in)
[comment]: <> (a reference style link.)
[//]: <> (This is also a comment.)
[//]: # (This may be the most platform independent comment)
Расширение Parsedown, которое добавляет расширенные возможности Markdown.
Header 1 {#header1}
========
## Header 2 ## {#header2}
## The Site ## {.main}
## The Site ## {.main .shine #the-site}
[link](http://parsedown.org) {.primary #link .upper-case}
 {#logo .big}
Результат:
<h1 id="header1">Header 1</h1>
<h2 id="header2">Header 2</h2>
<h2 class="main">The Site</h2>
<h2 id="the-site" class="main shine">The Site</h2>
<p><a href="http://parsedown.org" id="link" class="primary upper-case">link</a></p>
<p><img src="/md.png" alt="logo" id="logo" class="big" /></p>
<div class="example" markdown="1">
_markdown_
This is another paragraph. It contains <em>inline markup</em>.
<div>
_no markdown_
</div>
</div>
---
<div markdown="1">
_markdown_
<div markdown="1">
_markdown_
</div>
</div>
---
<div>
_no markdown_
<div markdown="1">
_markdown_
</div>
</div>
---
<div markdown="0">
_no markdown_
</div>
Результат:
<div class="example">
<p><em>markdown</em></p>
<p>This is another paragraph. It contains <em>inline markup</em>.</p>
<div>
_no markdown_
</div>
</div>
<hr />
<div>
<p><em>markdown</em></p>
<div>
<p><em>markdown</em></p>
</div>
</div>
<hr />
<div>
_no markdown_
<div>
<p><em>markdown</em></p>
</div>
</div>
<hr />
<div markdown="0">
_no markdown_
</div>
first [^1] second [^2].
[^1]: one
[^2]: two
first [^a] second [^b].
[^a]: one
[^b]: two
second time [^1]
Результат:
<p>first <sup id="fnref1:1"><a href="#fn:1" class="footnote-ref">1</a></sup> second <sup id="fnref1:2"><a href="#fn:2" class="footnote-ref">2</a></sup>.</p>
<p>first <sup id="fnref1:a"><a href="#fn:a" class="footnote-ref">3</a></sup> second <sup id="fnref1:b"><a href="#fn:b" class="footnote-ref">4</a></sup>.</p>
<p>second time <sup id="fnref2:1"><a href="#fn:1" class="footnote-ref">1</a></sup></p>
<div class="footnotes">
<hr />
<ol>
<li id="fn:1">
<p>one <a href="#fnref1:1" rev="footnote" class="footnote-backref">↩</a> <a href="#fnref2:1" rev="footnote" class="footnote-backref">↩</a></p>
</li>
<li id="fn:2">
<p>two <a href="#fnref1:2" rev="footnote" class="footnote-backref">↩</a></p>
</li>
<li id="fn:a">
<p>one <a href="#fnref1:a" rev="footnote" class="footnote-backref">↩</a></p>
</li>
<li id="fn:b">
<p>two <a href="#fnref1:b" rev="footnote" class="footnote-backref">↩</a></p>
</li>
</ol>
</div>
footnote [^1] and another one [^2]
[^1]: line 1
line 2
> quote
another paragraph
[^2]:
paragraph
another paragraph
Результат:
<p>footnote <sup id="fnref1:1"><a href="#fn:1" class="footnote-ref">1</a></sup> and another one <sup id="fnref1:2"><a href="#fn:2" class="footnote-ref">2</a></sup></p>
<div class="footnotes">
<hr />
<ol>
<li id="fn:1">
<p>line 1
line 2</p>
<blockquote>
<p>quote</p>
</blockquote>
<p>another paragraph <a href="#fnref1:1" rev="footnote" class="footnote-backref">↩</a></p>
</li>
<li id="fn:2">
<p>paragraph</p>
<p>another paragraph <a href="#fnref1:2" rev="footnote" class="footnote-backref">↩</a></p>
</li>
</ol>
</div>
Term 1
: one
: two
extra line
Term 2
: lazy
line
: multiple
paragraphs
: nested
code block
> quote
> block
Результат:
lazy line
multiple
paragraphs
nested
code block
<dl>
<dt>Term 1</dt>
<dd>one</dd>
<dd>two
extra line</dd>
<dt>Term 2</dt>
<dd>
<p>lazy
line</p>
</dd>
<dd>
<p>multiple</p>
<p>paragraphs</p>
</dd>
<dd>
<p>nested</p>
<pre><code>code block</code></pre>
<blockquote>
<p>quote
block</p>
</blockquote>
</dd>
</dl>