Konwerter HTML na Markdown
Konwertuj HTML na czysty Markdown w przeglądarce — tabele GFM, listy zadań i linki. Wybierz nagłówki ATX/Setext oraz linki inline lub referencyjne. Idealne do migracji treści webowej lub zasilania LLM. 100% prywatnie.
Własny CSS
Nasz zespół weryfikuje konwersję HTML na Markdown względem specyfikacji CommonMark i specyfikacji GitHub Flavored Markdown, model przejdź-DOM-następnie-serializuj używany przez konwertery w stylu turndown, cztery mapowania GFM (tabele, listy zadań, przekreślenia, automatyczne linki), stratną i nieodwracalną naturę HTML → Markdown oraz opcje stylu ATX/Setext i inline/referencyjne.
Czym jest konwersja HTML na Markdown?
Konwersja HTML na Markdown bierze wyrenderowany dokument HTML — znaczniki, atrybuty i zagnieżdżenie, które przeglądarka wyświetla — i przepisuje go jako Markdown, lekki format zwykłego tekstu stworzony do pisania i kontroli wersji. Tam, gdzie Markdown na HTML rozwija zwięzły tekst w znacznik do wyświetlenia, to jest kierunek odwrotny i redukcyjny: zaczynasz od bogatego, rozwlekłego HTML i destylujesz go do małego, czytelnego zestawu konwencji, które oferuje Markdown.
Pod maską konwerter parsuje Twój HTML do drzewa DOM — tej samej struktury węzłów, którą buduje przeglądarka — a następnie przechodzi to drzewo i emituje odpowiednik Markdown dla każdego rozpoznanego węzła. <h2> staje się ## , <strong> staje się tekst, <ul> staje się listą punktowaną, <a> staje się linkiem, <table> staje się tabelą GFM z kreskami pionowymi. Przechodzenie prawdziwego DOM-u, a nie uruchamianie wyrażeń regularnych na surowym ciągu, to właśnie to, co pozwala mu poprawnie obsługiwać zagnieżdżone listy, mieszane formatowanie inline i tabele, zamiast łamać się na przypadkach brzegowych.
Sięgasz po tę konwersję, gdy migrujesz z HTML, a nie do niego. Treść uwięziona w CMS-ie, edytorze WYSIWYG, starej stronie WWW lub polu tekstu sformatowanego jest trudna do diffowania, trudna do przeglądu i trudna do przeniesienia. Konwersja na Markdown uwalnia ją do formatu, który dobrze żyje w repozytorium Git, generatorze stron statycznych lub aplikacji do notatek — i, coraz częściej, do formatu, który duże modele językowe czytają wydajnie. Haczyk, który uczciwe narzędzia podają wprost, jest taki, że konwersja jest stratna: HTML potrafi wyrazić rzeczy, których Markdown nie potrafi, więc część struktury i każdy detal stylowania są celowo odrzucane w zamian za czysty, przenośny tekst.
Operacja odwrotna — Markdown z powrotem na HTML, gdy jesteś gotów publikować lub podejrzeć — jest równie przydatna. Przełącz się na kartę Markdown → HTML lub otwórz dedykowany konwerter Markdown na HTML.
HTML in:
<h2>Pricing</h2>
<p>Plans start at <strong>$9/mo</strong>. See the <a href="https://example.com/pricing">details</a>.</p>
<table>
<thead><tr><th>Plan</th><th>Price</th></tr></thead>
<tbody><tr><td>Pro</td><td>$9</td></tr></tbody>
</table>
Markdown out:
## Pricing
Plans start at **$9/mo**. See the [details](https://example.com/pricing).
| Plan | Price |
| ---- | ----- |
| Pro | $9 |
<!-- <div>, classes, and inline styles in the source are dropped — Markdown can't represent them. --> Kluczowe funkcje
Wynik świadomy GFM
Celuje w GitHub Flavored Markdown, nie tylko zwykły CommonMark: tabele HTML stają się tabelami z kreskami pionowymi, elementy <li> z polami wyboru stają się listami zadań (- [x]), a <del>/<s> stają się ~~przekreśleniem~~. Markdown wpada prosto do README, zgłoszenia na GitHubie lub strony dokumentacji i renderuje się tak samo.
Nagłówki ATX lub Setext
Wybierz nagłówki ATX poprzedzone krzyżykami (# H1) lub podkreślone nagłówki Setext (=== dla H1, --- dla H2). Setext obejmuje tylko dwa najwyższe poziomy, więc konwerter automatycznie wraca do ATX dla H3 i głębszych — nigdy nie dostaniesz nieprawidłowego nagłówka.
Linki inline lub referencyjne
Przełączaj się między linkami inline — [tekst](url) obok tekstu — a linkami referencyjnymi, które zbierają każdy URL na numerowaną listę u stopy dokumentu. Styl referencyjny utrzymuje czytelność akapitów pełnych linków i pozwala wielokrotnie użyć URL-a po etykiecie.
Bloki kodu w ogrodzeniu
Blok <pre><code> staje się blokiem kodu w ogrodzeniu z potrójnymi grawisami, a klasa language- na elemencie <code> przechodzi jako ciąg informacyjny ogrodzenia. <code> inline staje się elementami w grawisach, więc fragmenty przetrwają podróż w nienaruszonym stanie.
Obsługuje zagnieżdżone listy i tabele
Przechodzi prawdziwy DOM, więc zagnieżdżone struktury <ul>/<ol> konwertują się na poprawnie wcięte listy Markdown, a listy numerowane przenumerowują się od 1. Proste tabele spłaszczają się do tabel z kreskami pionowymi; naprawdę złożone wracają do surowego HTML, zamiast tracić dane.
100% prywatnie, w przeglądarce
Każda konwersja działa lokalnie z użyciem JavaScriptu — Twój HTML i powstały Markdown nigdy nie opuszczają urządzenia, nigdy nie trafiają na serwer i działają offline po wczytaniu strony. Bezpieczne dla wewnętrznych eksportów z CMS-a, treści klientów i niewydanych stron.
Przykłady
Element webowy <table> na tabelę GFM z kreskami pionowymi
<table>
<thead><tr><th>Region</th><th>Sprzedaż</th></tr></thead>
<tbody>
<tr><td>EMEA</td><td>1 204</td></tr>
<tr><td>APAC</td><td>980</td></tr>
</tbody>
</table> | Region | Sprzedaż | | --- | --- | | EMEA | 1 204 | | APAC | 980 |
Zeskrobany lub skopiowany element HTML <table> zwija się do tabeli GitHub Flavored Markdown z kreskami pionowymi. Wiersz <thead> staje się nagłówkiem, wiersz separatora z myślnikami jest generowany za Ciebie, a każdy <tr> staje się jednym wierszem rozdzielonym kreskami — gotowym do wstawienia w README lub stronę dokumentacji.
Linki: styl inline a referencyjny
<p>Przeczytaj <a href="https://example.com/guide">przewodnik konfiguracji</a> oraz <a href="https://example.com/api">dokumentację API</a>.</p>
Inline: Przeczytaj [przewodnik konfiguracji](https://example.com/guide) oraz [dokumentację API](https://example.com/api). Referencyjny: Przeczytaj [przewodnik konfiguracji][1] oraz [dokumentację API][2]. [1]: https://example.com/guide [2]: https://example.com/api
Te same kotwice renderują się na dwa sposoby. Inline trzyma URL obok tekstu; styl referencyjny przenosi każdy URL na numerowaną listę na dole, co utrzymuje długie akapity czytelnymi, gdy zdanie niesie kilka linków. Wybierz styl przełącznikiem Linki.
Zagnieżdżone <ul>/<ol> na wcięte listy Markdown
<ul>
<li>Buduj
<ol>
<li>Kompiluj</li>
<li>Pakuj</li>
</ol>
</li>
<li>Wydaj</li>
</ul> - Buduj 1. Kompiluj 2. Pakuj - Wydaj
Zagnieżdżenie jest zachowywane przez wcięcie: wewnętrzny <ol> siada dwie spacje pod swoim rodzicem <li> i przełącza się z punktora - na numerację 1.. Markdown automatycznie przenumerowuje listy numerowane, więc źródło pozostaje czyste, nawet jeśli HTML używał jawnych atrybutów value.
Fragment HTML strony WWW na czysty Markdown
<article> <h1>Dziennik zmian</h1> <p>Wydaliśmy <strong>tryb ciemny</strong> i naprawiliśmy <code>parseDate()</code>.</p> <blockquote><p>Dzięki wszystkim, którzy to zgłosili.</p></blockquote> </article>
# Dziennik zmian Wydaliśmy **tryb ciemny** i naprawiliśmy `parseDate()`. > Dzięki wszystkim, którzy to zgłosili.
Wklej wycinek prawdziwej strony — otoczka <article> jest odrzucana (Markdown nie ma elementu kontenera), <h1> staje się #, <strong> staje się **, <code> inline staje się grawisami, a <blockquote> staje się wierszem >. Strukturalne otoczki bez odpowiednika w Markdown po prostu odpadają.
Jak skonwertować HTML na Markdown
- 1
Wklej swój HTML
Wstaw skopiowaną stronę WWW, eksport z CMS-a lub edytora WYSIWYG albo zeskrobany fragment HTML. DOM jest parsowany i serializowany do Markdown w Twojej przeglądarce w miarę wklejania — bez przesyłania, bez limitu rozmiaru poza pamięcią przeglądarki.
- 2
Wybierz styl nagłówków i linków
Wybierz nagłówki ATX (#) lub Setext (===) oraz linki inline lub referencyjne. Markdown renderuje się na nowo na żywo, więc możesz porównywać style natychmiast. Wynik celuje w GitHub Flavored Markdown — z tabelami, listami zadań i przekreśleniami.
- 3
Skopiuj lub pobierz
Kliknij Kopiuj, aby przechwycić Markdown, lub Pobierz, aby zapisać plik .md. Aby przejść w drugą stronę, przełącz się na kartę Markdown → HTML i wklej swój Markdown, by odzyskać wyrenderowany HTML.
Częste pułapki
Oczekiwanie, że struktura <div>/<span> przetrwa
Ogólne kontenery nie niosą odpowiednika w Markdown, więc są rozwijane — ich treść pozostaje, ale znacznik oraz każda klasa czy styl na nim znikają. Jeśli Twój układ zależał od otaczającego <div> lub ostylowanego <span>, to stylowanie przepadło w Markdown. Jest to oczekiwane, a nie błąd; Markdown po prostu nie ma sposobu, by to wyrazić.
<div class="callout warning"><span style="color:red">Uwaga!</span></div> <!-- oczekiwanie, że ramka i czerwony kolor przetrwają -->
Uwaga! <!-- kontener i style odrzucone; w Markdown pozostaje tylko tekst -->
Utracone podziały wiersza <br> wewnątrz akapitów
<br> wewnątrz akapitu to miękki podział wiersza, który Markdown przedstawia dwiema końcowymi spacjami przed znakiem nowej linii (lub odwrotnym ukośnikiem). Wklejenie HTML i oczekiwanie, że widoczne podziały wiersza przetrwają, może zaskoczyć, gdy sąsiednie wiersze przepłyną w jeden. Konwerter emituje formę twardego podziału, ale jeśli edytujesz ręcznie później, nie usuwaj końcowych spacji.
Wiersz pierwszy<br>Wiersz drugi <!-- jeśli forma podziału zostanie usunięta, scalają się w jeden wiersz -->
Wiersz pierwszy Wiersz drugi <!-- dwie końcowe spacje zachowują <br> jako twardy podział -->
Degradacja głęboko zagnieżdżonych tabel
Tabele GFM z kreskami pionowymi nie potrafią się zagnieżdżać ani nieść treści blokowej. Starszy układ, który umieszcza tabelę (albo listę, albo wiele akapitów) wewnątrz komórki tabeli, nie może stać się czystą tabelą z kreskami pionowymi — konwerter spłaszcza, co się da, i pozostawia resztę jako surowy HTML, by nic nie przepadło. Rozwiązaniem jest uproszczenie źródła, a nie wyniku.
<table><tr><td><table><tr><td>wewnątrz</td></tr></table></td></tr></table> <!-- zagnieżdżona tabela nie może stać się płaską tabelą z kreskami pionowymi -->
<!-- Najpierw spłaszcz do tabeli jednopoziomowej: --> <table><tr><td>wewnątrz</td></tr></table> → | wewnątrz | | -------- |
Oczekiwanie, że <script> lub style przetrwają
<script>, <style> i elementy na poziomie nagłówka to kod i prezentacja, a nie treść dokumentu, więc są usuwane całkowicie — nie konwertowane, nie zachowywane jako surowy HTML. Wklejenie całej strony i oczekiwanie, że zachowanie lub CSS przejdą do Markdown, zawiedzie. Markdown to format treści; jeśli potrzebujesz kodu lub stylowania, zachowaj HTML.
<style>.x{color:blue}</style>
<script>track()</script>
<p>Treść</p>
<!-- oczekiwanie, że styl i skrypt przejdą --> Treść <!-- przetrwa tylko treść; <script>/<style> są odrzucane -->
Typowe zastosowania
- Migruj treść webową lub z CMS-a do Notion, Obsidian lub strony statycznej
- Wyciągnij strony z CMS-a, eksportu z WordPressa lub starej strony HTML i skonwertuj je na Markdown, który wpada prosto do Notion, Obsidian, Hugo lub Jekyll. Zamieniasz rozwlekły znacznik na przenośny tekst, który czysto żyje w repozytorium Git i sensownie diffuje się w przeglądzie.
- Eksportuj z edytora WYSIWYG
- Edytory tekstu sformatowanego emitują gęsty HTML pełen atrybutów. Wklej ten wynik tutaj, by odzyskać czysty Markdown pod spodem — nagłówki, listy, linki i wyróżnienia — żeby treść mogła trafić do potoku dokumentacji lub bazy wiedzy opartej na Markdown, zamiast pozostawać zamknięta w edytorze.
- Oczyść HTML do Markdown, by zasilać LLM i potoki RAG
- Surowy HTML spala tokeny na znaczniki, skrypty i stylowanie, których model nigdy nie potrzebuje. Konwersja zeskrobanej strony na Markdown usuwa ten szum, zachowując strukturę, którą LLM dobrze czyta, więc mieścisz więcej realnej treści w oknie kontekstu i uzyskujesz czystsze osadzenia do pobierania.
- Skonwertuj wklejony tekst sformatowany na Markdown
- Skopiuj sformatowany tekst ze strony WWW, e-maila lub dokumentu, a trafia on jako HTML do schowka. Wklej go tutaj, by zamienić ten tekst sformatowany w Markdown, który możesz zacommitować, wysłać w pull requeście lub wpisać do notatek — z zachowanym formatowaniem i bez bałaganu.
- Zarchiwizuj stronę jako Markdown
- Zapisz znaczącą treść strony WWW jako mały, odporny na przyszłość plik .md zamiast ciężkiej migawki HTML pełnej skryptów i śledzenia. Markdown pozostaje czytelny w dowolnym edytorze tekstu za dekady i zajmuje ułamek miejsca.
- Zamień starszą dokumentację HTML na Markdown
- Stara dokumentacja pisana jako ręcznie kodowany HTML jest uciążliwa w utrzymaniu. Skonwertuj ją na Markdown, by wprowadzić ją do nowoczesnego procesu docs-as-code — gdzie może być sprawdzana linterem, przeglądana w pull requestach i renderowana przez generator stron statycznych.
Szczegóły techniczne
- Wynik CommonMark a GitHub Flavored Markdown
- Konwerter może celować w zwykły CommonMark lub, domyślnie, w nadzbiór GitHub Flavored Markdown. CommonMark definiuje precyzyjnie nagłówki, wyróżnienia, listy, linki, obrazy, kod i cytaty blokowe. GFM dodaje cztery konstrukcje, które mapują się wprost z typowego HTML: <table> → tabela z kreskami pionowymi, elementy listy z polami wyboru → listy zadań, <del>/<s> → przekreślenie, a gołe adresy URL → automatyczne linki. Ponieważ większość treści webowej używa tabel i podobnych elementów, wynik GFM to praktyczna wartość domyślna; wybierz CommonMark tylko wtedy, gdy silnik renderujący po stronie celu nie rozumie rozszerzeń GFM — w takim przypadku tabele wracają do surowego HTML.
- Konwersja stratna i nieodwracalna — powiedziana wprost
- HTML jest ściśle bardziej wyrazisty niż Markdown, więc konwersja nie może być bezstratna i warto powiedzieć to otwarcie. Markdown nie ma składni dla <div>, <span> ani innych ogólnych kontenerów; nie ma sposobu, by nieść nazwy klas, id, style inline, colspan/rowspan ani dowolne atrybuty data-*; i nie ma reprezentacji dla większości elementów semantycznych lub układu. Są one rozwijane (treść zachowana, znacznik odrzucony), odrzucane (atrybuty) lub — gdy odrzucenie oznaczałoby utratę znaczenia — zachowywane jako surowy HTML inline. Podróż tam i z powrotem HTML → Markdown → HTML nie odtworzy oryginału. To celowy kompromis: Markdown istnieje, by być czystym, diffowalnym i edytowalnym dla człowieka, a nie odzwierciedlać HTML. Większość konkurentów to przemilcza; powiedzenie tego pozwala Ci zdecydować z otwartymi oczami, czy Markdown to właściwy cel.
- Kompromisy stylu: ATX/Setext, inline/referencyjne, ogrodzenie/wcięcie
- Trzy wybory wyniku mają realne kompromisy. Nagłówki ATX (#) obejmują wszystkie sześć poziomów i czysto się przeszukują; Setext (podkreślony) istnieje tylko dla H1/H2, więc narzędzie emituje go dla dwóch najwyższych poziomów i wraca do ATX poniżej. Linki inline trzymają URL obok tekstu — najlepsze przy rzadkich linkach; linki referencyjne ściągają adresy URL do stopy dokumentu — najlepsze przy tekście gęstym od linków i wielokrotnym użyciu po etykiecie. Dla kodu bloki w ogrodzeniu (potrójne grawisy) niosą ciąg informacyjny o języku i bezpiecznie się zagnieżdżają, podczas gdy wcięte (cztery spacje) bloki kodu nie potrafią wyrazić języka i łamią się wewnątrz list — więc ten konwerter zawsze emituje bloki w ogrodzeniu z <pre><code>.
Dobre praktyki
- Sformatuj HTML przed konwersją
- Zminimalizowany lub głęboko poplątany HTML — zwłaszcza zagnieżdżone tabele układu i zbłąkane elementy inline — konwertuje się czyściej, gdy najpierw jest dobrze sformowany. Przepuść nieporządne źródło przez nasz Formater HTML, by ładnie je sformatować i znormalizować, a potem konwertuj. Czyste wejście daje czysty Markdown z mniejszą liczbą powrotów do surowego HTML.
- Spodziewaj się stratnych odrzuceń i je przeglądaj
- Traktuj konwersję jako stratną z założenia. Klasy, style inline, otoczki <div>/<span> oraz egzotyczne atrybuty znikają z wyniku, i zwykle właśnie tego chcesz dla przenośnego Markdown — ale przejrzyj rezultat pod kątem czegokolwiek semantycznie ważnego, co żyło tylko w atrybucie (etykieta aria-label, komórka scalona przez colspan), i dodaj to z powrotem ręcznie, jeśli ma znaczenie.
- Dobierz styl linków do gęstości dokumentu
- Użyj linków inline dla tekstu z linkiem tu i ówdzie — URL pozostaje obok swojego tekstu i źródło czyta się naturalnie. Przełącz się na linki referencyjne, gdy sekcja jest gęsta od linków lub wielokrotnie używa tych samych adresów URL: ściągnięcie ich na numerowaną listę u stopy utrzymuje akapity przejrzystymi i unika powtarzania długich URL-i.
- Konwertuj na Markdown przed wysłaniem stron do LLM
- Gdy zasilasz model treścią webową — do promptu, osadzenia lub repozytorium RAG — najpierw skonwertuj HTML na Markdown. Usuwasz znaczniki, skrypty i stylowanie, które marnują tokeny i dodają szum, zachowujesz strukturę, której model faktycznie używa, i mieścisz znacznie więcej realnej treści wewnątrz okna kontekstu.
- Zweryfikuj złożone tabele po konwersji
- Tabele GFM z kreskami pionowymi są płaskie — bez zagnieżdżonych tabel, bez treści blokowej w komórkach, bez komórek scalonych. Po konwersji tabeli gęstej od danych lub układu sprawdź Markdown: proste siatki konwertują się perfekcyjnie, ale cokolwiek z colspan lub zagnieżdżonymi blokami ulega degradacji i może pojawić się jako surowy HTML. Najpierw uprość tabelę źródłową, jeśli zależy Ci na czystej tabeli z kreskami pionowymi.
Najczęściej zadawane pytania
Jak obsługiwane są linki inline i referencyjne?
Nagłówki ATX a Setext — których używać?
Co dzieje się z HTML, którego Markdown nie potrafi przedstawić, jak <div> i <span>?
Czy usuwa <script> i style?
Jak obsługiwane są zagnieżdżone tabele i listy?
-, trzy pod 1.), a listy numerowane są przenumerowane od 1. Tabele są trudniejsze. Tabele z kreskami pionowymi w GitHub Flavored Markdown są z definicji płaskie — komórka tabeli nie może zawierać innej tabeli ani elementów blokowych, takich jak listy czy wiele akapitów. Więc prosty <table> konwertuje się do czystej tabeli z kreskami pionowymi, ale tabela z tabelą zagnieżdżoną w komórce albo z treścią blokową w komórkach ulega degradacji: konwerter spłaszcza, co się da, i wraca do pozostawienia złożonych części jako surowego HTML, by żadne dane nie zostały utracone. Głęboko zagnieżdżone tabele układu ze starszych stron to najgorszy przypadek — rozważ najpierw uproszczenie HTML. Czy HTML na Markdown jest bezstratny?
Czy mogę zasilić Markdownem LLM lub ChatGPT?
Czy moje pliki są przesyłane na serwer?
Czy działa offline?
Czy mogę skonwertować Markdown z powrotem na HTML?
Powiązane narzędzia
Zobacz wszystkie narzędzia →Tablica ASCII i konwerter ASCII
Kodowanie i formatowanie
Pełna tablica ASCII: 128 znaków w systemie dziesiętnym, szesnastkowym, ósemkowym i dwójkowym oraz dwukierunkowy konwerter. Znaki sterujące z sekwencjami escape, notacją z daszkiem i miejscem, gdzie naprawdę się je spotyka.
Darmowy generator kodów kreskowych — EAN-13, UPC-A, Code 128
Kodowanie i formatowanie
Generuj EAN-13, UPC-A, Code 128, Code 39 i 11 innych typów kodów kreskowych jako SVG lub gotowy do druku PNG. Wpisz 12 cyfr — cyfra kontrolna dopisze się sama; przy błędzie strona wskaże właściwą cyfrę.
Koder i dekoder Base64
Kodowanie i formatowanie
Zakoduj i zdekoduj Base64 online za darmo. Konwersja w czasie rzeczywistym z pełną obsługą UTF-8 i emoji. 100% w przeglądarce, bez rejestracji.
Konwerter Base64 na obraz
Kodowanie i formatowanie
Zdekoduj ciąg Base64 lub data URI z powrotem na obraz w przeglądarce. Podejrzyj, odczytaj wymiary i MIME, a potem pobierz jako PNG, JPG, GIF, SVG. Bez przesyłania.
Konwerter Base64 na PDF i plik · PDF na Base64
Kodowanie i formatowanie
Konwersja Base64 do PDF online: wklej czyste Base64, data URI lub całą odpowiedź JSON. Rozpoznaje prawdziwy typ pliku, pokazuje podgląd, pobiera plik i ostrzega przed uciętym PDF. Także PDF na Base64. Nic nie jest wysyłane.
Konwerter CSV na JSON
Kodowanie i formatowanie
Konwertuj CSV na JSON w przeglądarce. RFC 4180, wnioskowanie typów, nagłówek, big-int safe. 100% prywatnie, bez wysyłki.