Istnieją takie znaki sterujące Unicode, które spełniają tę samą rolę jak znaczniki. Które należy stosować, a których należy unikać?
Odpowiedź zależy od tego, które znaki bierzemy pod uwagę. Szczegółowe informacje znajdziesz w notatce W3C i raporcie technicznym Unicode Unicode in XML & Other Markup Languages. Ten artykuł podsumowuje niektóre z informacji zawartych w tamtym dokumencie.
Następująca tabela podaje listę znaków, których (według Unicode in XML & Other Markup Languages) nie należy stosować w kontekscie znaczników. Zamiast tego powinieneś stosować znaczniki.
Nazwy/opis | Komentarz |
---|---|
Separator wierszowy i akapitowy | Używaj <br>, <p> itp. |
Znaki sterujące osadzaniem bidi (LRE, RLE, LRO, RLO, PDF) | Nie polecane gdzie istnieją znaczniki |
Aktywować/wstrzymać symetryczną zamianę (np. nawiasów) | Przestarzałe w Unicode |
Aktywować/wstrzymać zmianę formy przy łączeniu znaków arabskich | Przestarzałe w Unicode |
Aktywować/wstrzymać narodową zmianę cyfr | Przestarzałe w Unicode |
Międzywierszowe znaki adnotacyjne | Używaj znaczników ruby |
BOM / ZWNBSP | Używaj U+FEFF wyłącznie jako znacznik kolejności bajtów. Używaj U+2060 Word Joiner (łącznik słów) jako spację niełamiącą o zerowej szerokości zamiast U+FEFF |
Znak zastąpienia obiektu | Używaj znaczników, np. w HTML <object> lub <img> |
Notacja muzyczna | Używaj odpowiedniego języka znaczników |
Kody znaków dla tagów językach | Używaj atrybutu lang i/lub xml:lang |
Szczególnie znaki sterujące osadzaniem dwukierunkowym często wprawiają w zakłopotanie. Są takie miejsca, gdzie trzeba ich używać, żeby uzyskać odpowiednio uporządkowany dwukierunkowy tekst w językach napisanych w pismach pisanych od prawej do lewej, jak pismo arabskie, hebrajskie, taana itp. Są to miejsca, gdzie pewien element nie pozwala na wewnętrze znaczniki, jak np. element title
. Tam gdzie istnieją znaczniki, powinieneś ich używać. Szczegółowe informacje o tym znajdziesz w Unicode controls vs. markup for bidi support. Rekomendacje, jak stosować znaki sterujące osadzaniem w sytuacjach kiedy znaczniki nie mogą być użyte, znajdziesz w Using Unicode controls for bidi text.
Następująca lista nie jest zupełna. Znajdziesz w niej niektóre przykłady znaków Unicode, które nadają się do stosowania dodatkowo do znaczników, żeby dostarczyć informacji o tekscie.
Nazwy/opis | Komentarz |
---|---|
Różne | spacja niełamiąca (no-break space), miękki dywiz (soft hyphen), kombinujący łącznik grafemów (combining grapheme joiner), łącznik nierozdzielający (non breaking hyphen), łącznik słów (word joiner) itp. |
Łączniki zerowej szerokości (rozdzielający i nierozdzielający, zero-width joiners, ZWJ i ZWNJ) | np. niezbędne dla perskiego |
Implicytne znaki kierunkowe (LRM i RLM) | |
Znaki formatowania | popularne w pismach arabskim i syryjskim |
Selektory wariantowe | np. niezbędne dla pisma mongolskiego |
Znaki opisu ideograficznego | wskazują kompozycje ideogramów |
Wyciąg z Unicode in XML & Other Markup Languages:
Standard Unicode podaje mapę kompatybilności dla niektórych znaków. Mapy kompatybilności wskazują relację do innego znaku, ale dokładny charakter tego stosunku różni się. W niektórych przypadkach ten stosunek oznacza „bazuje na”, w innych przypadkach określa właściwość. Kiedy tekst zostaje oznaczony znacznikami, może mieć sens zmapowanie niektórych z tych znaków z ich kompatybilnymi odpowiednikami i odpowiednymi znacznikami. Ważnym jest rozumieć naturę różnic pomiędzy znakami i ich kompatybilnymi odpowiednikami oraz kontekst, w którym te różnice się liczą. Nie zaleca się stosować map kompatybilności bezkrytycznie.
Następująca tabela podaje niezupełną listę przykładów.
Nazwy/opis | Przykłady | Wniosek |
---|---|---|
Litery i liczby w okręgu używane jako punktory | ① ② ③ Ⓐ Ⓑ Ⓒ ㊂ ㊃ ㊄ ㊓ ㊔ ㊕ ㋝ ㋞ ㋟ | OK |
Liczby w nawiasach lub z kropkami używane jako punktory | ⑴ ⑵ ⑶ | Używaj stylizacji punktorów |
Arabskie formy prezentacji | ﻉ ﻊ ﻋ ﻌ | Normalizuj |
Znaki o połowie szerokości i o pełnej szerokości | ヤ ユ ヨ ラ a b c d | OK |
Indeksy górne i dolne | ¹ ² ³ ₁ ₂ ₃ | Używaj znaczników <sup> i <sub> |
Jesteś początkujący? Wprowadzenie do zbiorów znaków i kodowań http://www.w3.org/International/getting-started/characters
Tutorial: Obsługa kodowania znaków w HTML i CSS http://www.w3.org/International/tutorials/tutorial-char-enc/
Powiązane artykuły: Tworzenie dokumentów HTML i CSS
Powiązane artykuły: Tworzenie dokumentów XML