Koder i dekoder encji HTML
Escapuj tekst, aby można go było bezpiecznie umieścić w HTML, lub zamieniaj encje, takie jak & i €, z powrotem na czytelne znaki.
Działa w przeglądarceBez rejestracjiNic nie jest wysyłane
Jak używać: Koder / dekoder encji HTML
- Wybierz Koduj, aby escapować tekst, lub Dekoduj, aby zamienić encje z powrotem na znaki.
- Przy kodowaniu wybierz, które znaki escapować: tylko specjalne znaki HTML, dodatkowo wszystkie znaki spoza ASCII lub wszystko oprócz liter i cyfr.
- Wybierz encje nazwane (
é), dziesiętne (é) lub szesnastkowe (é). - Skopiuj wynik. Przy dekodowaniu nieznane encje są wypisywane, abyś mógł wychwycić literówki.
Po co escapować HTML?
Pięć znaków ma w HTML specjalne znaczenie: & rozpoczyna encję, < i > ograniczają znaczniki, a " i ' zamykają wartości atrybutów. Jeśli tekst od użytkownika zawierający te znaki trafi na stronę bez escapowania, może zepsuć układ lub, co gorsza, wstrzyknąć skrypty (cross-site scripting, XSS). Escapowanie zamienia je na &, <, >, " i ', które przeglądarka wyświetla jako tekst.
Encje nazwane, dziesiętne i szesnastkowe
Każdy znak Unicode można zapisać jako odwołanie numeryczne: dziesiętne € lub szesnastkowe € dla €. Wiele popularnych znaków ma też czytelną nazwę, np. €, © lub . Odwołania numeryczne działają wszędzie, także w XML, który definiuje tylko pięć encji nazwanych. Encje nazwane łatwiej czytać w kodzie źródłowym.
Czy muszę kodować znaki spoza ASCII?
Nie, jeśli strona jest serwowana w UTF-8, jak niemal każda nowoczesna witryna (<meta charset="utf-8">). Znaki takie jak é, ü czy 日本 można pisać bezpośrednio. Kodowanie ich przydaje się w starszych systemach, szablonach e-maili lub gdy jakiś proces psuje tekst spoza ASCII.
Escapowanie zależy od kontekstu
Escapowanie encji HTML chroni tekst umieszczony w treści elementów i atrybutach w cudzysłowach. Nie wystarcza dla wartości w blokach <script>, inline’owych handlerach zdarzeń, CSS czy URL-ach – każde z nich wymaga własnego kodowania. Preferuj automatyczne escapowanie frameworka (React, Vue, Jinja, Blade) zamiast ręcznego sklejania ciągów.
Najczęściej zadawane pytania
Które znaki trzeba escapować w HTML?
& i <. W wartościach atrybutów escapuj też użyty cudzysłów. Escapowanie wszystkich pięciu (& < > " ') to bezpieczny wybór domyślny.Czym jest &nbsp;?
Dlaczego &copy2024 dekoduje się do ©2024?
©, & i <, nawet bez końcowego średnika. Ten dekoder stosuje tę samą regułę. We własnym HTML zawsze pisz średnik.Apostrof to &apos; czy &#39;?
' jest poprawne w HTML5 i XML, ale nie w HTML 4, więc numeryczne ' lub ' to najbardziej kompatybilny wybór – i to właśnie generuje ten koder.