ホームページ作成/フォームの活用・装飾 (HTML,CSS,JavaScript)

プレースホルダー (placeholder) の表示とCSSでの装飾方法(5ページ目)

プレースホルダーを表示する方法を解説。HTMLのplaceholder属性を使えば簡単に表示できます。textarea要素に表示するプレースホルダーは少し工夫すると改行も可能。CSSのplaceholder疑似クラスを併用すればプレースホルダーの文字を自由な色に変えられます。カーソルが入った瞬間にプレースホルダーの文字が消える仕様もCSSだけで作れます。placeholderの表示と装飾方法をご紹介。

西村 文宏

執筆者:西村 文宏

ホームページ作成ガイド

JavaScriptでプレースホルダ機能を作るソースのまとめ

これまでにご紹介したソースをまとめて掲載しておきます。コピー&ペーストする際にご活用下さい。下記では、HTMLソースに続いてJavaScriptソースを記述しています。
<p>
項目1:<input value="" title="数値1を入力" class="placeholder" type="text"> <br>
項目2:<input value="" title="数値2を入力" class="placeholder" type="text"> <br>
項目3:<input value="" title="数値3を入力" class="placeholder" type="text"> <br>
項目4:<input value="" title="数値4を入力" class="placeholder" type="text"> <br>
項目5:<input value="" title="数値5を入力" class="placeholder" type="text"> <br>
項目6:<input value="" title="数値6を入力" class="placeholder" type="text"> <br>
</p>

<script type="text/javascript">
   // ▼class名が「placeholder」の要素を対象にしてプレースホルダ機能を加える
   var targets = document.getElementsByClassName('placeholder');
   for (var i=0 ; i<targets.length ; i++) {
      // ▼1.フォーカスを得た際の処理:
      targets[i].onfocus = function () {
         // プレースホルダが表示されていれば
         if( this.value == this.title ) {
            this.value='';                // プレースホルダの文字列を消す
            this.style.color = '#000000'; // 入力欄の文字色を黒色に戻す
         }
      }
      // ▼2.フォーカスを失った際の処理:
      targets[i].onblur = function () {
         // 入力内容が空(またはプレースホルダと同じ文字列)なら
         if( this.value == '' || this.value == this.title ) {
            this.value = this.title;      // プレースホルダを表示
            this.style.color = '#808080'; // 文字色を灰色にする
         }
      }
      // ▼3.デフォルトの表示:
      targets[i].onblur();
   }
</script>

記述上の注意点
上記のソースの後半にあるJavaScript部分は、必ず「プレースホルダ機能を加えたいすべてのinput要素」よりも後に記述して下さい。JavaScript部分が先に実行されてしまうと、うまく動きません。

JavaScriptソースを別のファイルに分離しておきたい場合など、JavaScriptが実行されるタイミングを調整できない場合は、次のページでご紹介するソースを使って下さい。

すべてのソースのまとめ2へ >>
  • 前のページへ
  • 1
  • 4
  • 5
  • 6
  • 次のページへ

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

    All About公式SNS
    日々の生活や仕事を楽しむための情報を毎日お届けします。
    公式SNS一覧
    © All About, Inc. All rights reserved. 掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます