好多網站的搜索輸入框設計的很漂亮,接下來筆者將逐步介紹如何設置自己的搜索輸入框.
設計效果圖:

該效果主要采用CSS樣式與Javascript進行實現.不得不說CSS樣式功能很強大,而且效果很炫,筆者推薦一本書叫《CSS禪意花園》,你可以從中感悟CSS的唯美之處.
我們分步來介紹如何實現.
第一步:如何實現帶提示信息的輸入框
我們知道輸入框在html中使用<input type=”text” >標簽定義,針對輸入框我們常用的事件為觸焦,和脫焦.
我們從其它網站這塊應用可以看出,當輸入框獲得焦點時提示信息就消失了,當輸入框失去焦點時輸入框中的提示信息就出現了.
所以我們只需要對不同的事件,添加不同的CSS樣式,效果就可以完成了.
代碼如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=gbk">
<title>焦點事件特效-搜索框</title>
<style> .init{ color:gray;
/*font-style:italic;*/ width:200px;
} .highlight{ color:black;
/*font-style:normal;*/ width:200px;
}
</style>
<script>
function txt_onfocus(tag){ if(tag.value==tag.defaultValue){ tag.value=''; tag.className='highlight'; } } function txt_onblur(tag){ if(tag.value==''){ tag.value=tag.defaultValue; tag.className='init'; } } </script>
</head>
<body>
<input type="text" onblur="txt_onblur(this)" onfocus="txt_onfocus(this)" value="關鍵詞" class="init">
<input type="button" value="找找看">
</body>
</html>
效果圖如下:

接下來我們在這個基礎上進行更完美的設計.
第二步:設計帶選項的檢索框
先寫好HTML頁面如下,進行相關數據展示,然后再進行CSS樣式進行布局
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=gbk">
<title>焦點事件特效-搜索框</title>
</head>
<body>
<div class="searchdiv">
<div class="searchTool">
<form onsubmit="return searchFooterFunc();">
<span class="choose" hoverable="true">
<span class="chooseList">全部</span>
<b></b>
<div class="choosePop">
<ul>
<li><a href="#" value="0">全部</a></li>
<li><a href="#" value="1">作品</a></li>
<li><a href="#" value="2">經驗</a></li>
<li><a href="#" value="3">作者</a></li>
</ul>
</div>
</span>
<input type="text" onblur="txt_onblur(this)" onfocus="txt_onfocus(this)" value="請輸入關鍵詞" class="searchTextInit">
<input type="button" value class="searchBtn">
</form>
</div>
</div>
</body>
</html>
效果圖如下:

很丑吧,的確很丑,如果我們看到的那些網站去掉CSS樣式,就一個詞形容:慘不忍睹.
接下來我們用CSS進行布局,樣式設計.CSS代碼如下:
<style> body, button, input, select, textarea { font: 12px/1.6 Verdana, Helvetica, sans-serif;
} .searchdiv{ height:38px; padding:8px 0 0 0; background:#ffba00; border-top:1px solid #3e3e3e; border-bottom:1px solid #3e3e3e; text-align:center }
/*.footerSearch .searchBar{margin:0 auto;}*/ .searchTool{ width:360px; height:32px; line-height:32px; margin:0px auto 0 auto; text-align:left; background:#fff;
} .choose{ float:left; cursor:pointer; height:32px; width:52px; display:inline-block; position:relative; line-height:32px; font-size:12px; text-align:center; padding-right:10px;
}
/*下拉箭頭樣式*/ .choose b{ position:absolute; right:8px; top:14px; width:0; height:0; border-width:4px 4px; border-style:solid; border-color:#868686 #fff #fff; font-size:0;line-height:0;
} .searchTextInit{ height:32px; line-height:32px; border:0; border-left:1px solid #eca128; padding:0 8px; font-size:12px; color:#333; color:gray; width:250px; background:#fff; float:left } .searchTextInput{ height:32px; line-height:32px; border:0; border-left:1px solid #eca128; padding:0 8px; /*上 右 下 左*/ font-size:12px; color:black; width:250px; background:#fff; float:left } .searchBtn{ float:left; height:24px; width:24px; background:#fff url(images/bs.png) no-repeat center 0px; cursor:pointer; border:0; margin:4px 0 0 4px;
} .searchBtn:hover{ background:#fff url(images/bs.png) no-repeat center -24px;
} .choose ul{ border-bottom:1px solid #eca128; list-style:none; width:64px; padding:0px;
} .choose:hover b{border-color:#868686 #fff #fff;} .choose:hover .choosePop{ display:inline-block;
} .choosePop{ display:none; width:64px; position:absolute; left:-1px; top:20px;
}
/*鼠標離開列表上效果*/ .choosePop ul li a:link,.choosePop ul li a:visited{ color:#666; background:#fff;
}
/*鼠標移動到列表上效果*/ .choosePop ul li a:hover,.choosePop ul li a:active{ color:#2d2d2d; background:#ffba00;
} .choosePop ul li{ border-left:1px solid #eca128; border-right:1px solid #eca128; line-height:24px;
} .choosePop ul li a{ display:block; font-size:12px; text-decoration:none;
} </style>
這下我們看一下效果

第三步:整合並完善效果
然后將第一步的效果進行整合.即可得到效果圖所示的漂亮的檢索框了.
轉載請注明出處:[http://www.cnblogs.com/dennisit/archive/2013/03/20/2970976.html]
