ToolDeck

HTML to Markdown

Converteer HTML naar Markdown-formaat

Probeer een voorbeeld

HTML-invoer

Markdown-uitvoer

Draait lokaal · Veilig om secrets te plakken
Markdown-uitvoer verschijnt hier…

Wat is HTML naar Markdown-conversie?

HTML naar Markdown-conversie zet HTML-opmaak om naar Markdown, een lichtgewicht platte-tekstopmaaksyntaxis die John Gruber in 2004 ontwikkelde. Markdown is ontworpen om leesbaar te zijn zonder rendering. Waar HTML openings- en sluitingstags vereist zoals <strong> en <a href="">, gebruikt Markdown verkorte tekens: **vet**, [links](url) en # koppen. Het converteren van HTML naar Markdown levert bestanden op die gemakkelijker te lezen, bewerken en versiebeheren zijn dan ruwe HTML.

Het conversieproces wijst HTML-elementen toe aan hun Markdown-equivalenten. Een <h2> wordt ##, een <ul><li> wordt - item, en een <a>-tag wordt [tekst](url). Sommige HTML-elementen hebben geen direct Markdown-equivalent, zoals <div>, <span> of aangepaste data-attributen. Converters verwijderen deze tags doorgaans of laten ze als ruwe HTML door, afhankelijk van de configuratie.

Markdown is de standaard schrijfindeling geworden voor ontwikkelaarsdocumentatie (GitHub, GitLab, Bitbucket), statische sitegeneratoren (Hugo, Jekyll, Astro), notitie-apps (Obsidian, Notion) en technische blogs. Bestaande HTML-inhoud omzetten naar Markdown is een gebruikelijke stap bij het migreren van websites, importeren van CMS-inhoud of archiveren van webpagina's in een draagbaar formaat. Anders dan HTML produceren Markdown-bestanden overzichtelijke diffs in versiebeheer, waardoor code-review van documentatiewijzigingen praktisch is.

Waarom een HTML naar Markdown-converter gebruiken?

HTML handmatig herschrijven als Markdown is traag en foutgevoelig, zeker voor pagina's met geneste lijsten, tabellen of tientallen links. Een geautomatiseerde converter verwerkt de structuurkoppeling direct en consistent.

Direct converteren in uw browser
Plak HTML en ontvang Markdown-uitvoer in milliseconden. Geen round-trip naar de server, geen wachten op verwerkingswachtrijen. De conversie draait volledig in uw browser via JavaScript.
🔒
Uw gegevens blijven privé
Uw HTML verlaat uw apparaat nooit. Alle verwerking vindt plaats aan de clientzijde, dus er is geen upload, geen logging en geen toegang van derden tot uw inhoud.
📝
Documentstructuur behouden
Koppen, lijsten, links, afbeeldingen, codeblokken en tabellen worden gekoppeld aan hun correcte Markdown-equivalenten. Geneste structuren en inline-opmaak worden recursief verwerkt.
🔀
Geen account of installatie vereist
Open het hulpmiddel en begin met converteren. Er is niets te installeren, geen API-sleutel te configureren en geen aanmeldingsformulier. Werkt op elk apparaat met een moderne browser.

Toepassingen van HTML naar Markdown

Frontend-ontwikkelaar: CMS-migratie
Exporteer blogberichten of pagina's uit WordPress, Drupal of een headless CMS als HTML en converteer ze naar Markdown voor gebruik met statische sitegeneratoren zoals Next.js, Astro of Hugo.
Backend-engineer: API-documentatie
Converteer automatisch gegenereerde HTML API-documentatie naar Markdown-bestanden die naast uw broncode leven. Markdown-documentatie integreert met GitHub-rendering en kan samen met de beschreven code worden versiebeheerd.
DevOps: Runbook-conversie
Zet interne wikipagina's (Confluence, SharePoint) die als HTML zijn geëxporteerd om naar Markdown-runbooks die in uw Git-repository worden opgeslagen naast de infrastructuurcode die ze beschrijven.
QA-engineer: Testcasedocumentatie
Converteer HTML-testrapporten of handmatige testplannen uit webgebaseerde hulpmiddelen naar Markdown-bestanden die in pull requests kunnen worden beoordeeld naast de codewijzigingen die ze verifiëren.
Data-engineer: Webscraping opschonen
Verwijder HTML-boilerplate van gescrapte webpagina's en produceer schone Markdown-tekst. Dit verwijdert navigatie, advertenties en opmaakmarkup terwijl de artikelinhoud en -structuur behouden blijven.
Student: Onderzoeksaantekeningen
Kopieer inhoud van webbronnen en converteer de HTML naar Markdown voor import in Obsidian, Notion of elk Markdown-gebaseerd notitiesysteem. Koppen, links en opmaak blijven behouden.

