blob: 835fb611afc261d74350c28217752f4f69a842b0 (
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
|
---
title: ':placeholder-shown'
slug: Web/CSS/:placeholder-shown
tags:
- ':placeholder-shown'
- CSS
- Pseudo-class
- Reference
- Selector
- セレクター
- 擬似クラス
browser-compat: css.selectors.placeholder-shown
translation_of: Web/CSS/:placeholder-shown
---
<div>{{CSSRef}}</div>
<p><strong><code>:placeholder-shown</code></strong> は <a href="/ja/docs/Web/CSS">CSS</a> の<a href="/ja/docs/Web/CSS/Pseudo-classes">擬似クラス</a>で、<a href="/ja/docs/Web/HTML/Element/input#attr-placeholder">プレイスホルダー文字列</a>が表示されている {{HTMLElement("input")}} または {{HTMLElement("textarea")}} 要素を表します。</p>
<pre class="brush: css no-line-numbers">/* プレイスホルダーが有効な要素を選択 */
:placeholder-shown {
border: 2px solid silver;
}</pre>
<h2 id="Syntax">構文</h2>
{{CSSSyntax}}
<h2 id="Example">例</h2>
<h3 id="Basic_example">基本的な例</h3>
<p>この例は、プレイスホルダーが表示されているときに特殊なフォントと境界線を適用します。</p>
<h4 id="HTML">HTML</h4>
<pre class="brush: html"><input placeholder="何か入力してください!"></pre>
<h4 id="CSS">CSS</h4>
<pre class="brush: css">input {
border: 1px solid black;
padding: 3px;
}
input:placeholder-shown {
border-color: teal;
color: purple;
font-style: italic;
}</pre>
<h4 id="Result">結果</h4>
<p>{{EmbedLiveSample("Basic_example", 200, 80)}}</p>
<h3 id="Overflowing_text">文字列があふれる場合</h3>
<p>スマートフォンのような狭い画面では、検索ボックスやその他の入力欄の幅はとても狭くなります。これにより、プレイスホルダーの文字列が望ましくない形で切り取られることがあります。 {{cssxref("text-overflow")}} プロパティでこの挙動を修正すると便利です。</p>
<h4 id="HTML_2">HTML</h4>
<pre class="brush: html"><input id="input1" placeholder="Name, Rank, and Serial Number">
<br><br>
<input id="input2" placeholder="Name, Rank, and Serial Number"></pre>
<h4 id="CSS_2">CSS</h4>
<pre class="brush: css">#input2:placeholder-shown {
text-overflow: ellipsis;
}</pre>
<h4 id="Result_2">結果</h4>
<p>{{EmbedLiveSample("Overflowing_text", 200, 80)}}</p>
<h3 id="Customized_input_field">カスタマイズした入力欄</h3>
<p>以下の例では部署名と ID コード欄をカスタムスタイルで強調します。</p>
<h4 id="HTML_3">HTML</h4>
<pre class="brush: html"><form id="test">
<p>
<label for="name">Enter Student Name:</label>
<input id="name" placeholder="Student Name"/>
</p>
<p>
<label for="branch">Enter Student Branch:</label>
<input id="branch" placeholder="Student Branch"/>
</p>
<p>
<label for="sid">Enter Student ID:</label>
<input type="number" pattern="[0-9]{8}" title="8 digit ID" id="sid" class="studentid" placeholder="8 digit id"/>
</p>
<input type="submit"/>
</form></pre>
<h4 id="CSS_3">CSS</h4>
<pre class="brush: css; highlight[6]">input {
background-color: #E8E8E8;
color: black;
}
input.studentid:placeholder-shown {
background-color: yellow;
color: red;
font-style: italic;
}</pre>
<h4 id="Result_3">結果</h4>
<p>{{EmbedLiveSample("Customized_input_field", 200, 180)}}</p>
<h2 id="Specifications">仕様書</h2>
{{Specifications}}
<h2 id="Browser_compatibility">ブラウザーの互換性</h2>
<p>{{Compat}}</p>
<h2 id="See_also">関連情報</h2>
<ul>
<li>{{CSSxRef("::placeholder")}} 擬似要素はプレイスホルダー<em>自身</em>にスタイルを適用します。</li>
<li>関連する HTML 要素: {{HTMLElement("input")}}, {{HTMLElement("textarea")}}</li>
<li><a href="/ja/docs/Learn/Forms">HTML フォーム</a></li>
</ul>
|