blob: ea0bb496a50711be94cb1159247bf689329195c1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
|
---
title: ':lang'
slug: 'Web/CSS/:lang'
tags:
- CSS
- Layout
- Pseudo-class
- Reference
- Selector
- Web
translation_of: 'Web/CSS/:lang'
---
<div>{{CSSRef}}</div>
<p><strong><code>:lang()</code></strong> は<a href="/ja/docs/Web/CSS">CSS</a> の<a href="/ja/docs/Web/CSS/Pseudo-classes">擬似クラス</a>で、指定された言語に基づいて要素に一致させます。</p>
<pre class="brush: css no-line-numbers notranslate">/* <p> のうち English (en) のものをすべて選択 */
p:lang(en) {
quotes: '\201C' '\201D' '\2018' '\2019';
}</pre>
<div class="note">
<p><strong>メモ:</strong> HTML では、言語は {{htmlattrxref("lang")}} 属性と {{HTMLElement("meta")}} 要素、それに、可能であればプロトコルから得られる情報 (HTTP ヘッダーなど) の組み合わせで決められます。他の文書型では、文書の言語を決定する他の方法があるかもしれません。</p>
</div>
<h2 id="Syntax" name="Syntax">構文</h2>
<h3 id="Formal_syntax" name="Formal_syntax">形式文法</h3>
<pre class="syntaxbox notranslate">{{csssyntax}}</pre>
<h3 id="Parameter" name="Parameter">引数</h3>
<dl>
<dt><code><language-code></code></dt>
<dd>{{cssxref("<string>")}} で、ターゲットにしたい言語を表します。受付可能な値は <a href="/ja/docs/Web/HTML">HTML</a> 仕様書で定義されています。</dd>
</dl>
<h2 id="Example" name="Example">例</h2>
<p>この例では、 <code>:lang()</code> 疑似クラスを使用して引用要素 ({{htmlElement("q")}}) の親を選択するために <a href="/ja/docs/Web/CSS/Child_selectors">子結合子</a> を使用しています。なお、この例はこの目的のための唯一の方法でも、文書型における最適な方法を示しているわけでもありません。また、 {{glossary("Unicode")}} の値は特殊な引用符を指定するために使用していることに注意してください。</p>
<h3 id="HTML">HTML</h3>
<pre class="brush: html notranslate"><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>
</pre>
<h3 id="CSS">CSS</h3>
<pre class="brush: css notranslate">:lang(en) > q { quotes: '\201C' '\201D' '\2018' '\2019'; }
:lang(fr) > q { quotes: '« ' ' »'; }
:lang(de) > q { quotes: '»' '«' '\2039' '\203A'; }
</pre>
<h3 id="Result" name="Result">結果</h3>
<p>{{EmbedLiveSample('Examples', 350)}}</p>
<h2 id="Specifications" name="Specifications">仕様書</h2>
<table class="standard-table">
<thead>
<tr>
<th scope="col">仕様書</th>
<th scope="col">状態</th>
<th scope="col">備考</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{SpecName('CSS4 Selectors', '#lang-pseudo', ':lang()')}}</td>
<td>{{Spec2('CSS4 Selectors')}}</td>
<td>ワイルドカードによるマッチングとカンマ区切りの言語リストを追加。</td>
</tr>
<tr>
<td>{{SpecName('CSS3 Selectors', '#lang-pseudo', ':lang()')}}</td>
<td>{{Spec2('CSS3 Selectors')}}</td>
<td>有意な変更なし。</td>
</tr>
<tr>
<td>{{SpecName('CSS2.1', 'selector.html#lang', ':lang()')}}</td>
<td>{{Spec2('CSS2.1')}}</td>
<td>初回定義。</td>
</tr>
</tbody>
</table>
<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの互換性</h2>
<div>
<div class="hidden">このページの互換性一覧表は構造化データから生成されています。データに協力していただけるのであれば、 <a class="external" href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> をチェックアウトしてプルリクエストを送信してください。</div>
<p>{{Compat("css.selectors.lang")}}</p>
</div>
<h2 id="See_also" name="See_also">関連情報</h2>
<ul>
<li>原語に関する擬似クラス: {{cssxref(":lang")}}, {{cssxref(":dir")}}</li>
<li>HTML の {{htmlattrxref("lang")}} 属性</li>
<li>HTML の {{htmlattrxref("translate")}} 属性</li>
<li><a class="external" href="https://tools.ietf.org/html/bcp47">BCP 47 - Tags for Identifying Languages</a></li>
</ul>
|