Формат Markdown прост в освоении, но беден нюансами оформления текста. Собственно говоря, это не его задача — для этого существуют более продвинутые форматы. Но если все же хочется совместить простоту Markdown и немного тех самых нюансов? Добиться этого можно, помещая в Markdown-документ фрагменты оформления в целевом формате. Например, если вы хотите получить из Markdown LaTeX-овский файл, то и включайте в Markdown куски разметки на LaTeX. Мы уже рассматривали этот подход здесь и здесь. Сейчас поговорим о том, как дооформить в Markdown будущие веб-страницы: ситуация обычная для статических генераторов сайтов, вроде используемого мною Pelican.
Обтекаемый рисунок
Обтекаемый текстом рисунок расположен слева от абзаца:
![Caption](./images/myimage.png "alt text"){ align=left }
Текст абзаца.
Важно:
- Рисунок непосредственно примыкает к тексту абзаца (без пустых строк, которые будут разрывать абзацы).
- Атрибут
align
, а неfloat
. - Несмотря на наличие фигурных скобок, атрибуты задаются как в HTML (через
=
), а не как в CSS.
Установка размеров изображений
Используем атрибуты height
и width
. Принцип тот же, что и выше:
![Caption](./images/myimage.png){ width=250px }
или
![Caption](./images/myimage.png){ height=256px }
Результат преобразования Markup -> HTML будет выглядеть как
<img src="./images/myimage.png" alt="Caption" style="width: 250px;"/>
и
<img src="./images/myimage.png" alt="Caption" style="height: 256px;"/>
Атрибут rel='nofollow'
Иногда нужно указать роботу поискового сервиса, чтобы он не покидал ваш сайт по ссылке. Делается это с помощью атрибута rel='nofollow'
тега <a>
:
[Bootstrap3](https://github.com/getpelican/pelican-themes/tree/master/pelican-bootstrap3){rel="nofollow"}
Выравнивание рисунков в Bootstrap3
Для выравнивания рисунка по центру в Bootstrap3 существует класс .center-block
:
<img src="./images/myimage.png" alt="alt text" class="img-responsive center-block" />
Чтобы использовать его, передадим в Markdown сведения о классе данного рисунка:
![]({filename}/path/to/image.jpg){class="img-responsive center-block"}
Для выравнивания по правому краю существует класс class="img-responsive pull-right"
.
Все это можно было бы легко сделать и без Bootstrap3. Например, так
<div style="text-align:center">Текст, выровненный по центру.</div>
и
<div style="text-align:center">
![Alt Text](/path/to/image "Caption")
</div>
Но если Bootstrap3 уже установлен как тема по умолчанию, зачем плодить новые стили?
Подпись под рисунком
можно реализовать с помощью класса .text-center
из Bootstrap3:
<div class="text-center">Текст подписи</div>
Разрыв строки
В месте разрыва ставим <br/>
.
Размер шрифта
<div style="font-size: 80%;">Шрифт размера 80% от обычного.</div>
Автоматическое содержание в Pelican
Реализуется с помощью расширения Markdown (toc). Это расширение нужно подключить, указав в конфигурационном файле pelicanconf.py
:
MARKDOWN = {
'extension_configs': {
'markdown.extensions.codehilite': {'css_class': 'highlight'},
'markdown.extensions.extra': {},
'markdown.extensions.meta': {},
'markdown.extensions.toc': {},
},
'output_format': 'html5',
}
В текст статьи (файл *.md) содержание включается при помощи [TOC]
.
Сноски
Footnotes[^1] have a label[^@#$%] and the footnote's content.
[^1]: This is a footnote content.
[^@#$%]: A footnote on the label: "@#$%".
Внутренние ссылки
Цель гиперссылки (якорь) помечается как <a name="foo"/>
, т. е. используется обычный HTML. Сама ссылка, реализуется средствами Markdown:
[Переход к ссылке foo](#foo)
Комментарии
comments powered by Disqus