Menu
Coddy logo textTech

Markdown Cheat Sheet: składnia Markdown

Ostatnia aktualizacja

Nagłówki

Po znakach # wstaw spację. Liczba znaków ustala poziom, od 1 do 6.

ElementMarkdownWynik
Nagłówek 1# Page titleNagłówek najwyższego poziomu, <h1>
Nagłówek 2## SectionNagłówek sekcji, <h2>
Nagłówek 3### SubsectionNagłówek podsekcji, <h3>
Nagłówki od 4 do 6#### Level 4 ##### Level 5 ###### Level 6<h4>, <h5> i <h6>
Nagłówek 1, wersja alternatywnaPage title ==========<h1>, to samo co # Page title
Nagłówek 2, wersja alternatywnaSection -------<h2>, to samo co ## Section
Zamykające krzyżyki## Section ##<h2>Section</h2>; końcowe znaki # są pomijane
Brak spacji#Not a headingZwykły akapit. Spacja po # jest wymagana

Pogrubienie, kursywa i przekreślenie

Gwiazdki działają wszędzie, nawet wewnątrz słowa. Podkreślniki działają tylko na granicach słów, więc snake_case zostaje bez zmian.

ElementMarkdownWynik
Pogrubienie**bold text**Pogrubienie, <strong>bold text</strong>
Pogrubienie, podkreślniki__bold text__Pogrubienie, to samo co wyżej
Kursywa*italic text*Kursywa, <em>italic text</em>
Kursywa, podkreślniki_italic text_Kursywa, to samo co wyżej
Pogrubienie i kursywa***bold and italic***<em><strong>bold and italic</strong></em>
Pogrubienie wewnątrz słowaun**believ**ablePogrubiony jest tylko środek słowa
Podkreślniki w słowiesnake_case_nameZwykły tekst, bez kursywy
Przekreślenie (GFM)~~no longer true~~Przekreślony tekst, <del>no longer true</del>
Podkreślenie<ins>underlined</ins>Podkreślony tekst. Markdown nie ma składni podkreślenia, więc to jest HTML
Wyróżnienie kolorem<mark>highlighted</mark>Wyróżniony tekst tam, gdzie strona pozwala na znacznik <mark>. Markdown nie ma składni wyróżniania

Łamanie wierszy i akapity

Jednokrotne naciśnięcie Enter w akapicie nie zaczyna nowej linii w wyniku. Zamiast tego użyj jednego z poniższych sposobów.

ElementMarkdownWynik
Nowy akapitFirst paragraph. Second paragraph.Dwa akapity. Oddziela je pusta linia
Łamanie: dwie spacjeRoses are red, Violets are blue.Jeden akapit z <br> po red,. Pierwsza linia kończy się dwiema spacjami, których nie widać
Łamanie: ukośnik wstecznyRoses are red,\ Violets are blue.To samo <br>, ale z widocznym znacznikiem. Działa w CommonMark i na GitHubie
Łamanie: HTMLRoses are red,<br>Violets are blue.To samo <br>. Działa też w komórce tabeli
Pojedynczy znak nowej liniiRoses are red, Violets are blue.Jedna linia: Roses are red, Violets are blue. Zgłoszenia i komentarze na GitHubie zachowują łamanie; pliki .md nie
Dodatkowe puste linieOne. Two.To samo co jedna pusta linia. Aby uzyskać więcej miejsca, wstaw <br> w osobnej linii

Listy

Wcięcie zagnieżdżonego elementu powinno zrównać go z tekstem elementu powyżej: 2 spacje pod - , 3 spacje pod 1. .

ElementMarkdownWynik
Lista punktowana- Apples - Pears - PlumsLista punktowana, <ul> z trzema <li>
Inne punktory* Apples + Pears* i + również tworzą punktory. Zmiana znaku zaczyna nową listę
Lista numerowana1. Install 2. Configure 3. RunLista numerowana, <ol>
Leniwa numeracja1. Install 1. Configure 1. RunNadal numerowana 1, 2, 3. Liczy się tylko pierwszy numer
Start od wybranego numeru7. Seventh 8. Eighth<ol start="7">, numeracja od 7
Lista zagnieżdżona- Fruit - Apple - Pear - VegetablesLista wewnątrz pierwszego elementu
Zagnieżdżona, numerowana1. Download - Windows - macOS 2. InstallPunkty wewnątrz kroku 1, z wcięciem 3 spacji
Akapit w elemencie- First item More about the first item. - Second itemDwa akapity wewnątrz pierwszego elementu
Kod w elemencie1. Run this: ```bash npm install ``` 2. Start the appBlok kodu wewnątrz kroku 1, wcięty do tekstu elementu

