萬盛學電腦網

 萬盛學電腦網 >> 網頁制作 >> 交互設計 >> 如何建立一個樣式新穎的CSS3搜索框

如何建立一個樣式新穎的CSS3搜索框

 

如何建立一個樣式新穎的CSS3搜索框 三聯

在線演示

搜索框大概是web開發中最常用的UI元素之一,我想基本沒有必要去介紹如何使用它。無論是網站還是web應用,都會為了增強用戶體驗而添加它,那麼你是不是也想過設計一個別致的搜索框?

在今天的文章中,大家將會學到如何使用偽元素來創建一個超酷的CSS3搜索框。當然在開始介紹前你也可以下載源代碼或者查看在線演示。

HTML舉例:

正如接下來你所看到的,標記很少,並且很容易理解:

<form class=“cf form-wrapper”>

<input type=“text” placeholder=“Search here.。.” required>

<button type=“submit”>Search</button>

</form>

你可能注意到了HTML5的特殊屬性,像placeholder和required,簡介如下:

.placeholder-基本上,這個屬性的作用在於當文本框獲得焦點之前,先在文本框裡顯示一個域的信息,直到獲得焦點後,域的信息被隱藏。

.required-這個屬性說明了當前元素是表單提交中的一個必需屬性。

HTML5也給我們帶來了一個新的type屬性:type="search"。

小貼士:HTML 元素像img 和input 都沒有內容,所以,像before這樣的偽元素不會為我們的搜索框呈現任何箭頭。我的解決方案是使用button type=“submit” 元素代替普通的input type=“submit”。這樣,我們就可以用ENTER鍵來提交表單。

CSS舉例

接下來,你將會看到demo裡必要的樣式:

清除浮動

.cf:before, .cf:after{

content:“”;

display:table;

}

.cf:after{

clear:both;

}

.cf{

zoom:1;

}

表單元素

有前綴的屬性像-moz、-box、-shadow 不包括在內,我只想讓下面的代碼保持干淨。

/* Form wrapper styling */

.form-wrapper {

width: 450px;

padding: 15px;

margin: 150px auto 50px auto;

background: #444;

background: rgba(0,0,0,.2);

border-radius: 10px;

box-shadow: 0 1px 1px rgba(0,0,0,.4) inset, 0 1px 0 rgba(255,255,255,.2);

}

/* Form text input */

.form-wrapper input {

width: 330px;

height: 20px;

padding: 10px 5px;

float: left;

font: bold 15px ‘lucida sans’, ‘trebuchet MS’, ‘Tahoma’;

border: 0;

background: #eee;

border-radius: 3px 0 0 3px;

}

.form-wrapper input:focus {

outline: 0;

background: #fff;

box-shadow: 0 0 2px rgba(0,0,0,.8) inset;

}

.form-wrapper input::-webkit-input-placeholder {

color: #999;

font-weight: normal;

font-style: italic;

}

.form-wrapper input:-moz-placeholder {

color: #999;

font-weight: normal;

font-style: italic;

}

.form-wrapper input:-ms-input-placeholder {

color: #999;

font-weight: normal;

font-style: italic;

}

/* Form submit button */

.form-wrapper button {

overflow: visible;

position: relative;

float: right;

border: 0;

padding: 0;

cursor: pointer;

height: 40px;

width: 110px;

font: bold 15px/40px ‘lucida sans’, ‘trebuchet MS’, ‘Tahoma’;

color: #fff;

text-transform: uppercase;

background: #d83c3c;

border-radius: 0 3px 3px 0;

text-shadow: 0 -1px 0 rgba(0, 0 ,0, .3);

}

.form-wrapper button:hover{

background: #e54040;

}

.form-wrapper button:active,

.form-wrapper button:focus{

background: #c42f2f;

outline: 0;

}

.form-wrapper button:before { /* left arrow */

content: ‘’;

position: absolute;

border-width: 8px 8px 8px 0;

border-style: solid solid solid none;

border-color: transparent #d83c3c transparent;

top: 12px;

left: -6px;

}

.form-wrapper button:hover:before{

border-right-color: #e54040;

}

.form-wrapper button:focus:before,

.form-wrapper button:active:before{

border-right-color: #c42f2f;

}

.form-wrapper button::-moz-focus-inner { /* remove extra button spacing for Mozilla Firefox */

border: 0;

padding: 0;

}

希望大家能喜歡這個教程,並且期待你們的反饋。謝謝閱讀!

via gbtags

來源:如何建立一個樣式新穎的CSS3搜索框

copyright © 萬盛學電腦網 all rights reserved