Utilia

HTML-entiteter – koda och avkoda

Koda specialtecken som HTML-entiteter (namngivna, decimala eller hex) eller avkoda valfri entitet med hela listan över 2 231 namngivna referenser i HTML5.

Kodningsalternativ

Så kodar eller avkodar du HTML-entiteter

  1. Klistra in din text eller HTML i inmatningsrutan.
  2. För att koda väljer du vilka tecken som ska kodas: Bara & < > " ' eller Även alla tecken utanför ASCII, och väljer ett Entitetsformat: Namngiven (&eacute;), Decimal (&#233;) eller Hexadecimal (&#xE9;).
  3. Klicka på Koda, eller klicka på Avkoda för att göra om entiteter till tecken igen.
  4. Läs antalet på statusraden och klicka sedan på Kopiera. Använd resultatet som indata flyttar resultatet till inmatningsrutan, till exempel för att kontrollera att en kodning går att vända tillbaka.

Kodning: när och vad du ska koda

I HTML kan fem tecken misstas för märkkod. Bara & < > " ' ersätter exakt dessa: & med &amp;, < med &lt;, > med &gt;, " med &quot; och ' med &#39;. Det är vad du behöver för att visa kod på en webbsida, lägga användartext i ett attribut eller klistra in ett kodavsnitt i ett blogginlägg eller ett CMS-fält som förväntar sig HTML. Apostrofen skrivs i numerisk form eftersom &apos; inte fanns i HTML 4 och vissa äldre parsrar inte känner till den.

Även alla tecken utanför ASCII ersätter dessutom allt utanför skrivbar ASCII: å, ä, ö och andra bokstäver med diakritiska tecken, typografiska citattecken, eurotecknet, hårda mellanslag, emoji och så vidare. Resultatet är ren ASCII, vilket är praktiskt för system som förvanskar UTF-8, för e-postmallar eller för att synliggöra osynliga tecken som &nbsp; i källkoden.

Entitetsformat avgör hur tecknen skrivs:

  • Namngiven (&eacute;) använder ett läsbart namn när HTML definierar ett (&aring;, &euro;, &hellip;), och väljer det klassiska namnet från HTML 4 när ett tecken har flera. Tecken utan namn, som emoji, skrivs i stället decimalt.
  • Decimal (&#233;) skriver Unicode-kodpunkten i bas 10.
  • Hexadecimal (&#xE9;) skriver den i bas 16, vilket motsvarar notationen U+00E9 i Unicode-tabeller.

Alla tre förstås av alla webbläsare. Tecken utanför Basic Multilingual Plane, som 😀, kodas som en enda referens till hela kodpunkten (&#128512;), inte som två surrogathalvor.

Avkodning: reglerna i HTML5

Avkoda följer de regler som webbläsare använder när de läser textinnehåll, med den kompletta listan över 2 231 namngivna teckenreferenser från HTML Living Standard:

  • namngivna referenser som &eacute;, &rarr; eller &NotEqualTilde; (vissa ger två kodpunkter);
  • decimala (&#233;) och hexadecimala (&#xE9; eller &#XE9;) referenser, med eller utan avslutande semikolon;
  • äldre namn som webbläsare godtar utan semikolon, som &copy 2026 eller &amp – och, precis som i webbläsare, blir &notit; till ¬it; eftersom &not är ett sådant äldre namn;
  • numeriska referenser i intervallet 128–159 översätts till de Windows-1252-tecken som webbläsare visar (&#150; ger ett tankstreck), och &#0;, surrogat och värden över U+10FFFF blir ersättningstecknet �.

Okända namn som &foo; lämnas oförändrade och räknas på statusraden. Avkodningen görs av verktygets egen parser, inte genom att din text infogas på sidan, så märkkod eller skript i indata tolkas aldrig.

Vanliga frågor

Måste jag koda å, ä och ö?

Oftast inte. En sida som skickas som UTF-8 kan innehålla å, é eller € direkt. Att koda tecken utanför ASCII behövs bara när filen eller ett system på vägen inte klarar UTF-8.

Varför avkodas &amp;amp; till &amp; och inte till &?

Avkodningen görs en gång, precis som i en webbläsare. &amp;amp; är ett kodat &amp;. Klicka på Använd resultatet som indata och sedan på Avkoda igen om texten kodats två gånger.

Vad är skillnaden mot URL-kodning?

HTML-entiteter skyddar text i HTML-dokument. URL-kodning (%20, %C3%A5) skyddar text i webbadresser. Använd URL-kodaren för länkar och frågesträngar.

Skickas min text till en server?

Nej. Kodning och avkodning körs i din webbläsare. Bara listan med entitetsnamn laddas från den här webbplatsen första gången du avkodar.

Avkodas entiteter i attribut på ett annat sätt?

Webbläsare hanterar några äldre namn utan semikolon annorlunda i attributvärden. Verktyget använder reglerna för textinnehåll, som motsvarar det du ser på sidan.