好多网站的搜索输入框设计的很漂亮,接下来笔者将逐步介绍如何设置自己的搜索输入框.

设计效果图:

该效果主要采用CSS样式与Javascript进行实现.不得不说CSS样式功能很强大,而且效果很炫,笔者推荐一本书叫《CSS禅意花园》,你可以从中感悟CSS的唯美之处.

我们分步来介绍如何实现.

第一步:如何实现带提示信息的输入框

我们知道输入框在html中使用标签定义,针对输入框我们常用的事件为触焦,和脱焦.

我们从其它网站这块应用可以看出,当输入框获得焦点时提示信息就消失了,当输入框失去焦点时输入框中的提示信息就出现了.

所以我们只需要对不同的事件,添加不同的CSS样式,效果就可以完成了.

代码如下:

复制代码代码如下:

焦点事件特效-搜索框

.init{

color:gray;

/*font-style:italic;*/

width:200px;

}

.highlight{

color:black;

/*font-style:normal;*/

width:200px;

}

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';

}

}

效果图如下:

接下来我们在这个基础上进行更完美的设计.

第二步:设计带选项的检索框

先写好HTML页面如下,进行相关数据展示,然后再进行CSS样式进行布局

复制代码代码如下:

焦点事件特效-搜索框

全部

  • 全部
  • 作品
  • 经验
  • 作者

效果图如下:

很丑吧,的确很丑,如果我们看到的那些网站去掉CSS样式,就一个词形容:惨不忍睹.

接下来我们用CSS进行布局,样式设计.CSS代码如下:

复制代码代码如下:

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;

}

这下我们看一下效果

第三步:整合并完善效果

然后将第一步的效果进行整合.即可得到效果图所示的漂亮的检索框了.

html搜索区域选择框,设计一个带选择和提示功能的检索框(分步介绍)相关推荐

  1. 如何设计一个可扩展的优惠券功能

    本文主要分享了如何设计一个可扩展的优惠券功能. 一.功能特性介绍 1.每个条件的代码独立,相当于单独的实现类实现接口,就能通过配置添加到优惠券条件校验当中,支持多种条件灵活组合 2.新增一种使用条件可 ...

  2. 栈和队列之设计一个有getMin(得到最小值)功能的栈

    有2中方案,分别用类和内部类实现了 import java.util.Stack;/*** @author chenyu 第一种设计:* 题目:设计一个有getMin功能的栈,设计一个特殊的栈,在实现 ...

  3. C#——设计一个简单的窗体程序,在文本框中输入两个点的坐标值,单击“确定”按钮时显示两点之间的距离。

    要求定义一个Point类,包括 (1)两个私有字段表示两个坐标值. (2)一个构造函数通过传入的参数对坐标值初始化 (3)两个只读属性对坐标值的读取 (4)一个方法包含一个Point类对象作为参数对象 ...

  4. js设计一个带开关的时钟_数电题:三个按键一个灯

    有这样一道数电题: 一个LED发光二极管由A.B.C三个独立按键控制,要求按压A.B.C三个按键中的任意一个都能对LED实现亮.灭控制(即每按压一次按键,LED发光状态改变一次).请用D触发器或JK触 ...

  5. 一周试用yii开发一个带各种该有功能的web程序(二)

    上篇随笔写完的是yii能使用简单的命令创建出一个基本的架构,我们只需要在这个架构上进行代码编写,扩展功能.而生成的一个小型系统是可以操作的,但是不是我们想要的,所以,这篇结合源码讲如何创建出我们自己的 ...

  6. butter滤波器是iir吗_如何快速设计一个IIR滤波器

    在文章如何快速设计一个FIR滤波器(一)以及如何快速设计一个FIR滤波器(二)等文章中,我们讨论了如何设计FIR(Finite Impulse Response Filter),FIR有很多优点,比如 ...

  7. 手把手教你用 wxPython 设计一个可以弹琴的计算器

    文章目录 1. 前言 2. 桌面程序设计的通用框架 3. 了解事件驱动,探索鼠标事件及其绑定 4. 最原始的计算器 5. 更漂亮的计算器 6. 给漂亮的计算器加上声音 7. 打包成.exe文件 8. ...

  8. Android studio 如何设计一个较为好看的用户名,密码输入框

    Android studio 如何设计一个较为好看的用户名,密码输入框 大家好,今天是我第一次写博客,写博客的各种功能还用的不熟,请大家多多见谅,请大家多多批评 相当于一个注册页面 --------- ...

  9. LeetCode 2296. 设计一个文本编辑器(双栈)

    文章目录 1. 题目 2. 解题 1. 题目 请你设计一个带光标的文本编辑器,它可以实现以下功能: 添加:在光标所在处添加文本. 删除:在光标所在处删除文本(模拟键盘的删除键). 移动:将光标往左或者 ...

最新文章

  1. hsrp热备路由协议实验
  2. 数据库面试题【十六、优化长难的查询语句】
  3. android项目闪屏页细节
  4. Spring Cloud构建微服务架构:服务容错保护(Hystrix断路器)【Dalston版】
  5. python入门心得_一天入门 Python 的一些心得
  6. 获取某数据库中含有某字段的所有表的脚本
  7. 质量管理系统_晟通集团内训 | 质量管理系统提升实战训练
  8. Zabbix(二)通过API在zabbix系统中查看、删除及创建监控主机
  9. PHP 中获取文件名及路径
  10. Windows 10版本business_editions和consumer_editions的区别?
  11. SQL问题记录——Unable to connect SqlServer Oledb ...
  12. 爬虫日记(71):用OCR来对抗字体反爬
  13. 金万维异速联服务器重装,金万维异速联服务器配置说明.doc
  14. 福昕pdf Acrobat DC pdf 右键菜单注册表
  15. CSDN去广告,超清爽界面
  16. python中如何将数字转换成中文数字_Python实现中文数字转换为阿拉伯数字的方法示例...
  17. Qt实现 QOpenGL绘制彩色三角形
  18. Linux——详细模拟实现shell(进程控制综合运用)
  19. python三方库—pywebio
  20. docker私有仓库harbor使用域名登录并push镜像

热门文章

  1. Qt编写自定义控件12-进度仪表盘
  2. C++侯捷 学习记录 (一)
  3. java integer 相等_Java Integer.equals()判断相等
  4. 西门子——博图V16与PLCSIM Advanced仿真通讯配置(1500系列)
  5. 窗口设置Service中添加 浮动 View
  6. SVN多用户开发 代码冲突解决办法
  7. 【设计模式 一】实战节日商品打折之策略模式
  8. August, 24(R)
  9. 数理统计的张量方法1 张量代数1 张量与张量积
  10. JVM之GC(垃圾收集器)(第四篇)