aboutsummaryrefslogtreecommitdiff
path: root/files/zh-cn/web/css/_colon_lang/index.html
blob: 1249bad6037fa6186cbe10775436c1a1da9a6b95 (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
---
title: ':lang'
slug: 'Web/CSS/:lang'
translation_of: 'Web/CSS/:lang'
---
<p> </p>

<div>{{CSSRef}}</div>

<p><strong><code>:lang()</code></strong> <a href="https://developer.mozilla.org/en-US/docs/Web/CSS">CSS</a> <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-classes">伪类</a>基于元素语言来匹配页面元素。</p>

<pre><code>/* 选取任意的英文(en)段落 */
p:lang(en) {
  quotes: '\201C' '\201D' '\2018' '\2019';
}</code></pre>

<div class="note">
<p><strong>注意:</strong> 在HTML中, 语言是通过{{htmlattrxref("lang")}} 属性,和 {{HTMLElement("meta")}} 元素的组合来决定的, 也可能是通过协议的信息来确定(例如HTTP头). 对于其他文档类型,也可能存在其他用于确定语言的方法。</p>
</div>

<h2 id="语法">语法</h2>

<h3 id="正式语法">正式语法</h3>

<pre class="syntaxbox">:lang( &lt;language-code&gt; )</pre>

<h3 id="参数">参数</h3>

<dl>
 <dt><code>&lt;language-code&gt;</code></dt>
 <dd> {{cssxref("&lt;string&gt;")}} 代表了你想定位的语言. 可接受的值为在<a href="https://developer.mozilla.org/en-US/docs/Web/HTML">HTML</a> 规范中指定的值.</dd>
</dl>

<h2 id="Example">Example</h2>

<p>在这个例子中, :lang() 伪类使用子选择器来匹配引用元素({{htmlElement("q")}})的父元素. 需要注意的是,此处演示的方法并不是唯一的,最好的方法需要依据文档类型来确定。还需要注意的是, {{glossary("Unicode")}} 值用于指定一些特殊字符的引用.</p>

<h3 id="HTML">HTML</h3>

<pre class="brush: html">&lt;div lang="en"&gt;&lt;q&gt;This English quote has a &lt;q&gt;nested&lt;/q&gt; quote inside.&lt;/q&gt;&lt;/div&gt;
&lt;div lang="fr"&gt;&lt;q&gt;This French quote has a &lt;q&gt;nested&lt;/q&gt; quote inside.&lt;/q&gt;&lt;/div&gt;
&lt;div lang="de"&gt;&lt;q&gt;This German quote has a &lt;q&gt;nested&lt;/q&gt; quote inside.&lt;/q&gt;&lt;/div&gt;
</pre>

<h3 id="CSS">CSS</h3>

<pre class="brush: css">:lang(en) &gt; q { quotes: '\201C' '\201D' '\2018' '\2019'; }
:lang(fr) &gt; q { quotes: '« ' ' »'; }
:lang(de) &gt; q { quotes: '»' '«' '\2039' '\203A'; }
</pre>

<h3 id="Result">Result</h3>

<p>{{EmbedLiveSample('Example', 350)}}</p>

<h2 id="规范">规范</h2>

<table class="standard-table">
 <thead>
  <tr>
   <th scope="col">规范</th>
   <th scope="col">状态</th>
   <th scope="col">Comment</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="浏览器兼容性">浏览器兼容性</h2>

<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><a href="https://tools.ietf.org/html/bcp47">BCP 47 - Tags for Identifying Languages</a></li>
</ul>