Kada kodirati
Samo pet znakova ima značenje u HTML tekstu i atributima: & započinje entitet, < i > ograničavaju tagove, a " i ' završavaju vrednosti atributa. Escape-ujte njih kad god stavljate nepouzdan tekst u stranicu i bezbedni ste od ubacivanja markupa (XSS kroz HTML kontekst). Sve ostalo, uključujući slova sa dijakriticima, emodžije i simbole, može se pisati doslovno u UTF-8 dokumentu; njihovo kodiranje kao é je navika iz doba Latin-1 i čini izvor težim za čitanje.
Tri načina da se zapiše znak
| Oblik | Primer | Napomene |
|---|---|---|
| Imenovani | é → | 2.125 imena u HTML5; čitljivo, ali samo pet osnovnih radi u XML-u bez DTD-a. |
| Decimalni | é | Radi svuda, uključujući XML i SVG. |
| Heks | é | Odgovara Unicode notaciji kodne tačke U+00E9; takođe univerzalan. |
Zamke
je pravi znak (U+00A0). Preživljava kopiranje i lepljenje kao nevidljivi nelomljivi razmak i kvari poređenja stringova; Unicode inspektor ga pronalazi.- Pregledači prihvataju neke nasleđene entitete bez tačke i zareza (
©,&), pa URL poput?a=1©=2u neescape-ovanom atributu postaje?a=1©=2. U atributima uvek pišite&. - Dvostruko kodiranje (
&lt;) se na stranici prikazuje kao doslovno<; kodirajte jednom, na mestu ispisa. - U JavaScript stringovima HTML entiteti se ne dekodiraju; tamo koristite
\u00E9, ili postavitetextContenti potpuno preskočite escape-ovanje.
Pitanja
Šta je ?
Nelomljivi razmak, U+00A0: razmak koji sprečava prelom reda i ne sažima se sa susednim razmacima. Koristite ga između broja i jedinice (10 km) i nigde drugde.
Da li treba da kodiram slova sa dijakriticima?
Ne ako se stranica isporučuje kao UTF-8, što bi svaka moderna stranica trebalo da bude. Pišite é direktno. Kodirajte samo kad bi datoteka mogla da bude sačuvana u drugom skupu znakova ili kad nevidljivi znak treba da učinite vidljivim u izvoru.
Koji entiteti rade u XML-u i SVG-u?
Samo &, <, >, " i ', plus numeričke reference. Imenovani entiteti kao © izazivaju grešku parsiranja u XML-u ako nisu deklarisani.
Kako da prikažem HTML kod na veb stranici?
Kodirajte ga: svako < postaje <, svako & postaje &. Nalepite kod u polje Tekst sa prvom opcijom kodiranja i kopirajte HTML izlaz u <pre><code> blok.