Inline styles
color, background, font-size — Markdown has no equivalent. They're dropped silently. If the styling carries semantic meaning, capture it as text or HTML before converting.
The converter uses Turndown with the GFM plugin, so structural HTML round-trips faithfully — code blocks keep their language, tables keep their alignment, lists keep their depth. Inline styles and visual decoration don’t carry through, by design.
# ... ######), fenced code blocks (```language), - for bullets, inline link style.<div>/<section>, iframes, forms, data-* attributes, CSS classes..math-inline, .katex, and .katex-display spans, converting back to $ ... $ / $$ ... $$.Headings
<h1>–<h6> → # to ######
Paragraphs
<p> → blank-line separated text
Lists
<ul>/<ol> → -/1., nested cleanly
Code blocks
<pre><code class='language-x'> → ```x fences with the language preserved
Inline code
<code> → backticks
Links
<a href> → [text](url) — title attribute kept where present
Images
<img src alt> → 
Tables
<table> → GFM pipe tables, alignment honored
Bold / italic
<strong>/<em> → **bold** / *italic*
Blockquotes
<blockquote> → > prefix, nested where applicable
Horizontal rules
<hr> → ---
color, background, font-size — Markdown has no equivalent. They're dropped silently. If the styling carries semantic meaning, capture it as text or HTML before converting.
Plain <div> and <section> get unwrapped — their children survive, the container doesn't. <article> and semantic landmarks behave the same way.
<iframe>, <video>, <object> have no Markdown equivalent. The converter strips them. If you need them in the output, leave the page as HTML or use a static HTML export.
<form>, <input>, <button> get dropped. Markdown isn't an interactive format.
data-* attributes don't survive. They're metadata for JS, not content.
Tailwind classes, BEM, and CSS modules are all just strings to the converter — no styling carries through. Markdown styling is structural, not visual.
Moving from WordPress to a markdown-based static site? Paste each post's HTML, copy the resulting Markdown, drop into your repo.
Save a clean, portable version of an article. Strip ads, sidebars, and theme noise — keep the prose.
Inherited an HTML doc set? Round-trip it to Markdown for cleaner diffs in version control.
Many LLMs handle Markdown better than raw HTML. Pre-convert before pasting into a long-context prompt.
The cleaner the HTML in, the cleaner the Markdown out. If you’re grabbing from a live web page, open DevTools, find the article body in the Elements panel, right-click and Copy → Copy outerHTML. That gives you just the prose, none of the navigation, ads, or theme wrappers — and the resulting Markdown will be near-publishable.
Switch to HTML Input, paste, watch the Markdown render. Re-export as DOCX or PDF if you need the document form.
Open the converter