符合WEB標準的表單效果_Web標準教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
今天來說說對input輸入框在處理上的細節(jié)處理和心得,其實制作一個符合CSS標準、FF/IE7/IE6等主流瀏覽器全兼容、符合用戶體驗的input其實并不難。先點擊看看下面的效果先!
| 以下為引用的內(nèi)容: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>表單效果</title> <style type="text/css"> *{ margin:0; padding:0; } body{ font-size:63%; color:#000; } /*input*/ .input_on{ padding:2px 8px 0pt 3px; height:18px; border:1px solid #999; background-color:#FFFFCC; } .input_off{ padding:2px 8px 0pt 3px; height:18px; border:1px solid #CCC; background-color:#FFF; } .input_move{ padding:2px 8px 0pt 3px; height:18px; border:1px solid #999; background-color:#FFFFCC; } .input_out{ /*height:16px;默認高度*/ padding:2px 8px 0pt 3px; height:18px; border:1px solid #CCC; background-color:#FFF; } /*form*/ ul.input_test{ margin:20px auto 0 auto; width:500px; list-style-type:none; } ul.input_test li{ width:500px; height:22px; margin-bottom:10px; } .input_test label{ float:left; padding-right:10px; width:100px; line-height:22px; text-align:right; font-size:1.4em; } .input_test p{ float:left; _margin-top:-1px; } .input_test span{ float:left; padding-left:10px; line-height:22px; text-align:left; font-size:1.2em; color:#999; } </style> </head> <body> <ul class="input_test"> <li> <label for="inp_name">姓名:</label> <p><input id="inp_name" class="input_out" name="" type="text" onfocus="this.className='input_on';this.onmouseout=''" onblur="this.className='input_off';this.onmouseout=function(){this.className='input_out'};" onmousemove="this.className='input_move'" onmouseout="this.className='input_out'" /></p> <span>請輸入您的姓名</span> </li> <li> <label for="inp_email">Email:</label> <p><input id="inp_email" class="input_out" name="" type="text" onfocus="this.className='input_on';this.onmouseout=''" onblur="this.className='input_off';this.onmouseout=function(){this.className='input_out'};" onmousemove="this.className='input_move'" onmouseout="this.className='input_out'" /></p> <span>請輸入您的Email</span> </li> <li> <label for="inp_web">網(wǎng)站:</label> <p><input id="inp_web" class="input_out" name="" type="text" onfocus="this.className='input_on';this.onmouseout=''" onblur="this.className='input_off';this.onmouseout=function(){this.className='input_out'};" onmousemove="this.className='input_move'" onmouseout="this.className='input_out'" /></p> <span>請輸入您的網(wǎng)站</span> </li> </ul> </body> </html> |
鼠標經(jīng)過input時的顏色會發(fā)生變化,此外當點擊標題處(<label>的作用)或者輸入框時,光標停留所在的input的顏色也和其他input輸入框有所不同,這是<input>中JS的作用。在用戶體驗上告訴的用戶什么是可以輸入以及當前在什么輸入位置。此外通過鍵盤上Tab鍵的切換,輸入完當前內(nèi)容移動到下一個輸入框變得更方便了,這是CSS合理布局結(jié)構(gòu)的作用。
整體的結(jié)構(gòu)通過<ul>和<li>來組織,每個<li>顯示一行內(nèi)容。<label>標簽顯示標題,<p>input控制輸入框,<span>顯示備注信息。這里要非凡說一下<input>在各個瀏覽器下不同的表現(xiàn),對<input>設(shè)置line-height對FF是不起作用的,所以建議用padding來控制文本在輸入框的位置。<input>在瀏覽器下的默認高度和字體一樣是16px,加上下邊框就是18px。非凡是在需要將<input>變大的情況下,用padding來控制比較好。
再來說說JS部分,這里用到onblur(光標離開)、onfocus(光標停留)、onmousemove(鼠標停留)、onmouseout(鼠標離開)這4個屬性來控制鼠標的動作。不會JS也沒關(guān)系,只要定義其所對應(yīng)的CSS樣式就可以了。
相關(guān)Web標準教程:
Web標準教程Rss訂閱Div+Css教程搜索
Web標準教程推薦
猜你也喜歡看這些
- css網(wǎng)頁布局兼容性有哪些要點與訣竅?
- 用!important解決IE和Mozilla的布局差別
- overflow與text-indent:-9999px 字體隱藏及input value偏移
- 非主流瀏覽器Nascape中CSS的顯示與IE的差別
- 解決IE和Mozilla的布局差別的利器:“!important”
- 動態(tài)加載外部css或js文件
- CSSHack代碼范例:兼容IE5.0、IE5.5、IE6.0、IE7.0、FF1.5、FF2.0
- 關(guān)于CSS樣式?jīng)_突排序的一個小試驗
- CSS的BUG:IE6中一個奇怪的現(xiàn)象!
- IE與Firefox的CSS兼容大全
- 相關(guān)鏈接:
- 教程說明:
Web標準教程-符合WEB標準的表單效果
。