w

Advanced Features

The Markdown to HTML Converter offers powerful advanced features for professional content creation and development workflows.

GitHub Flavored Markdown (GFM)

Enable GitHub Flavored Markdown to access extended Markdown features used on GitHub:

Task Lists

Create interactive checkbox lists:

- [x] Completed task
- [ ] Pending task
- [x] Another completed task
- [ ] Another pending task

Output:

  • Completed task
  • Pending task
  • Another completed task
  • Another pending task

Strikethrough

Add strikethrough formatting to text:

~~This text is crossed out~~

Output: This text is crossed out

Tables

Create formatted tables with alignment:

| Feature | Support | Description          |
| ------- | :-----: | -------------------- |
| Headers |   ✅    | H1-H6 headers        |
| Lists   |   ✅    | Ordered/unordered    |
| Code    |   ✅    | Inline and blocks    |
| Links   |   ✅    | Inline and reference |

Automatic URL and email detection:

https://example.com
user@example.com

Advanced Formatting Options

Line Breaks

Control how line breaks are handled:

  • Disabled: Single line breaks are ignored (standard Markdown)
  • Enabled: Single line breaks become <br> tags
Line 1
Line 2
Line 3

With line breaks enabled, this becomes:

<p>
  Line 1<br />
  Line 2<br />
  Line 3
</p>

HTML Sanitization

Built-in security features to clean potentially dangerous HTML:

What Gets Sanitized

  • <script> tags and JavaScript code
  • <iframe> elements
  • Event handlers (onclick, onload, etc.)
  • Potentially dangerous attributes

Safe HTML Elements

These HTML elements are preserved:

  • Text formatting: <strong>, <em>, <code>
  • Structure: <div>, <span>, <p>
  • Lists: <ul>, <ol>, <li>
  • Links: <a> (with href validation)
  • Images: <img> (with src validation)

Output Format Options

HTML vs XHTML

Standard HTML

<br />
<img src="image.jpg" alt="Description" />
<hr />

XHTML

<br />
<img src="image.jpg" alt="Description" />
<hr />

Encoding Options

  • Full Unicode support
  • International characters
  • Emojis and symbols

ASCII

  • Basic Latin characters only
  • No special characters
  • Maximum compatibility

Latin-1

  • Western European characters
  • Limited Unicode support
  • Legacy system compatibility

Code Highlighting

The converter supports syntax highlighting for multiple languages:

Supported Languages

  • JavaScript, TypeScript, Python, Java, C++, C#
  • HTML, CSS, SCSS, Less
  • JSON, XML, YAML, Markdown
  • SQL, Bash, PowerShell
  • And many more...

Usage

```javascript
function fibonacci(n) {
  if (n <= 1) return n;
  return fibonacci(n - 1) + fibonacci(n - 2);
}
```
def fibonacci(n):
    if n <= 1:
        return n
    return fibonacci(n - 1) + fibonacci(n - 2)

## Advanced Table Features

### Column Alignment
```markdown
| Left | Center | Right |
|:-----|:------:|------:|
| Text | Text   | Text  |

Complex Tables

| Feature           | Status | Notes              |
| ----------------- | :----: | ------------------ |
| Basic Markdown    |   ✅   | Full support       |
| GFM Extensions    |   ✅   | Tables, task lists |
| Code Highlighting |   ✅   | 50+ languages      |
| HTML Sanitization |   ✅   | Security enabled   |

Blockquotes and Nested Content

Simple Blockquotes

> This is a blockquote.
> It can span multiple lines.

Nested Blockquotes

> This is a blockquote.
>
> > This is a nested blockquote.
> > It can contain other elements.
>
> Back to the main blockquote.

Blockquotes with Other Elements

> ## Blockquote with Header
>
> This blockquote contains:
>
> - A list item
> - Another list item
>
> ```javascript
> console.log('Code in blockquote');
> ```
[Link text][1]
[Another link][2]

[1]: https://example.com 'Optional title'
[2]: https://github.com 'GitHub'

Image with Title

![Alt text](image.jpg 'Image title')
<https://example.com>
<user@example.com>

Mathematical Expressions

While not all Markdown parsers support math, the converter can handle basic mathematical notation:

Inline math: E = mc²

Block math:

x = (-b ± √(b² - 4ac)) / 2a

Custom HTML Integration

You can mix Markdown with HTML for advanced formatting:

# Markdown Header

<div class="custom-box">
This is **HTML content** with *Markdown* formatting.
</div>

- List item 1
- List item 2

Performance Optimization

Large Documents

  • The converter handles documents up to 1MB
  • Real-time conversion for documents under 100KB
  • Batch processing for larger documents

Memory Management

  • Efficient parsing algorithms
  • Minimal memory footprint
  • Fast conversion times

Browser Integration

Copy to Clipboard

  • One-click HTML copying
  • Preserves formatting
  • Works across all modern browsers

Download Options

  • HTML file download
  • Custom filename generation
  • Proper MIME type handling

API Integration

For developers, the converter can be integrated into applications:

JavaScript API

// Convert Markdown to HTML
const html = await convertMarkdown(markdownText, {
  gfm: true,
  breaks: false,
  sanitize: true,
});

Configuration Options

const options = {
  outputFormat: 'html', // or 'xhtml'
  encoding: 'utf8', // or 'ascii', 'latin1'
  sanitize: true, // HTML sanitization
  gfm: true, // GitHub Flavored Markdown
  breaks: false, // Line break handling
};

Best Practices

1. Use Semantic HTML

  • Prefer Markdown over raw HTML when possible
  • Use proper heading hierarchy (H1 → H2 → H3)
  • Include alt text for images

2. Security Considerations

  • Always enable HTML sanitization for user content
  • Validate links and images
  • Be cautious with custom HTML

3. Performance Tips

  • Use reference-style links for repeated URLs
  • Optimize images before embedding
  • Consider document size for real-time conversion

Troubleshooting Advanced Features

Issue: Tables Not Rendering

Solution: Ensure proper table syntax with pipes and alignment:

| Header 1 | Header 2 |
| -------- | -------- |
| Cell 1   | Cell 2   |

Issue: Code Highlighting Not Working

Solution: Specify the language after the opening backticks:

```javascript
// Code here
```

### Issue: Task Lists Not Interactive
**Solution**: Enable GitHub Flavored Markdown in settings:
- Check the "GitHub Flavored Markdown" option
- Use proper checkbox syntax: `- [ ]` or `- [x]`

## Next Steps

Explore more advanced topics:
- [Security Considerations](/docs/core/markdown-to-html/security-considerations)
- [API Reference](/docs/core/markdown-to-html/api-reference)
- [Examples](/docs/core/markdown-to-html/examples)
Was this page helpful?