HTML naar Markdown-elementreferentie

De tabel hieronder toont hoe veelgebruikte HTML-elementen worden gekoppeld aan hun Markdown-equivalenten. Deze koppeling volgt de GitHub-Flavored Markdown (GFM)-conventies, die de CommonMark-specificatie uitbreiden met tabellen, doorhaling en takenlijsten. Elementen die hier niet worden vermeld (zoals <div>, <form> of aangepaste webcomponenten) hebben geen Markdown-equivalent en worden ofwel verwijderd of als ruwe HTML doorgelaten.

HTML-elementMarkdown-syntaxisOpmerkingen
<h1>...<h6># ... ######ATX headings, level matches tag number
<p>Blank line separationDouble newline between paragraphs
<strong>, <b>**text**Bold / strong emphasis
<em>, <i>*text*Italic / emphasis
<a href="url">[text](url)Inline link with optional title
<img src="url">![alt](url)Image with alt text
<ul><li>- itemUnordered list with dash or asterisk
<ol><li>1. itemOrdered list, numbers restart per block
<blockquote>> textBlock quote, nestable with >>
<code>`code`Inline code span
<pre><code>```lang\ncode\n```Fenced code block with optional language
<hr>---Horizontal rule (three dashes)
<table>| col | col |GFM table syntax with alignment
<del>, <s>~~text~~Strikethrough (GFM extension)

Markdown-varianten: GFM vs CommonMark vs origineel

Niet alle Markdown is hetzelfde. Het uitvoerformaat is belangrijk omdat verschillende platforms Markdown anders verwerken. De drie meest voorkomende varianten zijn GitHub-Flavored Markdown (GFM), CommonMark en Grubers originele Markdown.

GitHub-Flavored Markdown (GFM)
De meest gebruikte variant. Voegt tabellen (pipe-syntaxis), doorhaling (~~tekst~~), takenlijsten (- [x]) en automatisch gekoppelde URL's toe. Gebruikt door GitHub, GitLab en de meeste ontwikkelaarshulpmiddelen. Deze converter produceert standaard GFM-compatibele Markdown.
CommonMark
Een strikte specificatie die ambiguïteiten in de originele Markdown-syntaxis oplost. Definieert exacte regels voor lijstvervolg, nadrukparsering en nesting op blokniveau. Gebruikt als basis voor GFM en veel statische sitegeneratoren.
Originele Markdown
John Grubers specificatie uit 2004. Ondersteunt geen tabellen, omheinde codeblokken of doorhaling. De meeste moderne hulpmiddelen behandelen het als een subset van CommonMark. Wordt zelden als doelformaat gebruikt tegenwoordig.

Codevoorbeelden

Werkende voorbeelden in JavaScript (Turndown), Python (markdownify en html2text), Go en Pandoc op de opdrachtregel.

JavaScript (Turndown)
import TurndownService from 'turndown'

const turndown = new TurndownService({ headingStyle: 'atx' })
const html = '<h1>Title</h1><p>A <strong>bold</strong> paragraph.</p>'
const md = turndown.turndown(html)
console.log(md)
// → "# Title\n\nA **bold** paragraph."
Python (markdownify)
from markdownify import markdownify

html = '<h2>Section</h2><ul><li>First</li><li>Second</li></ul>'
md = markdownify(html, heading_style='ATX')
print(md)
# → "## Section\n\n- First\n- Second"
Python (html2text)
import html2text

converter = html2text.HTML2Text()
converter.body_width = 0  # disable line wrapping

html = '<p>Visit <a href="https://example.com">Example</a> for details.</p>'
md = converter.handle(html)
print(md)
# → "Visit [Example](https://example.com) for details."
Go (html-to-markdown)
package main

import (
	"fmt"
	md "github.com/JohannesKaufmann/html-to-markdown"
)

