【uniapp】小程序中input输入框的placeholder-class不生效解决办法

问题描述

uniapp微信小程序,使用input组件时,想要改变提示词 placeholder 的样式,但是使用placeholder-class 改变不了

如下:

html 复制代码
<input type="text" placeholder="搜索" placeholder-class="placeholder_class">

<style lang="less" scoped>
    .placeholder_class{
      font-size: 26rpx;
    }
</style>

问题分析

如果你在使用`scoped`属性时无法改变`placeholder`的样式,可能是由于样式的优先级问题。在CSS中,选择器的优先级是根据其特定性和声明顺序来确定的。当多个选择器具有相同的特定性时,后面声明的样式会覆盖前面的样式。

解决方案

方法一:去掉scope

为了避免影响我的其他代码,所以还是要使用scoped,我们可以单独再写一个style

css 复制代码
<style lang="less" scoped>
   //原本其他的css样式
</style>
<style>
   .placeholder_class{
      font-size: 26rpx;
    } 
</style>
方法二:使用deep选择器

**deep**选择器用于穿透组件的作用域,将样式应用于子组件的元素。它的作用是使得样式选择器的范围扩大到子组件内部,以便修改子组件的样式。

css 复制代码
<style lang="less" scoped>
    /deep/ .placeholder_class{
      font-size: 26rpx;
    } 
</style>

记录一下。。

相关推荐
anyup18 小时前
分享 5 套 uni-app 实用主题,一键适配暗黑模式
前端·uni-app·视觉设计
上海观智网络18 小时前
上海小程序定制开发合同怎么签?需要注意什么?
经验分享·笔记·小程序
feixing_fx18 小时前
选择器的威力——深入理解优先级计算与层叠规则
开发语言·前端·css·前端框架·html
星空21 小时前
html\css\js入门
javascript·css·html
gg159357284601 天前
Uni-app跨平台开发全解课程:从零基础到企业级多端落地实战
vue.js·uni-app
晓得迷路了1 天前
栗子前端技术周刊第 133 期 - Angular v22、React 编译器 Rust 版、pnpm 11.5...
前端·javascript·css
it-10241 天前
抖音快手短视频去水印微信小程序/一键去水印/小程序去水印接口代码
微信小程序·小程序·php
程序猿小泓1 天前
2026 前端面试全攻略:手写题、算法与计网/TS 高频考点
前端·javascript·css
小小19922 天前
idea 配置less转化为css
前端·css·less
hhb_6182 天前
Less嵌套避坑:优先级冲突实战解析
前端·css·less