TML中input文本輸入框在某些情況下禁止或者限制部分操作是很有必要的,下面為大家分享一下如何在input文本輸入框添加限制條件,驗證內容是否選中或者內容編輯等,此方法僅供才考。
以圖片形式方便大家手機端閱讀:
圖片形式
以文字形式方便大家在PC端驗證:
1、選中去除文本框文字,離開后顯示原有文字:
<input name="key" type="text" id="key" value="關鍵詞" size="30"
onmouseover=this.focus();this.select();
onclick="if(value==defaultValue){value='';this.style.color='#000'}"
onBlur="if(!value){value=defaultValue;this.style.color='#999'}" style="color:#999" />
2、選中后方可編輯:
<input type="checkbox" name="tpbox" value="1" onclick="if(this.checked) {txtNo.disabled=false}else{txtNo.disabled=true}">你一定要幸福,我會好好的!
你的姓名:<input type="text" name="txtNo" size="20" value="選中前面的選項方可編輯" disabled>
3、點擊鏈接后方可編輯:
<a href="#" onclick="username.readOnly=false;alert('你好,歡迎使用!')">先點擊我哦!</a>
你的姓名:<input id="username" value="--請輸入--" size="30" readOnly>
4、輸入框從中間輸入:從中間輸入:
<input type="text" name="mid"style="text-align:center;">
5、輸入框變色:輸入框改變變色:
<input type="text" size="20" style="background-color:#FFFFFF"
onfocus="style.backgroundColor='#FFFF00'"
onblur="style.backgroundColor='#FFFFFF'">
6、輸入框只能輸入數字(用的是正則表達式):你的年齡:
<input onkeyup="value=value.replace(/[^\d]/g,'') "
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))">
7、輸入框只能輸入中文(用的是正則表達式):你的中文名:
<input onkeyup="value=value.replace(/[ -~]/g,'')" onkeydown="if(event.keyCode==13)event.keyCode=9">
8、只能輸入英文和數字(用的是正則表達式):
你 的昵稱:<input onkeyup="value=value.replace(/[\W]/g,'') "
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
onkeydown="if(event.keyCode==13)event.keyCode=9">
9、輸入框不能編輯,但表單可以獲得輸入框內的值:
<input type="text" value="afreon" onclick="alert('總和不能編輯!');" onfocus="this.blur()" />
<input type="text" value="afreon" onclick="alert(this.value);" readonly />
<input value="不可修改" readonly= "true" type="text"/>//:字體顏色為黑體
10、輸入框不能編輯,并且表單不能獲得輸入框內的值
<input value="不可修改" disabled="disabled" type="text"/>//:字體顏色為灰體
11、輸入框禁止輸入法:
<input onpaste="return false" style="ime-mode:disabled">
最近在寫一個律師推薦前臺的網站,在上面搜索框這里出現了問題,我想把搜索的圖標放在搜索框里面,但是弄了半天都不大如意……
話不多說,我們直接進入主題 :
其實就把輸入框與后面的圖標一起放在一個div里面,然后將輸入框的border設置為0px,最后設置div的border為最終的外邊框
我們最直接上代碼:HTML:
<div class="search">
<form action="http://baidu.com">
<input type="text" placeholder="請輸入查找的律師或專長">
<span>
<a href="#"><img src="img/icon1.png" alt=""></a>
</span>
</form>
</div>
CSS:這里是設置外面整個div的樣式
.search {
width: 250px;
height: 35px;
border: 1px solid white;
border-radius: 30px;
}
這里是設置里面的輸入框的長寬、boder為0px、里面的字體大小、點擊不會亮邊框(outline:none)設置透明度這里使用rgba(),最后一個屬性就是透明度(在0-1之間 )
在我們可以使用::marker偽元素來定制列表前綴。像下面這樣:
主流瀏覽器中只有Safari不是完全支持,不過估計也馬上會跟上來了。
::marker CSS 偽元素選擇列表項的標記框,通常包含項目符號或數字。 它適用于要顯示的任何元素或偽元素集:列表項,例如 <li> 和 <summary> 元素。
讓我們看個具體的例子:
默認顯示效果如下,瀏覽器會自動畫一個小點在每個列表項前:
創建marker
::marker 偽元素標記框在每個列表項元素內自動生成,位于實際內容和 ::before 偽元素之前。
通常,列表項是 <li> HTML 元素,但其他元素也可以成為具有 display:list-item 的列表項。
給marker添加樣式
在 ::marker 出現之前,可以使用 list-style-type 和 list-style-image 設置列表樣式。這很方便,但我們需要更多。 改變顏色、大小、間距等,這就是 ::marker 出現的原因。 它允許從 CSS 中單獨和全局定位這些偽元素:
list-style-type 屬性提供了非常有限的樣式。 ::marker 偽元素意味著您可以定位標記本身并將樣式直接應用于它。
在這個示例中,第一項使用 list-style-type 設置樣式,第二項使用 ::marker 設置樣式。 第一種情況下的屬性適用于整個列表項,而不僅僅是標記,這意味著文本和標記一樣具有動畫效果。 使用 ::marker 時,我們可以只定位標記(::marker)而不是文本。
改變Marker的方法,兩種方式,效果一樣:
使用SVG:
使用數字列表:
默認情況下,有序列表項OL上的標記是數字而不是項目符號。 在 CSS 中,這些被稱為計數器,它們非常強大。 它們甚至具有設置和重置數字開始和結束位置的屬性,或者將它們切換為羅馬數字。 我們可以直接使用::marker來做,
更多使用方法,大家可以查看MDN,感謝閱讀!
*請認真填寫需求信息,我們會在24小時內與您取得聯系。