DevToolPal
PL

Koder i dekoder encji HTML

Zamieniaj tekst na encje HTML, takie jak < i é, lub dekoduj encje z powrotem na zwykły tekst.

Działa lokalnie, nic nie jest wysyłane

Opcje

Tryb

Wejście

0 znaków · 0 B

Wynik

0 znaków · 0 B

Do czego służy

Encje HTML to kody oznaczające znaki, na przykład &lt; dla < i &eacute; dla é. To narzędzie zamienia tekst na encje, aby można go było bezpiecznie wyświetlić na stronie internetowej, oraz dekoduje encje z powrotem na zwykły tekst, na przykład gdy kopiujesz kod z CMS-a lub szablonu e-maila.

Kodowanie korzysta z pełnej listy HTML5 obejmującej ponad 2000 nazwanych odwołań, a dekodowanie rozumie odwołania nazwane, dziesiętne (&#169;) i szesnastkowe (&#xA9;) dokładnie tak jak przeglądarka.

Jak używać

  1. Wklej tekst lub HTML w polu Wejście, wczytaj plik lub kliknij Przykład.
  2. Wybierz Koduj lub Dekoduj.
  3. Przy kodowaniu wybierz, ile zakodować:
    • Tylko & < > ” ’: minimum potrzebne, aby umieścić tekst w HTML lub atrybucie.
    • Plus spoza ASCII, nazwane: zamienia też znaki takie jak é, © i — na encje nazwane, a wszystko, co nie ma nazwy, na odwołanie liczbowe.
    • Plus spoza ASCII, liczbowe: to samo, ale zawsze liczbowo (&#xe9;), co jest też poprawnym XML.
    • Wszystko, co ma nazwę: koduje nawet interpunkcję, taką jak . i /, co przydaje się, gdy system usuwa te znaki.
  4. Skopiuj lub pobierz wynik. Użyj jako wejścia pozwala zdekodować go ponownie, aby sprawdzić pełny cykl.

Przykład

<p>Café & "crème brûlée"</p>

zakodowane tylko w zakresie znaków specjalnych daje

&lt;p&gt;Café &amp; &quot;crème brûlée&quot;&lt;/p&gt;

a z nazwanymi encjami dla znaków spoza ASCII daje

&lt;p&gt;Caf&eacute; &amp; &quot;cr&egrave;me br&ucirc;l&eacute;e&quot;&lt;/p&gt;

Typowe zastosowania

Pokaż fragment kodu na blogu tak, aby przeglądarka go nie renderowała, wstaw tekst użytkownika do e-maila w HTML, napraw podwójnie escapowany tekst, taki jak &amp;amp; (zdekoduj raz), albo przygotuj plik dla systemu, który przyjmuje tylko ASCII.

FAQ

› Które znaki trzeba escapować w HTML?

W tekście escapuj & i <. Wewnątrz wartości atrybutów escapuj też znak cudzysłowu, w który ujęta jest wartość. Escapowanie & < > " i ' wszędzie, co jest tu ustawieniem domyślnym, jest zawsze bezpieczne.

› Używać encji nazwanych czy liczbowych?

Oba rodzaje działają w każdej nowoczesnej przeglądarce. Encje nazwane, takie jak &eacute;, są czytelniejsze; odwołania liczbowe, takie jak &#xe9;, działają też w XML i w starszych parserach, które znają tylko kilka nazw. Na stronie w UTF-8 zwykle w ogóle nie musisz kodować znaków spoza ASCII.

› Czy dekodowanie obsługuje encje bez średnika?

Tak. Dekoder działa zgodnie ze specyfikacją HTML, więc starsze formy, takie jak &copy bez średnika, są dekodowane tak, jak zrobiłaby to przeglądarka. Nieznane nazwy, takie jak &foo;, pozostają bez zmian.

› Czy escapowanie wystarczy, aby zapobiec XSS?

Escapowanie to właściwa obrona dla tekstu umieszczanego wewnątrz elementów HTML i atrybutów w cudzysłowach. Nie czyni jednak niezaufanych danych bezpiecznymi wewnątrz bloków script, bloków style, atrybutów obsługi zdarzeń ani adresów URL — tam potrzebne jest kodowanie zależne od kontekstu.