純css實現輸入框placeholder動效及輸入校驗的示例代碼
文章主要介紹了純css實現輸入框placeholder動效及輸入校驗,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值更多精彩內容請關注 https://github....
文章主要介紹了純css實現輸入框placeholder動效及輸入校驗,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值
更多精彩內容請關注 https://github.com/abc-club/free-resources
背景
話不多說,我們能否用純css實現以下效果:
答案是肯定的。
借助css:placeholder-shown :valid :invalid偽類及html5 input pattern 屬性就可以實現
:placeholder-shown偽類目前兼容性如下:
直接上代碼!??
源碼
https://jsbin.com/qenucaz/edit?html,css,output
html:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>JS Bin</title>
</head>
<body>
<div class="input-fill-box">
<input class="input-fill" placeholder="郵箱" pattern="^[A-Za-z0-9\u4e00-\u9fa5]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$" required>
<a href="javascript:" class="clear">close</a>
<label class="input-label">郵箱</label>
</div>
</body>
</html>
css:
.input-fill{
width: 100%;
margin: 0;
font-size: 16px;
line-height: 1.5;
outline: none;
padding: 20px 16px 6px;
border: 1px solid transparent;
background: #f5f5fa;
border-radius:10px;
transition: border-color .25s;
}
.input-fill:placeholder-shown::placeholder {
color: transparent;
}
.input-fill-box {
width: 50%;
position: relative;
}
.input-label {
position: absolute;
left: 16px; top: 14px;
pointer-events: none;
color:#BEC1D9;
padding: 0 2px;
transform-origin: 0 0;
pointer-events: none;
transition: all .25s;
}
.input-fill:not(:placeholder-shown) ~ .input-label,
.input-fill:focus ~ .input-label {
transform: scale(0.75) translate(0px, -14px);
}
.input-fill:focus{
border: 2px solid #1d31aa;
}
.clear{
position:absolute;
top:10px;
right:-20px;
display: none;
transition: all .25s;
}
.input-fill::-ms-clear { display: none; }
.input-fill:not(:placeholder-shown) + .clear { display: inline; }
.input-fill:valid {
border-color: green;
box-shadow: inset 5px 0 0 green;
}
.input-fill:not(:placeholder-shown):invalid {
border-color: red;
box-shadow: inset 5px 0 0 red;
}
關于CSS中@support實現漸進式網頁設計實例代碼
文章主要給大家介紹了關于CSS中@support實現漸進式網頁設計的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用CSS具有一定的參考學習價值前言特性查詢賦予了我們...
CSS transition animation的使用(內含貝賽爾曲線詳解)
文章主要介紹了css transition animation的使用(內含貝賽爾曲線詳解),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,區(qū)別:transition也叫過渡動畫...
CSS自適應布局實現子元素項目整體居中/內部項目左對齊示例代碼
文章主要介紹了CSS自適應布局實現子元素項目整體居中,內部項目左對齊,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,日常工作時,我們可能遇到這...
使用CSS混合模式和SVG來動態(tài)更改產品圖片的顏色
文章主要介紹了使用CSS混合模式和SVG來動態(tài)更改產品圖片的顏色,需要的朋友可以參考下。前兩天在Codepen看到了@Kyle Wetton寫的一個示例, 使用CSS混合模式和SVG來改變沙發(fā)的...
css新手教程之背景圖充滿整個屏幕的示例代碼介紹
文章主要給大家介紹了關于css新手教程之背景圖充滿整個屏幕的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用css具有一定的參考學習價值。想讓整個界面有一個背...
網頁設計:淺談網頁基本性能優(yōu)化規(guī)則小結
這篇文章主要介紹了淺談網頁基本性能優(yōu)化規(guī)則小結的相關資料,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧...
用戶需求導致營銷型網頁設計
我們的每期話題,團隊在內部都會通過郵件進行一番討論,隨著討論的激烈,往往能碰撞出很多有意義的觀點,因此,將討論內容分享出來,有興趣的朋友可以接著話題討論下去。Junchen:期望不是從石頭里面蹦出來的,所有期望都是受到外界影響、結合自身需求的一個外在表現...
網頁設計柵格就是你對頁面版式的規(guī)劃
英文原文:http://desktoppub.about.com/od/grids/l/aa_gridsorder.htm柵格就是你對頁面版式的規(guī)劃你日常所見的許多頁面都有柵格存在。你可能注意不到,但它確實存在,并且支撐著設計內容,建立整體的架構,引導著頁面的元素。柵格是隱形的架構,用于指導你頁面...
網頁設計內容網頁中關于圖片預覽的設計
之前有寫過《內容頁頁碼的預覽導航》跟《照片預覽導航分析》兩個文章,想說明的是預覽這一功能在用戶心理所占有的比重是很大的,如果僅僅只是給出一排順序數字做為鏈接的標題,用戶的心理會產生不安全感。雖然給出一排順序數字做為鏈接幾乎是整個互聯網的默認分頁鏈接模...
網頁設計:腳本素材重構用戶體驗
設計網站的同志背景主要有兩種:學計算機、學藝術?;旧蠒懘a的不懂設計,會設計的不懂代碼,這個格局似乎到今天還沒變。某些學計算機的同學,有自己的審美品位,也能夠做出看起來不錯的網站,但學藝術的同學普遍難搞懂代碼...