javascript - 使用自动边距使文本框居中
问题描述
- 我正在尝试使搜索框居中。
- 所以我给了 marginLeft: "auto",marginRight: "auto", 类搜索
- 但它没有居中。
- 你能告诉我如何解决它。
- 在下面提供我的代码片段和沙箱。
https://codesandbox.io/s/material-demo-xu3ld
search: {
marginLeft: "auto",
marginRight: "auto",
textAlign: "center"
}
export default function CustomizedInputBase() {
const classes = useStyles();
return (
<div className={classes.search}>
<Paper className={classes.root}>
<IconButton className={classes.iconButton} aria-label="Menu">
<MenuIcon />
</IconButton>
<InputBase
className={classes.input}
placeholder="Search Google Maps"
inputProps={{ "aria-label": "Search Google Maps" }}
/>
<IconButton className={classes.iconButton} aria-label="Search">
<SearchIcon />
</IconButton>
<Divider className={classes.divider} />
<IconButton
color="primary"
className={classes.iconButton}
aria-label="Directions"
>
<DirectionsIcon />
</IconButton>
</Paper>
</div>
);
}
解决方案
使用类 'wrapper' 将您的搜索包装在另一个 div 中
<div className={classes.wrapper}>
<div className={classes.search}>
<Paper className={classes.root}>
<IconButton className={classes.iconButton} aria-label="Menu">
<MenuIcon />
</IconButton>
<InputBase
className={classes.input}
placeholder="Search Google Maps"
inputProps={{ "aria-label": "Search Google Maps" }}
/>
<IconButton className={classes.iconButton} aria-label="Search">
<SearchIcon />
</IconButton>
<Divider className={classes.divider} />
<IconButton
color="primary"
className={classes.iconButton}
aria-label="Directions"
>
<DirectionsIcon />
</IconButton>
</Paper>
</div>
</div>
并对您的 css 进行以下更改。
search: {
textAlign: "center",
display: "inline-block"
},
wrapper: {
textAlign: "center",
}
推荐阅读
- javascript - 我如何能够将天转换为小时?
- asp.net-mvc - Angular 6:可以在 Angular 6 中使用现有的 mvc 的 cshtml 标记吗
- java - 多线程问题
- dtrace - eBPF vs. System vs. DTrace
- css - 移动版网站在启动时放大
- python - Python - Lambda 函数无效语法错误
- module - Nest.js:动态模块中的循环依赖
- google-cloud-firestore - Firestore 规则模拟器 - 子集合的请求为空
- c# - 当对象不是列表时,C#在属性名称等于变量时获取值
- rust - 当我的密码包含 at 符号 (@) 时,如何指定 Diesel DATABASE_URL?