# 常见问题
# 移动端输入框有边框内阴影
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
在 iOS 上,输入框默认有内部阴影,但无法使用 box-shadow 来清除,如果不需要阴影,可以这样关闭:
input,textarea {
border: 0; /* 方法1 */
-webkit-appearance: none; /* 方法2 */
}
# 输入框/文本域选中后有边框
outline: none;
# 移动端 select 样式修改
移动端浏览器 select 样式要修改的话,加上:
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
# 移动端按钮/输入框/文本域点击/长按有阴影
-webkit-tap-highlight-color: transparent;
/* 或者 */
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
# 去掉输入框缓存,以及有黄色背景
PC上面输入框缓存用户输入,而且选择缓存的内容到输入框后,输入框有黄色背景
<!-- 最简单的做法就是不要自动补全的功能-->
<input type="text" autocomplete="off">
# 去掉移动端文字选中阴影和选项
-webkit-touch-callout: none;
# 去掉网页文本内容选中的蓝色背景
关于PC网页上文本内容默认可以用鼠标选中有蓝色背景,如果不需要可以在css中添加
-moz-user-select: none; /*火狐*/
-webkit-user-select: none; /*webkit浏览器*/
-ms-user-select: none; /*IE10*/
-khtml-user-select: none; /*早期浏览器*/
user-select: none;
# 取消手机点击时出现的灰块
html, body {
-webkit-text-size-adjust: 100%;
-webkit-tap-highlight-color:rgba(0,0,0,0);
}
a, div {
-webkit-tap-highlight-color: transparent;
-moz-tap-highlight-color: transparent;
-ms-tap-highlight-color: transparent;
-o-tap-highlight-color: transparent;
tap-highlight-color: transparent;
}
去掉点击链接和文本框对象时默认的灰色半透明覆盖层(ios)或者虚框(android)移动端网站或APP点击后出现闪动或灰色背景|只需对绑定事件添加class样式使其触发事件时背景为透明色
.class {
-webkit-tap-highlight-color:transparent;
-webkit-tap-highlight-color:rgba(0,0,0,0); //透明度设置为0
}
# 正则表达式限制输入框只能输入数字代码
<input type="text" onkeyup="this.value=this.value.replace(/[^\d]/g,'') " onafterpaste="this.value=this.value.replace(/[^\d]/g,'') " name="f_order" value="1"/>
其中,onafterpaste
防止用户从其它地方copy内容粘贴到输入框
# 禁止向文本域黏贴内容
<input type="text" onpaste="return false;" />
在该例子中,利用 return false
阻止了黏贴这一行为。在实际应用中,当有一些比较重要的数据时,如手机号、登录密码、网银账号等,为了安全考虑必须手动输入,因此在这些表单文本域,通常是设置为禁止黏贴的。
← 自定义css