--- title: ':read-write' slug: 'Web/CSS/:read-write' tags: - CSS - Layout - Pseudo-class - Reference - Web - セレクター - 疑似クラス translation_of: 'Web/CSS/:read-write' ---
{{CSSRef}}

:read-writeCSS擬似クラスで、ユーザーが編集できる要素 (inputtextarea など) を表します。

input:read-write, textarea:read-write {
  background-color: #bbf;
}

p:read-write {
  background-color: #bbf;
}

構文

{{csssyntax}}

読み取り専用/読み書きコントロールによるフォーム情報の確認

readonly のフォームコントロールの使用方法の一つは、ユーザーが以前のフォームに入力した情報 (例えば、配送方法の詳細など) をチェックして確認しながら、フォームの残りの部分と一緒に情報を送信することができるようにすることです。以下の例では、これを実現しています。

:read-only 擬似クラスは、入力欄をクリック可能なフィールドのように見せるスタイル付けをすべて削除するために使用されており、読み取り専用の段落のように見えます。一方、 :read-write 擬似クラスは、編集可能な <textarea> により良いスタイル付けを行うために使用されています。

input:-moz-read-only, textarea:-moz-read-only,
input:read-only, textarea:read-only {
  border: 0;
  box-shadow: none;
  background-color: white;
}

textarea:-moz-read-write,
textarea:read-write {
  box-shadow: inset 1px 1px 3px #ccc;
  border-radius: 5px;
}

完全なソースコードは readonly-confirmation.html にあります。以下のように表示されます。

{{EmbedGHLiveSample("learning-area/html/forms/pseudo-classes/readonly-confirmation.html", '100%', 660)}}

フォーム以外の読み書き用コントロールのスタイル付け

このセレクターは {{htmlElement("input")}}/{{htmlElement("textarea")}} 要素に {{htmlattrxref("readonly", "input")}} が設定されているものだけを選択するのではありません。ユーザーが編集できるあらゆる要素、例えば {{htmlelement("p")}} 要素に {{htmlattrxref("contenteditable")}} が設定されたものを選択します。

<p contenteditable>この段落は編集可能です。読み書き可です。</p>

<p>この段落は編集できません。読み取り専用です。</p>
p {
  font-size: 150%;
  padding: 5px;
  border-radius: 5px;
}

p:read-only {
  background-color: red;
  color: white;
}

p:read-write {
  background-color: lime;
}

{{EmbedLiveSample('Styling_read-write_non-form_controls', '100%', 400)}}

仕様書

仕様書 状態 備考
{{ SpecName('HTML WHATWG', '#selector-read-write', ':read-write') }} {{ Spec2('HTML WHATWG') }} 変更なし
{{ SpecName('HTML5 W3C', '#selector-read-write', ':read-write') }} {{ Spec2('HTML5 W3C') }} HTML および制約検証に関する意味を定義。
{{ SpecName('CSS4 Selectors', '#rw-pseudos', ':read-write') }} {{ Spec2('CSS4 Selectors') }} 擬似クラスを定義、但し意味の結びつけの定義はなし

ブラウザーの互換性

{{Compat("css.selectors.read-write")}}

関連情報