如何移除Select组件标签的默认动画,使其固定显示在顶部
解决方案
你可以通过强制让InputLabel始终保持收缩状态实现固定在顶部的效果,具体修改方法如下:
- 给
InputLabel组件添加shrink属性,即可强制标签一直处于上浮状态,不会在点击下拉框时触发位置移动 - 如果需要彻底移除标签的动画效果,可以额外添加
sx配置禁用过渡动画
修改后的完整代码如下:
export default function TicketProfile(props: any) { return ( <Container> <FormControl sx={{ ml: 1, mr: 1, minWidth: 220 }}> {/* 新增shrink属性,如需禁用动画可额外加sx={{ transition: 'none' }} */} <InputLabel id="status-label" shrink>Ticket Status</InputLabel> <Select labelId="status-label" id="status-helper" name="status" label="Select Status" options={options} > </Select> <FormHelperText>Select Ticket Status</FormHelperText> </FormControl> </Container> ); }
如果后续需要调整标签的样式、位置,也可以直接通过InputLabel的sx属性自定义样式,不会影响组件的基础交互逻辑。
内容的提问来源于stack exchange,提问作者Peter Penzov
相关产品推荐
相关产品推荐

