HTML karakterkódolás

Ez a közzétett változat, ellenőrizve: 2024. április 21.

A HTML (angolul: HyperText Markup Language=hiperszöveges jelölőnyelv) nyelvet már 1991 óta használják, de csak az 1997-ben megjelent HTML 4.0 óta lehetséges a nemzetközi karakterek teljeskörű használata. Amikor egy HTML dokumentum speciális karaktereket tartalmaz a 7 bites ASCII karakterein kívül, akkor két célt érdemes figyelembe venni: az információk integritását és az univerzális böngésző megjelenést.

A karakterkódolás az informatikában a betűk, a számok és egyéb karakterek megjelenítéséért felel. Minden egyes karakterhez egy egyedi számot rendelünk hozzá, például az ASCII karaktergyűjteményben az A betűhöz a 65-ös szám tartozik. Ez azért fontos, mert az informatikai eszközök (számítógépek, telefonok) az ember számára értelmezhető karaktereket elektronikus formában tudják csak megjeleníteni, azaz a minden karaktert számok formájában tárolnak. Ezeket a számokból álló rendszereket nevezik karakterkódolásnak.

Karakterkódolás kiválasztása

szerkesztés

Ahhoz hogy eltudjuk dönteni, hogy milyen karakterkódolásra van szükségünk, először meg kell határoznunk, hogy milyen karaktereket szeretnénk megjeleníteni. Különös tekintettel azokra a karakterekre, amelyeket nem tartalmazza az angol ABC. Például a magyar nyelv esetében az ékezetes karakterekre.

Ha elkészítettünk egy listát, amelyen szerepelnek az általunk használni kívánt karakterek, akkor meg kell keresnünk azt a karakterkészletet, amely tartalmazza az összes számunkra szükséges karaktert.

Magyar nyelvterületen leggyakrabban az UTF-8 karakterkódolást szokták alkalmazni, mert ez tartalmazza az összes általunk használt karakter ékezetes változatát is.

Karakterkódolás megadása

szerkesztés

Több módja is van annak, hogy a HTML nyelven belül megadjuk a karakterkódolást, a megadás módja a dokumentum típusától függ. A webszerver tartalmazhatja a karakterkódolást, a karakterkészlet a Hypertext Transfer Protocol (HTTP) Content-Type tartalomtípus fejlécében kerül meghatározásra az alábbi módon:

Content-Type: text/html; charset=ISO-8859-4

Ez a módszer kényelmes módot kínál a HTTP szervernek a dokumentum kódolásának a tartalmai egyeztetés szerint történő megváltoztatására.

Egy HTML dokumentum esetében a <head> részbe kell helyeznünk a karakterkódolást[1] definiáló részt. Régebbi HTML verziók esetében még szükséges volt az alábbi megadási módot alkalmaznunk.

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

A HTML5 megjelenésével viszont már rendkívül megrövidült a karakterkódolásnak a megadása.

<meta charset="UTF-8">

AZ XHTML dokumentumok esetében van egy harmadik lehetőség is. Ilyenkor egy XML deklarációval állítjuk be a megfelelő karakterkódolást.

<?xml version="1.0" encoding="ISO-8859-1"?>

Megengedett karakterkódolások

szerkesztés

A legújabb HTML szabványok a WHATWG kódolási szabványra hivatkoznak, amely meghatározza azoknak a karakterkódolásoknak a listáját, amelyeket a böngészőknek kötelezően támogatniuk kell. A HTML-szabványok tiltják más kódolások támogatását.[2] A kódolási szabvány előírja, hogy új formátumok, új protokollok és az új dokumentumok szerzői kötelesek kizárólag UTF-8 karakterkódolást alkalmazni.[3]

Az UTF-8 mellett a következő karakterkódolások engedélyezettek a HTML szabvány szerint:[4]

  • ISO-8859-2
  • ISO-8859-7
  • ISO-8859-8
  • Windows-874
  • Windows-1250
  • Windows-1251
  • Windows-1252
  • Windows-1254
  • Windows-1255
  • Windows-1256
  • Windows-1257
  • Windows-1258
  • GB18030
  • Big5
  • Shift JIS
  • ISO-2022-JP
  • EUC-KR
  • UTF-16BE
  • UTF-16LE
  • x-user-defined

A következő karakterkódolások támogatása szükséges:[3]

  • Code page 866
  • ISO-8859-3
  • ISO-8859-4
  • ISO-8859-5
  • ISO-8859-6
  • ISO-8859-8-I
  • ISO-8859-10
  • ISO-8859-13
  • ISO-8859-14
  • ISO-8859-15
  • ISO-8859-16
  • KOI8-R
  • KOI8-U / KOI8-RU
  • Mac OS Roman
  • Windows-1253
  • Mac OS Cyrillic
  • GBK

Az alábbi karakterkészletek használata kifejezetten tiltott:[4]

  • CESU-8
  • UTF-7
  • BOCU-1
  • SCSU
  • EBCDIC
  • UTF-32

HTML karakterhivatkozások

szerkesztés

A natív karakterkódolások mellett a karakterek is kódolhatók karakterhivatkozásokként. Ezek olyan speciális karakterek, amelyek alkalmasak arra, hogy a böngésző összekeverje őket egy HTML taggel. Például egy kisebb (<) jel esetében a böngésző vélheti úgy, hogy ez egy HTML tag, ebben az esetben a HTML kódot teljesen olvashatatlanná tenné. A karakterhivatkozásokkal különböző fenntartott HTML karaktereket tudunk a böngésző számára is könnyen értelmezhetővé és megjeleníthetővé tenni.

A karakterhivatkozásokat hívhatjuk entitásnak is.[5]

Néhány karakterhivatkozás

szerkesztés
Karakter Megnevezés Entitás név Entitás szám
nem törhető szóköz &nbsp; &#160;
< kisebb, mint &lt; &#60;
> nagyobb, mint &gt; &#62;
& és &amp; &#38;
" dupla idézőjel &quot; &#34;
' aposztróf &apos; &#39;
¢ cent &cent &#162;
£ font &pound &#163;
¥ jen &yen &#165;
euró &euro &#8364;
© copyright &copy &#169;
® bejegyzett védjegy &reg &#174;

Linkek a témában

szerkesztés

Az alább található cikkek segítséget nyújthatnak a karakterkódolások gyakorlati használatában.

Hivatkozások

szerkesztés
  1. HTML karakterkódolás, karakterkészlet megadása (HTML meta charset) - WEBiskola (magyar nyelven). webiskola.hu, 2020. szeptember 15. (Hozzáférés: 2021. június 1.)
  2. HTML 5.1 2nd Edition: 8. The HTML syntax. www.w3.org. (Hozzáférés: 2021. június 8.)
  3. a b Encoding Standard. encoding.spec.whatwg.org. (Hozzáférés: 2021. június 8.)
  4. a b HTML Standard. html.spec.whatwg.org. (Hozzáférés: 2021. június 8.)
  5. HTML Entities. www.w3schools.com. (Hozzáférés: 2021. június 8.)