///

inputのplaceholder(プレースホルダー)のテキスト色を変更する

wrote :

いろいろ調べると、疑似クラス「:placeholder」と「:placeholder-shown」というのにいきつく。
ちょっとハマってしまったので備忘録。ハマった理由は3つ。

  1. Can I use をベースに実装したが、2017年7月22日時点では情報に誤りがあり、実際にはプリフィックスが必要だったり、対応中が対応していなかったりした
  2. 「:placeholder」と「:placeholder-shown」を共存させたら、どのタイミングかは調査していないが、適用されないケースが発覚した
  3. 記法に誤りがあった

これらを踏まえて、完成版。

placeholder(プレースホルダー)の色を変える

CSS
input:placeholder-shown {
  color: #bbb;
}
input::-webkit-input-placeholder {
  color: #bbb;
}
input::-moz-placeholder {
  color: #bbb;
}
input:-ms-input-placeholder {
  color: #bbb;
}
input::-ms-input-placeholder {
  color: #bbb;
}  
       

余談

ハマった理由の3つめ「記法に誤りがあった」ですが、下記の書き方では機能しませんでした。知識不足により理由は不明。

/* この記述だと反映されない...知識不足により理由は不明。 */
input:placeholder-shown,
input::-webkit-input-placeholder,
input::-moz-placeholder,
input:-ms-input-placeholder,
input::-ms-input-placeholder {
  color: #bbb;
}
      

川上 武範(かわかみ たけのり)
1975年生。シンプルシンプルデザイン代表兼Webクリエイター。たびのとWebサイト運営責任者。

企画からサイト設計、正しいマークアップを意識したWebサイト制作やユーザー視点の情報設計を得意としている。

シンプルシンプルデザイン
たびのと
twitter : たけたけ@OnlyTwo

メディア掲載
2016年10月25日 レバテックフリーランスの記事「自作Webサービス記事紹介まとめ」でサイト内の記事「Webサービス「たびのとTOKYO」を作ってみました」を紹介していただきました。