Pseudoklasa CSS :lang() wybiera elementy na podstawie tego, w jakim są języku, czyli praktycznie na podstawie wartości atrybutu lang
lub ustawienia elementu meta
.
Przykład użycia :lang
Przykład użycia pseudoklasy :lang
– wszystkie elementy i
zawierające tekst w języku francuskim będą miały zielony kolor pisma.
<style>
i:lang(fr) {color: green}
</style>
…
<i lang="fr">case à cocher</i>
Poniższy zrzut ekranu przedstawia wynik zastosowania tej reguły CSS.

Składnia :lang
Składnia pseudoklasy :lang
:
:lang(kody języka) {...}
Parametry i dodatkowe przykłady
Pseudoklasa :lang()
przyjmuje listę rozdzielanych przecinkami kodów języka zgodnych z normą BCP 47, choć w bardziej technicznym ujęciu mogą to być dowolne prawidłowe identyfikatory CSS, np.:
:lang(en, fr)
Wielkość liter w kodach języka nie jest rozróżniana. Ponadto kody te można umieścić w pojedynczym lub podwójnym cudzysłowie albo pozostawić bez cudzysłowu. Wszystkie poniższe przykłady są prawidłowe:
:lang(en, fr)
:lang(en, FR)
:lang("en", "fr")
Jeśli zostanie podany tylko podstawowy kod języka, np. en
, to pseudoklasa :lang()
automatycznie będzie dopasowywać także wszystkie jego wersje, np. en-US
itd.:
:lang("en")
…
<p lang="en-US">…</p>
Ponadto można używać symbolu wieloznacznego *
, ale musi on dotyczyć pierwszej części kodu języka, np.:
:lang("*-US")
…
<p lang="en-US">…</p>
Pseudoklasa :lang
działa także w przypadku ustawienia języka całego dokumentu za pomocą elementu meta
.
<meta http-equiv="content-language" content="fr">
Poniższa reguła CSS będzie odnosić się do całego dokumentu zawierającego w nagłówku powyższy element meta
.
:lang(fr) {color: green}