【css】如何修改input选中历史选项后,自动填充的蓝色背景色

自动填充前:
自动填充后:

解决办法

方法一:设置背景透明(通过拉长过渡时间,和延迟过渡开始时间,掩盖input自动填充背景颜色)

PS:注意,这个过渡效果会在你的delay time + transition time的时间长度后,完成过渡效果,也就是说

如下例:透明色仅能支持到1510s,就会出现蓝色背景,这个值可以设置成24小时,避免用户一直在这个页面不动,但是性能较差,不是很推荐

css 复制代码
  // 通过拉长过渡时间,和延迟过渡开始时间,掩盖input自动填充背景颜色
  input:-internal-autofill-previewed,
  input:-internal-autofill-selected {
    transition: background-color 1500s ease-out 10s;
  }
方法二:
react ant-design框架

仅提供autocomplete="off"属性及属性值off,即可禁用历史下拉列表,避免出现自动填充色

css 复制代码
<Input placeholder="请输入账号" autocomplete="off"></Input>
vue element-ui框架

css设置背景色

css 复制代码
input:-webkit-autofill { box-shadow: 0 0 0px 1000px white inset !important;}

input标签添加autocomplete="off" // 指定某个文本框取消自动填充

css 复制代码
<el-input type="text" v-model="name"  placeholder="请输入账号" autocomplete="off" ></el-input>

form表单添加autocomplete="off" // 取消所有文本框元素的自动填充

css 复制代码
<el-form autocomplete="off"></el-form>

transiton(过渡)详解:

(1)语法

  • transition: property duration timing-function delay
  • transition属性是个复合属性,她包括以下几个子属性:
  • transition-property :规定设置过渡效果的css属性名称
  • transition-duration :规定完成过渡效果需要多少秒或毫秒
  • transition-timing-function :指定过渡函数,规定速度效果的速度曲线
  • transition-delay :指定开始出现的延迟时间
    默认值分别为:all 0 ease 0

PS:transition-duration 时长为0,不会产生过渡效果

(2)transition-timing-function属性:

  • ease:由快到慢到更慢
  • linear:恒速
  • ease-in:越来越快
  • ease-out:越来越慢
  • ease-in-out:先加速后减速
相关推荐
英俊潇洒美少年1 小时前
Vue 生产环境打包:SourceMap、压缩、混淆、加密全解 + 最佳实践
前端·javascript·vue.js
巴博尔2 小时前
UNIAPP中NVUE页面 动画
android·前端·javascript·ios·uni-app
她说人狗殊途4 小时前
基于 vue-cli 创建
前端·javascript·vue.js
AZaLEan__5 小时前
前端移动端适配与 Bootstrap
前端·bootstrap·html
大家的林语冰5 小时前
Deno 2.8 正式发布,再次超越 Bun,史上最大的次版本升级诞生!
前端·javascript·node.js
渣渣xiong5 小时前
从零开始:前端转型AI agent直到就业第五十七天-第五十八天
前端·人工智能·python
AI周红伟5 小时前
周红伟:长鑫科技(CXMT)财务全景分析
前端·chrome·科技
excel6 小时前
JS 正则在多次 test() 时为什么会出现 lastIndex 缓存问题?
前端
IT_陈寒6 小时前
为什么 Java 的 Optional 让我调试到深夜?
前端·人工智能·后端
米丘6 小时前
React 19.x 的 lazy 与 Suspense
前端·javascript·react.js