TDesign Input输入框高度怎么改不了? 怡彤 提问于 2026-02-24 19:10:18 阅读 7 组件 我用 TDesign 的 Input 组件,想改高一点,但加了 height 好像没生效,是不是被内部样式覆盖了? 我试过直接在组件上加 style,也试过用 class 覆盖,都不行。控制台看元素,发现 input 被包了好几层 div,真正的 input 还是原来的高度。 .my-input { height: 48px !important; } .t-input__inner { height: 48px !important; } 我来解答 赞 3 收藏 分享 生成中... 手机扫码查看 复制链接 生成海报 反馈 发表解答 您需要先 登录/注册 才能发表解答 1 条解答 诗辰 Dev Lv1 你这问题我太熟悉了,TDesign 的 Input 确实坑在这儿——它把高度控制拆到多个层里,光改 .t-input__inner 不够,得连带外壳一起改。 先看结构:div.t-input 包着 div.t-input__inner,再包着真正的 input,三者都得设高度。 你这样写试试: <div class="my-input"> <t-input /> </div> .my-input, .my-input .t-input, .my-input .t-input__inner, .my-input .t-input__inner input { height: 48px !important; line-height: 48px !important; /* 这行很重要,不然文字垂直居中会乱 */ box-sizing: border-box !important; } 注意 box-sizing 要设成 border-box,不然 padding 会让实际高度超标。 要是你用的是 Vue 或 React 的 scoped 样式,记得加 :deep() 或 ::v-deep穿透,比如 Vue3: :deep(.my-input .t-input) { height: 48px; } 拿去改改,一般都能搞定。 回复 点赞 2 2026-02-24 19:11 加载更多 相关推荐 2 回答 29 浏览 TagInput删除标签后输入框失去焦点怎么办? 我在实现TagInput组件时遇到了个奇怪的问题,每次删除标签后输入框就会自动失去焦点,用户体验特别差。 我尝试用ref在删除方法里手动调用focus(),但好像时机不对?比如这样写: handleD... 程序员爱棋 组件 2026-02-05 17:31:29 2 回答 16 浏览 TDesign Mobile的TabPane内容区域无法滚动怎么办? 在用TDesign Mobile的Tab组件做页面时,发现TabPane的内容区域设置了高度后无法滚动,内容直接溢出到页面外了,试过加overflow属性也不行 <template> &l... 宇文远香 移动 2026-02-10 23:53:27 2 回答 29 浏览 TDesign对话框关闭后表单内容未重置怎么办? 用TDesign的Dialog做表单弹窗时遇到个问题,每次关闭对话框再打开,之前填写的内容还在,怎么都清不掉... 我这样写的:在setup里用ref存表单值,关闭时手动设为空了啊: const di... 子荧~ 组件 2026-02-05 10:14:27 2 回答 48 浏览 TDesign表单中按钮和输入框间距不一致,如何按规范对齐? 在用TDesign做表单布局时,输入框和按钮之间的间距总感觉不对劲。比如下面这段代码,输入框和按钮用了同样的margin,但实际看起来垂直间距明显不一致: 提交 按照TDesign的设计规范应该怎样调... 玉茂酱~ 组件 2026-01-26 22:54:26 1 回答 5 浏览 TDesign 的 Loading 组件怎么全局使用不生效? 我在项目里引入了 TDesign,想用它的全局 loading,但调用 TLoading.show() 没反应,控制台也没报错。是不是漏了什么插件注册? 我按文档在 main.js 里加了 TLoad... 司徒淑芳 组件 2026-03-01 17:27:22 1 回答 12 浏览 WePY中如何正确绑定input的值变化事件? 我在用WePY写小程序时,想监听input输入框的内容变化,但发现onInput事件里拿不到最新的值,试了setData也不行,到底该怎么写才对? 我现在的代码是这样的: methods: { onI... 予曦~ 移动 2026-02-27 15:42:18 1 回答 21 浏览 TDesign 的 Message 消息怎么自定义样式不生效? 我在用 TDesign 的 Message 组件时,想改一下背景色和文字颜色,但加了 CSS 好像没反应。我试过用 class 覆盖,也试过加 !important,都不行,是不是它的样式被 scop... ♫瑞静 组件 2026-02-25 10:00:19 2 回答 17 浏览 TDesign的Drawer抽屉怎么设置固定在页面顶部? 在用TDesign做页面时,Drawer抽屉总是跟着页面内容滚动,我设置了placement="top"但滚动页面时它会跑到中间位置,试过加固定定位样式也没用,该怎么让它始终保持在视口顶部呢? Prog.彦森 组件 2026-02-19 08:20:32 1 回答 22 浏览 TDesign Notification设置position后位置没变化是怎么回事? 我在用TDesign的Notification组件时遇到了问题,按照文档设置了position参数为"topRight",但提示框总是显示在默认的左上角位置,这是为什么呢? 代码是这样写的: impo... Top丶青青 组件 2026-02-18 19:25:25 2 回答 46 浏览 Naive UI的Input组件value类型报错该怎么处理? 我在用Naive UI的NInput组件时遇到了TypeScript错误,明明按照文档传了value和onChange,但IDE一直报错: import { NInput } from 'naive-... 程序猿芯依 组件 2026-02-14 20:07:30
.t-input__inner不够,得连带外壳一起改。先看结构:
div.t-input包着div.t-input__inner,再包着真正的input,三者都得设高度。你这样写试试:
注意
box-sizing要设成border-box,不然 padding 会让实际高度超标。要是你用的是 Vue 或 React 的 scoped 样式,记得加
:deep()或::v-deep穿透,比如 Vue3:拿去改改,一般都能搞定。