Encje HTML — kodowanie i dekodowanie (< & ")
Zamień znaki specjalne na encje HTML (< → <), żeby bezpiecznie wstawić kod lub tekst na stronę — i odwrotnie, odkoduj encje do zwykłego tekstu. Opcjonalnie zamiana wszystkich znaków spoza ASCII.
Umieść to narzędzie na swojej stronie
Bezpłatnie, bez rejestracji. Widżet pokazuje na dole napis „Narzędzie udostępnia AMKBIT.pl”.
Po co kodować znaki
W HTML znaki <, > i & mają specjalne znaczenie — rozpoczynają znaczniki i encje. Jeśli chcesz pokazać na stronie fragment kodu albo tekst wpisany przez użytkownika, trzeba je zamienić na encje, inaczej przeglądarka potraktuje je jako kod.
| Znak | Encja | Kiedy konieczna |
|---|---|---|
| < | < | zawsze w treści |
| > | > | zalecana |
| & | & | zawsze (także w adresach URL w atrybutach) |
| " | " | w atrybutach w cudzysłowie |
| ' | ' | w atrybutach w apostrofach |
| spacja nierozdzielająca | | np. „5 kg”, żeby nie łamać linii |
Bezpieczeństwo
Kodowanie danych od użytkowników przed wyświetleniem to podstawowa ochrona przed atakami XSS (wstrzyknięciem skryptu). W PHP służy do tego htmlspecialchars($tekst, ENT_QUOTES, 'UTF-8'), w JavaScript — ustawianie textContent zamiast innerHTML. Pamiętaj, że w atrybutach typu href, w kodzie JavaScript i CSS obowiązują dodatkowe zasady.
Polskie znaki
Na stronach w UTF-8 (z <meta charset="utf-8">) polskich liter nie trzeba kodować. Opcja kodowania znaków spoza ASCII przydaje się w starszych systemach, szablonach e-maili i plikach w nieznanym kodowaniu.
Przykłady
Fragment kodu
<p>5 < 7</p> → <p>5 < 7</p>.
Najczęstsze pytania
Czym różni się &#261; od &#x105;?
To ta sama litera „ą” zapisana kodem dziesiętnym (261) i szesnastkowym (105). Dekoder rozumie obie formy oraz encje nazwane.
Poradniki
Wynik ma charakter pomocniczy. Przy ważnych decyzjach (finansowych, technicznych, zdrowotnych) sprawdź go niezależnie. Zasady korzystania.