--- title: ':disabled' slug: 'Web/CSS/:disabled' tags: - CSS - Layout - Pseudo-class - Reference - Selector - Web translation_of: 'Web/CSS/:disabled' ---
:disabled は CSS の擬似クラスで、無効な要素を表します。無効な要素とは、アクティブ化(選択、クリック、入力など)したりフォーカスを得たりすることができないものです。要素には有効な状態、つまりアクティブ化したりフォーカスを得たりすることができる状態もあります。
/* 無効な <input> を選択 */
input:disabled {
background: #ccc;
}
{{csssyntax}}
この例は基本的な送り先フォームを表示します。 JavaScript の {{event("change")}} イベントを使用して、ユーザーが請求先欄を有効化/無効化できるようにします。
<form action="#">
<fieldset id="shipping">
<legend>送り先</legend>
<input type="text" placeholder="名前">
<input type="text" placeholder="住所">
<input type="text" placeholder="郵便番号">
</fieldset>
<br>
<fieldset id="billing">
<legend>請求先</legend>
<label for="billing_is_shipping">送り先と同じ:</label>
<input type="checkbox" id="billing-checkbox" checked>
<br>
<input type="text" placeholder="名前" disabled>
<input type="text" placeholder="住所" disabled>
<input type="text" placeholder="郵便番号" disabled>
</fieldset>
</form>
input[type="text"]:disabled {
background: #ccc;
}
// ページの読み込みの終了を待つ
document.addEventListener('DOMContentLoaded', function () {
// チェックボックスに 'change' イベントリスナーを追加
document.getElementById('billing-checkbox').onchange = toggleBilling;
}, false);
function toggleBilling() {
// 請求先のテキストフィールドを選択
var billingItems = document.querySelectorAll('#billing input[type="text"]');
// 請求先テキストフィールドを切り替え
for (var i = 0; i < billingItems.length; i++) {
billingItems[i].disabled = !billingItems[i].disabled;
}
}
{{EmbedLiveSample('Examples', 300, 250)}}
| 仕様書 | 状態 | 備考 |
|---|---|---|
| {{SpecName('HTML WHATWG', '#selector-disabled', ':disabled')}} | {{Spec2('HTML WHATWG')}} | 変更なし。 |
| {{SpecName('HTML5 W3C', '#selector-disabled', ':disabled')}} | {{Spec2('HTML5 W3C')}} | HTML に関する意味を定義。 |
| {{SpecName('CSS4 Selectors', '#enableddisabled', ':disabled')}} | {{Spec2('CSS4 Selectors')}} | 変更なし。 |
| {{SpecName('CSS3 Selectors', '#enableddisabled', ':disabled')}} | {{Spec2('CSS3 Selectors')}} | 擬似クラスを定義、但し意味の結びつけの定義はなし |
このページの互換性一覧表は構造化データから生成されています。データに協力していただけるのであれば、 https://github.com/mdn/browser-compat-data をチェックアウトしてプルリクエストを送信してください。
{{Compat("css.selectors.disabled")}}
{{Cssxref(":enabled")}}