网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网页制作 > CSS
网页制作:Dreamweaver教程,FrontPages教程,Javascript教程,HTML教程,CSS教程,心得技巧,DHTML教程,网页特效,Discuz!论坛
本月文章推荐
.13种常用按钮、文本框、表单等CS.
.如何将XHTML+CSS页面转换为打印机.
.客户端(CSS)解决自动截取字符串长.
.利用css里expression来实现界面对.
.CSS让表格的溢出内容隐藏起来.
.CSS里也能写脚本? .
.使用CSS设置表格.
.CSS实用教程(三).
.利用CSS控制打印.
.用Firefox插件调整CSS 优化网页视.
.在CSS中关于字体处理效果的思考.
.CSS初学者应该保持的一种心态.
.教你用CSS属性选择器控制链接样式.
.网页风格化 用CSS实现皮肤适时切.
.用css让图片自动适应大小.
.解决IE6不能正常解析CSS文件的方.
.网页设计之CSS基础语法学习.
.CSS语法手册(三)文本填充,边框.
.CSS文件可维护、可读性提高指南四.
.如何用CSS层叠样式表控制鼠标显示.

用CSS设计你的搜索框

发表日期:2008-12-3


今天我将介绍一下如何使用CSS中的背景图片来设计你的搜索框。之前我使用别的方法来实现我的表单和搜索框,但是这种方法看起来会更容易些,所以我想将它与感兴趣的朋友分享。

View Demo

原始方式
首先来让我们看看我的原始的使用<input type=”image” src=”image_url” />的方法:

<form method="get" id="searchform" action="http://www.sohtanaka.com/">
 <fieldset>
 <input type="text" value="" name="s" id="s" />
 <input type="image" src="img_url" id="searchsubmit" value="Search" class="btn" />
 </fieldset>
</form>这看起来挺不错的,但是它有一个不好的地方,这个图片按钮不会和搜索框对其,我必须使用一个负的margin-top属性来修正这个bug。


原始方法

改良方法
在这个改良版的方法中,我决定不再使用 type=”image” ,而是使用<button>标签,然后用CSS添加背景。这允许文本输入框和按钮自动对齐。我同样添加了a :focus伪类到最终效果(IE将不会支持这个,所以我添加了一个特殊的样式针对IE来隐藏这个效果)。 下面是这种方法的一些好处:

很自然的对齐
对按钮和输入框只使用了一张图片
:focus 伪类支持它的浏览器
添加hover 效果到按钮


HTML

<form method="get" id="searchform" action="http://www.sohtanaka.com/">
<fieldset class="search">
 <input type="text" class="box" />
 <button class="btn" title="Submit Search">Search</button>
</fieldset>
</form>CSS

fieldset.search {
 border: none;
 width: 243px;
 margin: 0 auto;
 background: #222;
}
.search input, .search button {
 border: none;
 float: left;
}
.search input.box {
 color: #fff;
 font-size: 1.2em;
 width: 190px;
 height: 30px;
 padding: 8px 5px 0;
 background: #616161 url(search_bg.gif) no-repeat;
 margin-right: 5px;
}
.search input.box:focus {
 background: #616161 url(search_bg.gif) no-repeat left -38px;
 outline: none;
}
.search button.btn {
 width: 38px;
 height: 38px;
 cursor: pointer;
 text-indent: -9999px;
 background: #fbc900 url(search_bg.gif) no-repeat top right;
}
.search button.btn:hover {
 background: #fbc900 url(search_bg.gif) no-repeat bottom right;
}IE特别注释

<!--[if lte IE 7]>
<link rel="stylesheet" type="text/css" href="ie.css" />
<![endif]-->IE 样式- ie.css
朋友评论说如果输入文字过多IE6和IE7会水平滚动背景图片,所以我的方法是专门为IE使用一个单独的背景图片 ,而且不是让它左对齐,我翻转了它,通过让背景图片右对齐来修正这个。

.search input.box {
 background: url(search_bg_ie.gif) no-repeat right bottom;
  /* 专门为IE的独立背景图片,而且这个图篇必须是右对齐的。***/
}

上一篇:CSS实现不定高度DIV绝对居中 人气:203
下一篇:工作中常用的高效的CSS代码 人气:213
浏览全部CSS的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