• 懒鸟飞:帝国cms模板专业分享平台,新域名:lanniaofei.com

建立一个样式新颖的CSS3搜索框

      搜索框大概是最常用的UI元素之一,而且没有必要去介绍它的用途。无论是网站还是web应用,都会为了加强用户体验而加设它,你难道不想增加一个新式的搜索框吗?
今天,你将会学到怎样用伪元素来创建一个很棒的CSS3搜索框。在我们开始介绍前,你可以下载源代码或者看在线演示



在线演示
HTML举例:
正如接下来你所看到的,标记很少,并且很容易理解:
1 <form class="form-wrapper cf">
2 <input type="text" placeholder="Search here..." required>
3 <button type="submit">Search</button>
4 </form> 
你可能注意到了HTML5的特殊属性,像placeholder和required,简介如下:
.placeholder-基本上,这个属性的作用在于当文本框获得焦点之前,先在文本框里显示一个域的信息,直到获得焦点后,域的信息被隐藏。
.required-这个属性说明了当前元素是表单提交中的一个必需属性。
HTML5也给我们带来了一个新的type属性:type="search"。
小贴士:
HTML 元素像img 和input 都没有内容,所以,像before这样的伪元素不会为我们的搜索框呈现任何箭头。
我的解决方案是使用button type="submit" 元素代替普通的input type="submit"。这样,我们就可以用ENTER键来提交表单。 
CSS举例
接下来,你将会看到demo里必要的样式:
清除浮动
5 .cf:before, .cf:after{
6 content:"";
7 display:table;
8 } 
9 .cf:after{
10 clear:both;
11 }
12 .cf{
13 zoom:1;
14 } 
表单元素
有前缀的属性像-moz、-box、-shadow 不包括在内,我只想让下面的代码保持干净。
15 /* Form wrapper styling */
16 .form-wrapper {
17 width: 450px;
18 padding: 15px;
19 margin: 150px auto 50px auto;
20 background: #444;
21 background: rgba(0,0,0,.2);
22 border-radius: 10px;
23 box-shadow: 0 1px 1px rgba(0,0,0,.4) inset, 0 1px 0 rgba(255,255,255,.2);
24 }
25 /* Form text input */
26 .form-wrapper input {
27 width: 330px;
28 height: 20px;
29 padding: 10px 5px;
30 float: left; 
31 font: bold 15px 'lucida sans', 'trebuchet MS', 'Tahoma';
32 border: 0;
33 background: #eee;
34 border-radius: 3px 0 0 3px; 
35 }
36 .form-wrapper input:focus {
37 outline: 0;
38 background: #fff;
39 box-shadow: 0 0 2px rgba(0,0,0,.8) inset;
40 }
41 .form-wrapper input::-webkit-input-placeholder {
42 color: #999;
43 font-weight: normal;
44 font-style: italic;
45 }
46 .form-wrapper input:-moz-placeholder {
47 color: #999;
48 font-weight: normal;
49 font-style: italic;
50 }
51 .form-wrapper input:-ms-input-placeholder {
52 color: #999;
53 font-weight: normal;
54 font-style: italic;
55 } 
56 /* Form submit button */
57 .form-wrapper button {
58 overflow: visible;
59 position: relative;
60 float: right;
61 border: 0;
62 padding: 0;
63 cursor: pointer;
64 height: 40px;
65 width: 110px;
66 font: bold 15px/40px 'lucida sans', 'trebuchet MS', 'Tahoma';
67 color: #fff;
68 text-transform: uppercase;
69 background: #d83c3c;
70 border-radius: 0 3px 3px 0; 
71 text-shadow: 0 -1px 0 rgba(0, 0 ,0, .3);
72 } 
73 .form-wrapper button:hover{ 
74 background: #e54040;
75 } 
76 .form-wrapper button:active,
77 .form-wrapper button:focus{ 
78 background: #c42f2f;
79 outline: 0; 
80 }
81 .form-wrapper button:before { /* left arrow */
82 content: '';
83 position: absolute;
84 border-width: 8px 8px 8px 0;
85 border-style: solid solid solid none;
86 border-color: transparent #d83c3c transparent;
87 top: 12px;
88 left: -6px;
89 }
90 .form-wrapper button:hover:before{
91 border-right-color: #e54040;
92 }
93 .form-wrapper button:focus:before,
94 .form-wrapper button:active:before{
95 border-right-color: #c42f2f;
96 } 
97 .form-wrapper button::-moz-focus-inner { /* remove extra button spacing for Mozilla Firefox */
98 border: 0;
99 padding: 0;
100 } 
 
 
就是这样!
我希望你能喜欢这个教程,并且期待你们的反馈。谢谢阅读!
别忘了你能下载资源或者观看演示
 
 
QQ在线咨询
QQ客服
淘宝官网