【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:先加速后减速
相关推荐
小满zs8 分钟前
Next.js第五章(动态路由)
前端
清沫12 分钟前
VSCode debugger 调试指南
前端·javascript·visual studio code
一颗宁檬不酸1 小时前
页面布局练习
前端·html·页面布局
金木讲编程2 小时前
Claude、Agent与Copilot协作生成Angular应用
前端·ai编程
振华OPPO3 小时前
Vue:“onMounted“ is defined but never used no-unused-vars
前端·javascript·css·vue.js·前端框架
欧雷殿3 小时前
在富阳银湖成立地域化的软件研发团队
前端·程序员·创业
狂炫冰美式4 小时前
前端实时推送 & WebSocket 面试题(2026版)
前端·http·面试
JefferyXZF4 小时前
新手建站零门槛!Vercel+Cloudflare+Namesilo域名购买部署全流程
前端
yinuo4 小时前
微信浏览器缓存机制大揭秘:为什么你总刷不出新页面?
前端
拉不动的猪4 小时前
try...catch 核心与生态协作全解析
前端·javascript·vue.js