Web/CSS/ lang

From Get docs


The :lang() CSS pseudo-class matches elements based on the language they are determined to be in.

/* Selects any <p> in English (en) */
p:lang(en) {
  quotes: '\201C' '\201D' '\2018' '\2019';
}

Note: In HTML, the language is determined by a combination of the lang attribute, the <meta> element, and possibly by information from the protocol (such as HTTP headers). For other document types there may be other document methods for determining the language.


Syntax

Formal syntax

:lang( <language-code> )

Parameter

<language-code>
A <string> representing the language you want to target. Acceptable values are specified in the HTML spec.

Examples

In this example, the :lang() pseudo-class is used to match the parents of quote elements (<q>) using child combinators. Note that this doesn't illustrate the only way to do this, and that the best method to use depends on the type of document. Also note that Unicode values are used to specify some of the special quote characters.

HTML

<div lang="en"><q>This English quote has a <q>nested</q> quote inside.</q></div>
<div lang="fr"><q>This French quote has a <q>nested</q> quote inside.</q></div>
<div lang="de"><q>This German quote has a <q>nested</q> quote inside.</q></div>

CSS

:lang(en) > q { quotes: '\201C' '\201D' '\2018' '\2019'; }
:lang(fr) > q { quotes: '« ' ' »'; }
:lang(de) > q { quotes: '»' '«' '\2039' '\203A'; }

Result

Specifications

Specification Status Comment
Selectors Level 4The definition of ':lang()' in that specification. Working Draft Adds wildcard language matching and comma-separated list of languages.
Selectors Level 3The definition of ':lang()' in that specification. Recommendation No significant change.
CSS Level 2 (Revision 1)The definition of ':lang()' in that specification. Recommendation Initial definition.

Browser compatibility

Update compatibility data on GitHub

Desktop Mobile
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet
:lang() Chrome

Full support 1

Edge

Full support 12

Firefox

Full support 1

IE

Full support 8

Opera

Full support 8

Safari

Full support 3.1

WebView Android

Full support 1

Chrome Android

Full support 18

Firefox Android

Full support 4

Opera Android

Full support 10.1

Safari iOS

Full support 3.1

Samsung Internet Android

Full support 1.0

Legend

Full support  
Full support


See also

:lang() by Mozilla Contributors is licensed under CC-BY-SA 2.5.