Listy zadań (pola wyboru)

Rozszerzenie GitHub Flavored Markdown: element listy zaczynający się od [ ] lub [x] staje się polem wyboru.

ElementMarkdownWynik
Puste pole wyboru- [ ] Write testsNiezaznaczone pole wyboru
Zaznaczone pole wyboru- [x] Write testsZaznaczone pole wyboru. [X] też działa
Lista kontrolna- [x] Draft - [ ] Review - [ ] PublishJedno zaznaczone pole i dwa puste. W zgłoszeniach i pull requestach na GitHubie można je zaznaczać kliknięciem
Zagnieżdżone zadania- [ ] Release - [x] Tag the commit - [ ] Write the notesDwa podzadania pod pierwszym polem
Brak spacji- [] Write testsZwykły punkt z tekstem [] Write tests. W nawiasach musi być spacja albo x

Linki

Tekst linku wpisujesz w nawiasy kwadratowe, a adres w nawiasy okrągłe tuż za nim, bez spacji pomiędzy.

ElementMarkdownWynik
Link w linii[Coddy](https://coddy.tech)<a href="https://coddy.tech">Coddy</a>
Link z tytułem[Coddy](https://coddy.tech "Learn to code")Ten sam link. Tytuł pojawia się jako podpowiedź po najechaniu kursorem
URL w nawiasach ostrych<https://coddy.tech>Sam adres URL jako link
Goły URL (GFM)https://coddy.techLink na GitHubie i innych stronach GFM, które linkują też adresy www.. W ścisłym CommonMark zwykły tekst
Link e-mail<hello@example.com>Link mailto:
Link referencyjnyRead the [docs][1]. [1]: https://example.com/docsdocs prowadzi do adresu URL. Linia [1]: nie jest wyświetlana
Skrócona referencjaSee [GitHub]. [GitHub]: https://github.comGitHub prowadzi do adresu URL
Link względny[Install guide](docs/install.md)Link do pliku względem bieżącego. Na GitHubie otwiera plik w repozytorium
Link do nagłówka[Jump to setup](#getting-started)Przewija do ## Getting Started na tej samej stronie
Identyfikatory nagłówków## Getting Started!Na GitHubie dostaje ID getting-started: małe litery, spacje zamieniają się w łączniki, a interpunkcja inna niż - i _ jest usuwana
Nagłówek w innym pliku[Requirements](docs/install.md#requirements)Otwiera plik w miejscu tego nagłówka
Spacje w adresie URL[Report](my%20report.pdf)Zapisz każdą spację jako %20 albo otocz adres URL nawiasami ostrymi: [Report](<my report.pdf>)
Otwarcie w nowej karcie<a href="https://coddy.tech" target="_blank">Coddy</a>Markdown nie ma na to składni. HTML działa tam, gdzie strona zachowuje atrybut target

Obrazy

Obraz to link poprzedzony znakiem !. Tekst w nawiasach staje się tekstem alternatywnym, który czytniki ekranu odczytują na głos.

ElementMarkdownWynik
Obraz![A cat asleep on a sofa](cat.png)<img src="cat.png" alt="A cat asleep on a sofa">
Obraz z tytułem![Logo](logo.png "Coddy logo")Ten sam obraz z podpowiedzią po najechaniu kursorem
Obraz z adresu URL![Build status](https://example.com/badge.svg)Wczytuje obraz z internetu
Obraz jako link[![Logo](logo.png)](https://coddy.tech)Obraz, który po kliknięciu otwiera link
Obraz referencyjny![Logo][logo] [logo]: images/logo.pngTo samo co obraz w linii, z adresem URL zdefiniowanym raz poniżej
Rozmiar obrazu<img src="logo.png" alt="Logo" width="200">Obraz o szerokości 200 pikseli. Zwykły Markdown nie ma składni rozmiaru, więc to znacznik HTML <img>
Wyśrodkowany obraz<p align="center"> <img src="logo.png" alt="Logo" width="200"> </p>Wyśrodkowany obraz, jak w wielu plikach README na GitHubie

Kod i bloki kodu

Odwrotne apostrofy oznaczają kod w linii; ogrodzenie z trzech odwrotnych apostrofów oznacza blok. Nic wewnątrz kodu nie jest formatowane.

ElementMarkdownWynik
Kod w liniiRun `npm install` first.npm install czcionką o stałej szerokości, jako <code>
Odwrotny apostrof wewnątrz kodu``Use `git` here``Kod Use `git` here. Otocz go większą liczbą odwrotnych apostrofów, niż zawiera
Blok kodu``` npm install npm run dev ```Blok, <pre><code>, z zachowanymi podziałami linii
Podświetlanie składni```python def greet(name): return f"Hello, {name}" ```Blok Pythona z kolorowaną składnią. Popularne nazwy: js, ts, python, bash, json, html, css, sql
Ogrodzenie z tyld~~~js console.log("hi"); ~~~To samo co ogrodzenie z odwrotnych apostrofów
Kod z wcięciem const total = 42;Blok kodu utworzony wcięciem 4 spacji, po pustej linii
Blok diff```diff - const x = 1; + const x = 2; ```Na GitHubie usunięte linie na czerwono, a dodane na zielono
Ogrodzenie wewnątrz bloku````markdown ```js let a = 1; ``` ````Blok, który pokazuje wewnętrzne ogrodzenie jako tekst. Zewnętrzne ogrodzenie potrzebuje więcej odwrotnych apostrofów niż wewnętrzne

Tabele

Rozszerzenie GitHub Flavored Markdown. Druga linia, czyli wiersz separatora, zamienia pierwszą linię w nagłówek. Musi mieć tyle samo komórek co nagłówek, inaczej tabela nie powstanie.

ElementMarkdownWynik
Tabela| Name | Role | | ----- | ------ | | Ada | Admin | | Linus | Editor |Tabela z wierszem nagłówka i dwoma wierszami
Wyrównanie kolumn| Left | Center | Right | | :--- | :----: | ----: | | a | b | c |Dwukropki ustalają wyrównanie: do lewej, do środka, do prawej
Bez zewnętrznych kresekName | Role --- | --- Ada | AdminTa sama tabela. Kreski pionowe na początku i końcu linii są opcjonalne
Szerokość kolumn| a | b | |---|---| | 1 | 2 |Szerokości wynikają z zawartości. Liczba łączników nie ma znaczenia, a kreski pionowe nie muszą być wyrównane
Formatowanie w komórkach| Command | Does | | --- | --- | | `git status` | Shows **changed** files |Kod, pogrubienie, linki i obrazy działają wewnątrz komórek
Kreska pionowa w komórce| Operator | Meaning | | --- | --- | | `a \| b` | a or b |Komórka pokazuje a | b. Escapuj kreskę jako \|, nawet wewnątrz kodu
Łamanie wiersza w komórce| Step | Notes | | --- | --- | | 1 | First line<br>Second line |Dwie linie w jednej komórce. Prawdziwy znak nowej linii zakończyłby wiersz
Scalone komórki<td colspan="2">Both columns</td>Tabele Markdown nie potrafią scalać komórek. Napisz tabelę w HTML z colspan lub rowspan

Cytaty blokowe

Zacznij każdą linię od >. Cytat blokowy może zawierać dowolny inny Markdown.

ElementMarkdownWynik
Cytat blokowy> Simple is better than complex.Wcięty cytat, <blockquote>
Kilka akapitów> First paragraph. > > Second paragraph.Jeden cytat z dwoma akapitami. Linia z samym > utrzymuje je razem
Cytat zagnieżdżony> The reply >> The original messageCytat wewnątrz cytatu
Inne elementy wewnątrz> #### Note > - Back up first > - Then upgradeNagłówek i lista wewnątrz cytatu
Alert (GitHub)> [!NOTE] > Requires Node 20 or later.Kolorowe pole Note na GitHubie. Pozostałe typy to [!TIP], [!IMPORTANT], [!WARNING] i [!CAUTION]

Linie poziome

Trzy lub więcej łączników, gwiazdek albo podkreślników w osobnej linii rysuje linię przez całą stronę.

ElementMarkdownWynik
Linia---Linia pozioma, <hr>
Inne formy*** ___Dwie kolejne linie
Linia po tekścieSome text ---Akapit, a potem linia. Zachowaj pustą linię
Brak pustej liniiSome text ---Nagłówek 2. poziomu, a nie linia: --- pod linią tekstu ją podkreśla

Przypisy

Obsługiwane na GitHubie, GitLabie i w wielu generatorach stron statycznych. Ścisły CommonMark nie ma przypisów.

ElementMarkdownWynik
PrzypisMarkdown dates from 2004.[^1] [^1]: John Gruber created it, with Aaron Swartz.Indeks górny 1 z linkiem do przypisu, wyświetlonego na dole strony
Przypis nazwanySee the spec.[^spec] [^spec]: https://spec.commonmark.orgEtykiety mogą być słowami, ale przypisy i tak są numerowane 1, 2, 3 w kolejności użycia
Gdzie go zdefiniować[^1]: The text of the note.Definicja może być w dowolnym miejscu pliku. Zawsze renderuje się na końcu

Escapowanie znaków

Ukośnik wsteczny przed znakiem interpunkcyjnym wypisuje sam znak zamiast formatowania.

ElementMarkdownWynik
Dosłowne gwiazdki\*not italic\*Zwykły tekst z gwiazdkami: *not italic*
Dosłowny krzyżyk\# Not a headingAkapit, który zaczyna się od #
Liczba i kropka2024\. A good year.Akapit, a nie lista zaczynająca się od 2024
Dosłowne nawiasy\[not a link\](page.md)Nawiasy kwadratowe i okrągłe tak, jak wpisano
Dosłowny odwrotny apostrof\`Jeden odwrotny apostrof
Dosłowny ukośnik wsteczny\\Jeden ukośnik wsteczny
Co można escapować\ ` * _ {} [] () <> # + - . ! |Dowolną interpunkcję ASCII. Ukośnik wsteczny przed literą lub cyfrą pozostaje ukośnikiem
Encje HTML&copy; 2026 &amp; &lt;div&gt;© 2026 & <div> jako tekst
Brak escapowania w kodzie`*stars*`Kod *stars* tak, jak wpisano. W kodzie ukośnik wsteczny jest zwykłym znakiem

HTML w Markdownie

Większość rendererów przepuszcza HTML, więc znacznik załatwia to, czego nie da się zapisać składnią Markdown. GitHub usuwa niebezpieczny HTML, taki jak <script>, <style>, <iframe> i atrybuty style.

ElementMarkdownWynik
KlawiszePress <kbd>Ctrl</kbd> + <kbd>C</kbd>Ctrl i C narysowane jako klawisze
Indeks dolny i górnyH<sub>2</sub>O and x<sup>2</sup>H₂O i x²
Sekcja zwijana<details> <summary>Show the answer</summary> The answer is **42**. </details>Sekcja, która otwiera się po kliknięciu. Puste linie pozwalają wyrenderować Markdown w środku
Markdown w bloku HTML<div> **not bold** </div>**not bold** tak, jak wpisano. Markdown nie jest odczytywany w bloku HTML, dopóki pusta linia nie zakończy bloku
Kolorowy tekst<span style="color: red">red</span>Czerwony tekst na stronach, które pozwalają na style w linii. GitHub usuwa atrybut style

Komentarze

Markdown nie ma składni komentarzy. Dwie sztuczki ukrywają tekst na wyrenderowanej stronie.

ElementMarkdownWynik
Ukryty komentarz[//]: # (This line is never shown)Nic. Linia jest definicją linku, której nie używa żaden link, więc nigdy nie trafia do HTML
Forma alternatywna[comment]: <> (Also hidden)Nic, dzięki tej samej sztuczce
Komentarz HTML<!-- TODO: add screenshots -->Nic na stronie, ale komentarz zostaje w źródle HTML
Komentarz wieloliniowy<!-- This whole block is hidden -->Nic na stronie
UmiejscowienieSome text. [//]: # (comment) More text.Dwa akapity. Przed linią komentarza musi być pusta linia, inaczej wyświetli się jako tekst

GitHub Flavored Markdown i dodatki GitHuba

GitHub Flavored Markdown (GFM) to CommonMark z tabelami, listami zadań, przekreśleniem i linkami z gołych adresów URL. GitHub dodaje do tego jeszcze więcej.

FunkcjaMarkdownGdzie działa
Tabele| a | b | | --- | --- | | 1 | 2 |GFM: GitHub, GitLab i większość narzędzi do dokumentacji
Listy zadań- [x] DoneGFM
Przekreślenie~~text~~GFM
Linki z gołych adresów URLwww.coddy.techGFM
Kod z językiem```js let a = 1; ```CommonMark i GFM. Kolory zależą od strony
PrzypisyText.[^1] [^1]: Note.GitHub i GitLab, choć nie ma tego w specyfikacji GFM
Emoji:rocket: :tada:GitHub i GitLab zamieniają skróty w emoji
Wzmianki@octocatGitHub: linkuje użytkownika i wysyła mu powiadomienie
Linki do zgłoszeń#123GitHub: linkuje zgłoszenie lub pull request 123 w tym samym repozytorium
Diagramy```mermaid graph LR A --> B ```GitHub i GitLab rysują diagram Mermaid
Matematyka$E = mc^2$ $$ \sum_{i=1}^{n} i $$GitHub renderuje wzory LaTeX: w linii między znakami $ i jako blok między liniami $$

Cała składnia Markdown na jednej stronie, obok tego, w co się zamienia. Ten Markdown cheat sheet obejmuje podstawową składnię (nagłówki, wyróżnienia, łamanie wierszy, listy, linki, obrazy, kod, cytaty blokowe) oraz dodatki GitHub Flavored Markdown: tabele z wyrównaniem, listy zadań, przekreślenie, linki z gołych adresów URL i przypisy, a do tego escapowanie, HTML i komentarze.

Przykłady są zgodne z CommonMark i GitHub Flavored Markdown, czyli regułami, na których opierają się GitHub, GitLab i większość narzędzi do dokumentacji. Gdy jakaś strona zachowuje się inaczej, informuje o tym dany wiersz. Aby zobaczyć, jak dowolny przykład renderuje się podczas pisania, wklej go do edytora Markdown.

Markdown cheat sheet: najczęstsze pytania

Jak zrobić tabelę w Markdownie?
Napisz wiersz nagłówka z komórkami między kreskami pionowymi, potem wiersz separatora z łączników, a następnie po jednej linii na każdy wiersz: | Name | Role |, | --- | --- |, | Ada | Admin |. Dwukropki w wierszu separatora wyrównują kolumnę: :--- do lewej, :---: do środka, ---: do prawej. Tabele to funkcja GitHub Flavored Markdown, więc działają na GitHubie, GitLabie i w większości narzędzi do dokumentacji, ale nie w ścisłym CommonMark.
Jak dodać nową linię w Markdownie?
Pojedynczy znak nowej linii w akapicie jest pomijany w wyniku. Aby wymusić łamanie wiersza, zakończ linię dwiema spacjami lub ukośnikiem wstecznym (\) albo napisz <br>. Aby zacząć nowy akapit, zostaw pustą linię. Wyjątkiem są zgłoszenia i komentarze na GitHubie: tam pojedynczy znak nowej linii już działa jak łamanie wiersza.
Jak napisać komentarz w Markdownie?
Markdown nie ma składni komentarzy, ale działają dwie sztuczki. [//]: # (your comment) w osobnej linii, poprzedzonej pustą linią, to definicja linku, której nic nie używa, więc nigdy nie trafia na stronę ani do HTML. Komentarz HTML, <!-- your comment -->, też jest ukryty na stronie, ale zostaje w źródle HTML, gdzie może go przeczytać każdy, kto podejrzy źródło.
Jak zrobić blok kodu w Markdownie?
Wstaw trzy odwrotne apostrofy w linii przed kodem i trzy w linii po nim. Dodaj nazwę języka po otwierających apostrofach, np. ```python, aby włączyć podświetlanie składni. Kod wewnątrz zdania otocz pojedynczymi odwrotnymi apostrofami: `npm install`.
Jak dodać pole wyboru (checkbox) w Markdownie?
Zacznij element listy od [ ] dla pustego pola albo [x] dla zaznaczonego: - [ ] Review lub - [x] Draft. Zachowaj spację w pustych nawiasach. Pola wyboru są częścią GitHub Flavored Markdown, a w zgłoszeniach i pull requestach na GitHubie można je zaznaczać kliknięciem.
Jak zmienić rozmiar obrazu w Markdownie?
Zwykły Markdown nie ma składni rozmiaru: ![alt text](image.png) zawsze pokazuje obraz w jego własnym rozmiarze. Zamiast tego użyj znacznika HTML, np. <img src="image.png" alt="alt text" width="300">, który akceptuje GitHub i większość rendererów. Ustaw tylko szerokość albo tylko wysokość, aby zachować proporcje.
Jak zrobić link do nagłówka w Markdownie?
Podlinkuj ID nagłówka ze znakiem #: [Setup](#getting-started) przenosi do ## Getting Started. GitHub tworzy ID z tekstu nagłówka małymi literami, zamieniając spacje na łączniki i usuwając interpunkcję inną niż łączniki i podkreślniki. Dla nagłówka w innym pliku wpisz ID po nazwie pliku: [Setup](docs/install.md#getting-started).
Czym jest plik .md?
To zwykły plik tekstowy napisany w Markdownie. Typowe rozszerzenia to .md i .markdown, a README.md to plik, który GitHub pokazuje na stronie głównej repozytorium. Otworzy go każdy edytor tekstu; GitHub, strony z dokumentacją i przeglądarki Markdown renderują go jako sformatowany tekst. Aby zobaczyć plik wyrenderowany podczas edycji, wklej go do edytora Markdown.
Ilustracja języków programowania w Coddy

Naucz się języka Markdown z Coddy

ZACZNIJ