🌐

Unicode for the Modern Web

HTML, CSS, JavaScript, and Beyond

A complete guide to using Unicode correctly in web development — HTML, CSS, JavaScript, APIs, databases, and deployment. Essential reading for frontend and full-stack developers.

7 chapters · 24,000 語 · ~96 分で読める
1

HTML and Unicode: Entities, Escapes, and Encoding

Getting Unicode right in HTML starts with the correct meta charset declaration. This chapter covers named vs numeric entities, when to use escapes, and how browsers decode character encoding.

~3,500 語 · ~14 分
2

CSS and Unicode: Beyond content: ""

CSS interacts with Unicode through the content property, unicode-range, text-transform, and word-break. This chapter covers all the ways CSS handles international text and special characters.

~3,000 語 · ~12 分
3

JavaScript Strings: The UTF-16 Legacy

JavaScript strings are UTF-16 under the hood, leading to surprising behavior with emoji and supplementary characters. This chapter covers String.fromCodePoint, for...of iteration, TextEncoder/TextDecoder, and the Intl APIs.

~4,000 語 · ~16 分
4

APIs and Unicode: JSON, URLs, and Headers

JSON's \uXXXX escapes, percent-encoding in URLs, IDN, Content-Type charset headers — APIs have many Unicode touchpoints. This chapter provides a comprehensive guide to handling Unicode in HTTP APIs.

~3,500 語 · ~14 分
5

Databases and Unicode: Collation Matters

MySQL's utf8 vs utf8mb4 gotcha has bitten countless developers. This chapter covers proper database encoding setup, PostgreSQL ICU collation, case-insensitive queries, and sorting internationalized data.

~3,500 語 · ~14 分
6

Fonts and Rendering: Making It Look Right

Font fallback chains, system-ui, variable fonts, and missing glyph detection — this chapter covers everything you need to know about rendering Unicode characters correctly in web browsers.

~3,000 語 · ~12 分
7

Internationalization: i18n Best Practices

Accept-Language, locale-aware formatting, pluralization, text direction, and language tags — this chapter provides the definitive guide to building web applications that work for every language.

~3,500 語 · ~14 分