html搜索区域选择框,设计一个带选择和提示功能的检索框(分步介绍)
好多网站的搜索输入框设计的很漂亮,接下来笔者将逐步介绍如何设置自己的搜索输入框.
设计效果图:
该效果主要采用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.每个条件的代码独立,相当于单独的实现类实现接口,就能通过配置添加到优惠券条件校验当中,支持多种条件灵活组合 2.新增一种使用条件可 ...
- 栈和队列之设计一个有getMin(得到最小值)功能的栈
有2中方案,分别用类和内部类实现了 import java.util.Stack;/*** @author chenyu 第一种设计:* 题目:设计一个有getMin功能的栈,设计一个特殊的栈,在实现 ...
- C#——设计一个简单的窗体程序,在文本框中输入两个点的坐标值,单击“确定”按钮时显示两点之间的距离。
要求定义一个Point类,包括 (1)两个私有字段表示两个坐标值. (2)一个构造函数通过传入的参数对坐标值初始化 (3)两个只读属性对坐标值的读取 (4)一个方法包含一个Point类对象作为参数对象 ...
- js设计一个带开关的时钟_数电题:三个按键一个灯
有这样一道数电题: 一个LED发光二极管由A.B.C三个独立按键控制,要求按压A.B.C三个按键中的任意一个都能对LED实现亮.灭控制(即每按压一次按键,LED发光状态改变一次).请用D触发器或JK触 ...
- 一周试用yii开发一个带各种该有功能的web程序(二)
上篇随笔写完的是yii能使用简单的命令创建出一个基本的架构,我们只需要在这个架构上进行代码编写,扩展功能.而生成的一个小型系统是可以操作的,但是不是我们想要的,所以,这篇结合源码讲如何创建出我们自己的 ...
- butter滤波器是iir吗_如何快速设计一个IIR滤波器
在文章如何快速设计一个FIR滤波器(一)以及如何快速设计一个FIR滤波器(二)等文章中,我们讨论了如何设计FIR(Finite Impulse Response Filter),FIR有很多优点,比如 ...
- 手把手教你用 wxPython 设计一个可以弹琴的计算器
文章目录 1. 前言 2. 桌面程序设计的通用框架 3. 了解事件驱动,探索鼠标事件及其绑定 4. 最原始的计算器 5. 更漂亮的计算器 6. 给漂亮的计算器加上声音 7. 打包成.exe文件 8. ...
- Android studio 如何设计一个较为好看的用户名,密码输入框
Android studio 如何设计一个较为好看的用户名,密码输入框 大家好,今天是我第一次写博客,写博客的各种功能还用的不熟,请大家多多见谅,请大家多多批评 相当于一个注册页面 --------- ...
- LeetCode 2296. 设计一个文本编辑器(双栈)
文章目录 1. 题目 2. 解题 1. 题目 请你设计一个带光标的文本编辑器,它可以实现以下功能: 添加:在光标所在处添加文本. 删除:在光标所在处删除文本(模拟键盘的删除键). 移动:将光标往左或者 ...
最新文章
- hsrp热备路由协议实验
- 数据库面试题【十六、优化长难的查询语句】
- android项目闪屏页细节
- Spring Cloud构建微服务架构:服务容错保护(Hystrix断路器)【Dalston版】
- python入门心得_一天入门 Python 的一些心得
- 获取某数据库中含有某字段的所有表的脚本
- 质量管理系统_晟通集团内训 | 质量管理系统提升实战训练
- Zabbix(二)通过API在zabbix系统中查看、删除及创建监控主机
- PHP 中获取文件名及路径
- Windows 10版本business_editions和consumer_editions的区别?
- SQL问题记录——Unable to connect SqlServer Oledb ...
- 爬虫日记(71):用OCR来对抗字体反爬
- 金万维异速联服务器重装,金万维异速联服务器配置说明.doc
- 福昕pdf Acrobat DC pdf 右键菜单注册表
- CSDN去广告,超清爽界面
- python中如何将数字转换成中文数字_Python实现中文数字转换为阿拉伯数字的方法示例...
- Qt实现 QOpenGL绘制彩色三角形
- Linux——详细模拟实现shell(进程控制综合运用)
- python三方库—pywebio
- docker私有仓库harbor使用域名登录并push镜像