func main() {
	converter := md.NewConverter("", true, nil)
	html := `<h3>Go Example</h3><p>Code: <code>fmt.Println()</code></p>`
	markdown, _ := converter.ConvertString(html)
	fmt.Println(markdown)
	// → "### Go Example\n\nCode: `fmt.Println()`"
}
CLI (Pandoc)
# Convert an HTML file to Markdown
pandoc input.html -f html -t markdown -o output.md

# Pipe HTML from stdin
echo '<p>Hello <em>world</em></p>' | pandoc -f html -t markdown
# → Hello *world*

# Use GitHub-Flavored Markdown output
pandoc input.html -f html -t gfm -o output.md

Veelgestelde vragen

Welke HTML-elementen kunnen niet naar Markdown worden geconverteerd?
Markdown heeft geen equivalent voor <div>, <span>, <form>, <input>, <iframe> of elementen met aangepaste CSS-klassen en stijlen. De meeste converters verwijderen deze tags en bewaren alleen de binnenste tekst. Sommige converters kunnen niet-ondersteunde HTML ongewijzigd doorlaten, wat geldig is omdat de Markdown-specificatie inline HTML expliciet toestaat. Als u die elementen wilt bewaren, configureer dan uw converter om ruwe HTML te bewaren in plaats van te verwijderen.
Hoe worden HTML-tabellen naar Markdown geconverteerd?
HTML-tabellen worden omgezet naar GFM pipe-tabelsyntaxis: | Koptekst | Koptekst | met een scheidingsrij | --- | --- |. GFM-tabellen ondersteunen geen colspan, rowspan of opmaak op celniveau. Complexe tabellen met samengevoegde cellen worden afgevlakt, waardoor structurele informatie verloren kan gaan. Voor eenvoudige gegevenstabellen is de conversie verliesvrij.
Is de conversie van HTML naar Markdown verliesvrij?
Nee. Markdown is een subset van HTML, dus bij conversie gaat altijd enige informatie verloren. CSS-klassen, inline stijlen, data-attributen, formulierelementen en semantische tags zoals <article> of <section> hebben geen Markdown-equivalent. De tekstinhoud en basisstructuur (koppen, lijsten, links, nadruk) worden nauwkeurig bewaard. Voor de meeste documentatie- en inhoudsmigratieworkflows zijn de bewaarde elementen de relevante.
Wat is het verschil tussen HTML naar Markdown en HTML naar platte tekst?
HTML naar platte tekst verwijdert alle opmaak en produceert ruwe tekst zonder structuur. HTML naar Markdown behoudt de documentstructuur: koppen blijven koppen, links behouden hun URL's, lijsten blijven lijsten en nadruk blijft behouden. De Markdown-uitvoer kan worden teruggezet naar HTML met dezelfde logische structuur.
Kan ik Markdown terugconverteren naar HTML?
Ja. Elke Markdown-verwerker (marked, markdown-it, Python-Markdown, goldmark) converteert Markdown naar HTML. Deze round-trip is een van de redenen waarom Markdown populair is: u schrijft in een leesbaar formaat en rendert naar HTML voor het web. De round-trip is niet perfect symmetrisch omdat HTML-naar-Markdown-conversie niet-ondersteunde elementen weggooit.
Hoe gaat de converter om met HTML met inline CSS of JavaScript?
Inline CSS (stijlattributen) en <style>-blokken worden tijdens de conversie verwijderd, omdat Markdown geen opmaaksyntaxis heeft. JavaScript (<script>-tags en gebeurtenisafhandelaars zoals onclick) wordt ook verwijderd. De converter extraheert alleen de documentinhoud en -structuur. Dit maakt HTML-naar-Markdown-conversie een nuttige opschoningsstap bij het importeren van niet-vertrouwde HTML-inhoud in uw documentatie.
Welke Markdown-variant moet ik voor mijn project gebruiken?
Gebruik GitHub-Flavored Markdown (GFM) als uw inhoud wordt bekeken op GitHub, GitLab of de meeste documentatieplatforms. Gebruik CommonMark als u strikte specificatienaleving en voorspelbare verwerking over verschillende renderers nodig heeft. Originele Markdown is alleen relevant voor legacy-systemen. GFM is de veiligste standaardkeuze voor de meeste projecten.