Text a kód / MULTIVERTO

HTML kódovanie znakov

Preveďte &, <, > a úvodzovky na HTML entity, keď potrebujete bezpečne zobraziť text v HTML.

Okamžitý prevodVáš vstup zostáva v prehliadači. Text na prevod nikam neodosielame.
Súbor zostáva vo vašom prehliadači.
Hromadný prevod
Reťaziť nástroje

Každý textový nástroj použite na predchádzajúci výsledok.

01 / Postup

Ako to funguje

Špeciálne znaky sa zmenia na HTML entity, napríklad & na &amp; a < na &lt;. Nejde o sanitizáciu HTML.

Užitočná poznámka

Zakódovanie textu pre obsah HTML nestačí pre JavaScript, CSS, URL ani všetky HTML atribúty. Každý kontext vyžaduje vlastné ošetrenie.

02 / Príklad

Príklad

Váš vstup<p class="pozdrav">Ahoj & vitaj</p>
Výsledok&lt;p class=&quot;pozdrav&quot;&gt;Ahoj &amp; vitaj&lt;/p&gt;

03 / Postup

HTML kódovanie znakov — Ako to funguje

Kódovanie textu pre HTML textový uzol

Tento smer použite, keď má doslovný text byť na stránke viditeľný bez toho, aby prehliadač považoval ostré zátvorky za značky. Ak zadáte <b>ahoj</b>, výstup obsahuje referencie pre zátvorky a neskorší HTML parser môže úryvok zobraziť ako text. Ampersand sa ošetruje ako prvý, aby sa existujúca sekvencia podobná entite nespracovala nečakane. Nástroj ošetruje aj úvodzovky, no výsledok tým nie je všeobecne bezpečný pre každý atribút alebo skript.

Nekódujte celý dôveryhodný HTML dokument, ak chcete značky skutočne vykresliť: uvideli by ste ich znaky namiesto formátovaného obsahu. Pri komentároch používateľov uprednostnite textContent alebo bezpečné vkladanie textu vo frameworku; tieto rozhrania riešia správny kontext. Ak sa hodnota dostane do href, pravidla štýlu alebo reťazca JavaScriptu, použite bezpečné rozhranie určené pre dané miesto.

HTML entity a kontext prehliadača

HTML vyhradzuje znaky ako ampersand a ostré zátvorky pre značkovanie. Znakové referencie umožňujú zapísať ich ako dáta: &amp; napríklad predstavuje ampersand a &lt; znak menší ako. Prehliadač ich interpretuje pri spracovaní HTML. Existujú pomenované aj číselné referencie, no ich význam závisí od kontextu, v ktorom ich číta HTML parser. Text podobný entite v obyčajnom súbore ešte neznamená, že bol tento súbor vykreslený ako HTML.

Je dôležité rozlišovať textový obsah a vykonateľné značkovanie. Bezpečné zobrazenie textu od používateľa na stránke nie je to isté ako vloženie dôveryhodného HTML fragmentu. Textový uzol, atribút, URL, pravidlo CSS aj reťazec JavaScriptu majú odlišné požiadavky na ošetrenie. Prevod entít je spôsob zápisu, nie úplná bezpečnostná politika ani sanitizácia HTML. Na konkrétne miesto vloženia hodnoty použite vhodné šablóny alebo rozhranie DOM.

Ako používať prevodník

Začnite pôvodným textom a overte, že cieľová aplikácia skutočne vyžaduje zakódovaný zápis. Vložte text alebo načítajte príklad a pred kopírovaním si prezrite výstup. Prevod beží v tomto prehliadači; text sa neposiela na server na konverziu. Tento smer mení zápis informácie, nie význam vety. Pri hľadaní chyby ponechajte zdroj vedľa výsledku a nekódujte dvakrát, pokiaľ cieľový formát výslovne nežiada dve vrstvy.

Ak potrebujete výsledok spätne skontrolovať, ponechajte si pôvodný vstup. Zakódovaný zápis môže vyzerať celkom inak ako text, najmä pri diakritike, emoji, interpunkcii alebo nových riadkoch. Pred použitím výsledku v inom programe zistite, aké kódovanie znakov a presný formát očakáva. Najprv skúste krátky známy príklad a porovnajte výstup v cieľovej aplikácii: podobne vyzerajúce formáty nemusia byť zameniteľné.

Ako sa mení vstup na výsledok
Text na zakódovanie
Znakové odkazy
HTML entity