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.
- [x] 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.
Content above
---
Content below
***
More content
___
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.
\*literal asterisks\*
\# Not a heading
\[Not a link\](https://example.com)
3\. Not a numbered list
\`Not inline code\`
*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.
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
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.
Term 1
: Definition of term 1
Term 2
: Definition of term 2
: Another definition of term 2
Term 3
: Definition of term 3
- 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.
Inline equation: $E = mc^2$
Block equation:
$$
\frac{d}{dx}\left( \int_{0}^{x} f(u),du\right)=f(x)
$$
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.
Additional Resources
Explore other Markdown elements that work well with these advanced features:
Related Markdown Elements
External Resources
Learn more about advanced Markdown features from these resources:
Additional Resources
Related Markdown Elements
Explore other Markdown elements that work well with these advanced features:
External Resources
Learn more about advanced Markdown features from these resources: