*

検索窓に薄い文字を入れて何を入力するのか分かりやすくするプレースホルダ

公開日: : ノウハウ

ネット上で何かを検索したい時、どこを見ますか?

そう、検索窓ですよね。検索窓は EC サイトやネットショップ、何かを検索する必要があるウェブサイトには大概付きものでお馴染みのものです。

たまに見るのが検索窓に薄い文字で予め文字が入っている場合です。

Appleの検索窓

Apple のサイトでは「検索:Apple.com」と何処の検索なのか明示しています。その他によくあるのは検索窓に「キーワードを入力」と書かれているケースがありますね。今回はその方法について焦点を当てます。

検索窓に薄い文字を入れる方法その1

方法は2つほどありますが、まずは javascript を使う方法です。

html

<form>
<input type="text" onfocus="placeholders()" value="キーワードを入力" id="placeholder" />
</form>

サンプル用の簡単なものです。value 属性で予め入れておきたいテキストを書きます。javascript と css 用に ID を指定し、テキストボックスをクリックしてアクティブになったら onfocus 属性が有効になり javascript の関数を動作させています。

css

<style type="text/css">
#placeholder{
	color:#666;	
}
</style>

そのままでは予め入れておくテキストも黒になってしまうので、css で少し文字色を薄くします。

javascript

<script type="text/javascript">
<!--
function placeholders(){
	var obj = document.getElementById("placeholder");
	if(obj.value == 'キーワードを入力'){
		obj.value = "";
		obj.style.color = '#000';
	}
}
-->
</script>

テキストボックスに入っている文字が「キーワードを入力」だったら、テキストボックスの中身を空にして文字色を黒に変更しています。

javascript 非対応のブラウザの為にスクリプトをコメントアウトしています。今どき非対応の物なんてあるのか?と思いましたが、i-mode などフィーチャーフォンがありました。ネット閲覧もスマホが主流になる中、いつまで考慮する必要があるんでしょうかね。

検索窓に薄い文字を入れる方法その2

javascript を使う方法だと色々とごちゃごちゃしてややこしいですが、実はもっと簡単な方法がありました。従来は javascript を使う方法が主流だったのですが、次の方法は最近可能になったものです。

それは html5 です。

html5 で サイトを作って置かなければいけませんが html5 では javascript や css も使うこと無く完結する事ができます。具体的には以下のように書きます。

<input type="text" placeholder="キーワードを入力">

たったこれだけです。たったこれだけなのに最初に挙げた方法より優れています。

  • 予め設定した文字が消えるのはユーザーが文字を入力した時
  • テキストボックスが空になったら予め設定した文字に戻る
  • 文字色の指定をしなくても最初から薄い

html5 ですので IE8 以下など古いブラウザには対応できません。しかし、2014年末に html5 が正式勧告されました。古いブラウザでも html5 に対応できるスクリプトもあるので十分実用性があるものになりました。

以下のスクリプトで IE8 以下にも html5 の要素が使えるようになります。

<!--[if IE]>
	<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->

おわりに

予め検索窓に薄い文字を入れておく事は助けになる事もありますが、使い道を誤ると逆に不便になる事もあります。あまり長い文章を入れておくのは不向きで、あくまで補助的な説明に留めておきましょう。

  • Pocket

おすすめトピックス

関連記事

iframe内のjavascriptを無効にする方法

html の iframe(インラインフレーム)とは、一つのページ内に小窓を作ってその内部に別ページや別サイトを表示させるタグです。iframe 内のページは自分で作る事もありますが、他の人が作る事もあります。どういう事 […]

これを見れば簡単!スマホサイトのフッターメニューをサクッと作るサンプル

スマートフォンなどのモバイル端末でウェブサイトを見る人が急増し、今の時代スマートフォン用サイトを作る事が当たり前となりました。スマホ用に別の html ファイルを用意するより一つの html で両方に対応するレスポンシブ […]

オフィス画像モニタ
CSSのみでhtmlタグの中に文章を挿入する方法があります

ウェブサイトの中で html の編集が出来ない場所に文章を書くなど編集する事は出来ません。一見当たり前の事を言っているだけです。しかし、CSS なら出来てしまうかもしれません。 目次1 htmlの編集が出来ない場所とは2 […]

イメージマップ
mapのareaリンクにロールオーバーを実現する簡単な代替策

一つの画像内に複数のリンクを貼る事ができる html の map タグと area タグがあります。これをイメージマップと言います。このイメージマップを使ってとあるコンテンツを作っていたのですが、画像内のリンク領域にマウ […]

画像付きリスト
関連記事などに画像付きリストをCSSで簡単に作るサンプル

画像つきリストとは上図のようなイメージです。しばしばブログなどでは関連記事や人気記事の表示などに使われている事が多いですし、インターネットショッピングサイトではサイドメニューの商品カテゴリリストに採用されています。 ポイ […]

マウス
CSSのみでマウスのロールオーバーでopacityだと背景が濃いと白くならない対処法

画像のロールオーバーと言えば、ウェブサイトでリンクが付いた画像やバナーにマウスを乗せた時に色が変わったり何かしら変化がある処理を言います。一昔前には画像のロールオーバー一つに javascript を使って大変面倒で h […]

著者について

名前:Azell
作曲したり風景写真撮ったりWeb制作したりする人です。 好きな事を楽しくブログに綴れていけたらと思います。

フォローはこちら

       

       
本格ネパールカレーの栗山町「earth」はお洒落で入りやすくてナンカレーが美味

北海道の栗山町にある earth(アース)は本格ネパールカレー

ネジを締める時のワッシャー(座金)には何の意味があるのか?

ネジと言えば日常生活で使う家電や生活用品に数え切れない数のネジ

中部国際空港(セントレア)のカプセルホテル「TUBE Sq」に泊まってみた口コミ感想

中部国際空港(セントレア)に2017年4月8日にオープンしたカ

岐阜県垂井町の大人気パン屋「グルマンヴィタル本店」の食パンをレビュー

岐阜県不破郡垂井町にあるパン屋「グルマンヴィタル(GURUMA

谷汲ゆり園
林の中に咲く百合が美しい岐阜県揖斐川町の「谷汲ゆり園」で森林浴をしながら散歩

岐阜県揖斐郡揖斐川町にある谷汲ゆり園は日本のゆり園ベスト5に選

→もっと見る