Kodiranje in dekodiranje HTML entitet
Zamenjajte znake, ki jih HTML razume kot oznake, po želji tudi vse znake zunaj nabora ASCII, ali pa entitete, kot sta é in —, pretvorite nazaj v navadno besedilo. Obe smeri delujeta v vašem brskalniku, dekodiran vnos pa se nikoli ne prikaže kot delujoč HTML.
0 znakov · 0 besed · 0 vrstic
0 znakov · 0 besed · 0 vrstic
Deluje povsem v tem zavihku brskalnika. Vaše besedilo se nikoli ne naloži in ne shrani.
Pogosti znaki in njihove entitete
Imenovane, desetiške in šestnajstiške oblike se dekodirajo v isti znak. Kodirnik pozna 216 pogostih imenovanih entitet; dekodirnik razume vse imenovane reference iz standarda HTML.
| Znak | Imenovane | Desetiške | Šestnajstiške |
|---|---|---|---|
& | & | & | & |
< | < | < | < |
> | > | > | > |
" | " | " | " |
' | ' | ' | ' |
(nelomljivi presledek) | |   |   |
© | © | © | © |
® | ® | ® | ® |
™ | ™ | ™ | ™ |
€ | € | € | € |
£ | £ | £ | £ |
¥ | ¥ | ¥ | ¥ |
— | — | — | — |
– | – | – | – |
… | … | … | … |
« | « | « | « |
» | » | » | » |
° | ° | ° | ° |
× | × | × | × |
÷ | ÷ | ÷ | ÷ |
é | é | é | é |
π | π | π | π |
→ | → | → | → |
😀 | — | 😀 | 😀 |
Od 252 entitet v HTML 4 do 2.231 v HTML5
Sklic na znak je način, kako zapisati znak samo z ASCII. Številčni sklici delujejo za vsako kodno točko Unicode, v decimalni (é) ali šestnajstiški (é) obliki. Poimenovane sklice si je lažje zapomniti: HTML 4 jih je določil 252, zajemajo latinične črke iz nabora Latin-1, kot je é, grške črke, matematične simbole in tipografske znake, kot sta — in …. Zanimivo je, da med njimi ni bilo '; ta izvira iz XML in je v HTML postal veljaven šele s HTML5.
HTML5 je seznam razširil na 2.231 poimenovanih sklicev na znake in vanj vključil nabor entitet MathML, zato imena, kot so ✓, ★ in ≂̸, zdaj delujejo v vseh sodobnih brskalnikih. V število so všteti tudi stari zapisi brez zaključnega podpičja, na primer & in ©, ki jih razčlenjevalniki zaradi združljivosti še sprejmejo, vendar jih ne smete pisati. Kodirnik tukaj ustvari splošno podprta imena iz HTML 4 in ', za vse ostalo pa uporabi številčni sklic; dekodirnik preda besedilo brskalnikovemu razčlenjevalniku, zato razume vseh 2.231 imen.
Kaj kodirati in kdaj kodiranje ne zadošča
Only & < > " ' je nastavitev za vsakdanje delo: nadomesti pet znakov, ki lahko zaključijo besedilno vozlišče ali atribut v narekovajih, kar zadošča za prikaz vzorca kode na strani ali varno vstavljanje uporabnikovega besedila v HTML. Also every non-ASCII character v sklice pretvori tudi é, € in emojije, kar je namenjeno redkim kanalom, ki ne prenesejo UTF-8, na primer nekaterim starim e-poštnim predlogam ali sistemom, ki pokvarijo kodiranje. Named, Decimal in Hex spremenijo samo zapis sklica; vsi trije se dekodirajo v isti znak. Stran, shranjena v UTF-8, za naglašene črke ne potrebuje entitet.
Nadomeščanje znakov varuje samo kontekst HTML. Besedilo, vstavljeno v blok skripte, v vgrajeni obravnavalnik dogodkov, kot je onclick, v atribut style ali v href, ki se lahko začne z javascript:, zahteva drugačno obravnavo, kodiranje entitet pa tam samo po sebi ne prepreči skriptiranja med spletnimi mesti. Ogrodja, kot je React, besedilo privzeto nadomestijo sama, zato je v sodobnih aplikacijah pogostejša napaka dvojno nadomeščanje: uporabniki namesto znaka & vidijo &. Če želite oznake povsem odstraniti, označbe pretvorite z orodjem HTML v TXT; za nadomeščanje znakov v naslovih URL uporabite URL kodiranje in dekodiranje.
Pogosto zastavljena vprašanja
- Katere znake je treba v HTML zamenjati z entitetami?
- V besedilu sta bistvena & in <, znak > pa se po dogovoru prav tako nadomesti. V vrednosti atributa nadomestite še narekovaj, ki jo omejuje. Če nadomestite vseh pet znakov, sta pokrita oba primera.
- Kakšna je razlika med in navadnim presledkom?
je nedeljivi presledek, U+00A0. Videti je kot presledek, vendar na tem mestu prepreči prelom vrstice in se, za razliko od navadnih presledkov v HTML, ne strne, če jih je več skupaj.- Zakaj moja stran namesto znaka & prikazuje &?
- Besedilo je bilo nadomeščeno dvakrat: enkrat v vaših podatkih in nato še v predlogi ali ogrodju. Shranjujte surovo besedilo, nadomeščanje ob izpisu pa naj opravi ena plast, običajno predloga.
- Ali je tukaj varno dekodirati HTML iz nezanesljivega vira?
- Da. Dekodirnik vhod razčleni kot navadno besedilo, zato se oznake ne ustvarijo, skripte se ne izvedejo in slike se ne naložijo. V znake se pretvorijo samo sklici na entitete.
- Ali so boljše imenske ali številske entitete?
- Poimenovani so bolj berljivi, številčni pa delujejo za vsak znak in v vsakem razčlenjevalniku XML. V XML brez DTD so vnaprej določeni samo
&,<,>,"in'.