Advanced Markdown Features

Learn about specialized Markdown syntax and extended features

Beyond Basic Markdown

While the core Markdown syntax covers most document formatting needs, many Markdown flavors and processors support additional features for specialized use cases. These advanced features can help you create more interactive, structured, and visually appealing content. They work alongside paragraphs, headers, and other basic elements.

Note that support for these advanced features varies across different Markdown processors and platforms. You can try many of these features in our Markdown Editor to see which ones are supported.

Task Lists / Checkboxes

Task lists (also called checklists or todo lists) allow you to create interactive checkboxes in your Markdown documents. They're especially useful for project management, tracking progress, and creating interactive to-do lists. This feature is supported in GitHub, GitLab, and many other Markdown processors.

Markdown
- [x] Completed task
- [ ] Incomplete task
- [ ] Another task to do
Rendered Output
Completed task
Incomplete task
Another task to do

Usage Tips

  • Task lists can be nested inside lists by adding proper indentation
  • You can use task lists in issues, pull requests, and comments on GitHub
  • Some Markdown editors allow you to click the checkboxes to toggle their state
  • Task lists can be combined with other Markdown elements like bold or italic text

Horizontal Rules

Horizontal rules (also called horizontal lines or dividers) help you visually separate different sections of your document. They create a thematic break between paragraphs or content blocks. In Markdown, you can create horizontal rules using three or more hyphens, asterisks, or underscores on a line by themselves.

Markdown
Content above

---

Content below

***

More content

___
Rendered Output

Content above


Content below


More content

Usage Tips

  • Always add blank lines before and after horizontal rules for better readability
  • You can use any of these three formats: ---, ***, or ___
  • You can use more than three characters (e.g., -----)
  • Spaces between the characters are allowed (e.g., - - -)
  • Be careful not to confuse horizontal rules with headers - if you put --- directly under text, it will create a heading instead

Escaping Characters

Sometimes you want to use characters that Markdown treats as formatting syntax (like asterisks or underscores) as literal characters. To display these characters as regular text instead of formatting, you can escape them by adding a backslash (\) before the character.

Markdown
\*literal asterisks\*

\# Not a heading

\[Not a link\](https://example.com)

3\. Not a numbered list

\`Not inline code\`
Rendered Output

*literal asterisks*

# Not a heading

[Not a link](https://example.com)

3. Not a numbered list

`Not inline code`

Characters You Can Escape

You can escape the following characters in Markdown:

\\
\`
\*
\_
{
}
\[
\]
\(
\)
\#
\+
\-
\.
\!
\|

HTML in Markdown

Many Markdown processors allow you to use HTML tags directly in your Markdown documents. This is useful when you need more control over formatting or want to use features that aren't available in standard Markdown syntax. You can use HTML for creating complex layouts, adding custom styling, or embedding interactive elements.

Markdown
Some standard markdown text

<div style="color: red; padding: 10px; border: 1px solid #ccc;">
<h3>Custom HTML Content</h3>
<p>This is styled with HTML</p>
</div>

Back to regular markdown
Rendered Output

Some standard markdown text

Custom HTML Content

This is styled with HTML

Back to regular markdown

Important Considerations

  • HTML support varies across different Markdown processors - some may restrict certain tags or attributes
  • Markdown syntax doesn't work inside HTML blocks unless the processor specifically allows it
  • For security reasons, some platforms may sanitize or strip HTML tags
  • Use blank lines before and after HTML blocks to ensure proper rendering
  • HTML in Markdown is especially useful for tables with complex formatting, detailed forms, or custom layouts

Definition Lists

Definition lists allow you to create a list of terms and their corresponding definitions. This format is particularly useful for glossaries, dictionaries, or any content where you need to explain terminology. Definition lists are supported in several Markdown flavors including PHP Markdown Extra and Pandoc.

Markdown
Term 1
: Definition of term 1

Term 2
: Definition of term 2
: Another definition of term 2

Term 3
: Definition of term 3
Rendered Output
Term 1
Definition of term 1
Term 2
Definition of term 2
Another definition of term 2
Term 3
Definition of term 3

Usage Tips

  • Definition lists are not part of the core Markdown specification, so support varies across processors.
  • Each term should be on a single line, followed by one or more definitions.
  • Each definition starts with a colon and a space (: ) on a new line.
  • For better compatibility, consider using HTML <dl>, <dt>, and <dd> tags if your Markdown processor doesn't support definition lists.

Mathematics/LaTeX Support

Many Markdown processors support mathematical expressions using LaTeX syntax, which is particularly useful for scientific, technical, or academic writing. This allows you to include complex equations and mathematical notation in your documents. Popular implementations include MathJax and KaTeX.

Markdown
Inline equation: $E = mc^2$

Block equation:

$$
\frac{d}{dx}\left( \int_{0}^{x} f(u),du\right)=f(x)
$$
Rendered Output

Inline equation: E = mc2

The Fundamental Theorem of Calculus:

d/dx(∫0x f(u)du) = f(x)

Usage Tips

  • Use single dollar signs ($....$) for inline math expressions that appear within a paragraph.
  • Use double dollar signs ($$....$$) for block-level math expressions that appear on their own line.
  • LaTeX syntax is used for writing the mathematical expressions, which provides a wide range of mathematical notations.
  • For complex documents with many equations, consider using a Markdown processor specifically designed for scientific content, such as Pandoc with MathJax.
  • Note that not all Markdown environments support math expressions by default. Some may require additional configuration or extensions.

Try Advanced Markdown Features

Experiment with these advanced Markdown features in our interactive editor.

Got Feedback? 📢