如下所示,第一行是粘性导航,之后的行都是InputBase
material-ui的组成部分。尽管我已经将导航栏的背景色设置为白色,但input
始终会显示在导航上方。后,我改变了这种奇特的现象消失了InputBase
,以我的自定义div
。
这是一个现场演示:https : //codesandbox.io/s/material-demo-forked-k2g5l
z-index发生了一些奇怪的事情。此外,您的导航资产还不够全宽。
我添加了zIndex:9999以及100%的宽度。
https://codesandbox.io/s/material-demo-forked-n87zv
这是修订版:
import React from "react";
import { createStyles, makeStyles, Theme } from "@material-ui/core/styles";
import TextField from "@material-ui/core/TextField";
import { InputBase } from "@material-ui/core";
const useStyles = makeStyles((theme: Theme) =>
createStyles({
root: {
"& > *": {
margin: theme.spacing(1),
width: "25ch"
}
},
main: {
overflowX: "auto",
height: "100px",
width: "100px"
},
nav: {
position: "sticky",
top: 0,
backgroundColor: "white",
zIndex: 9999,
width: "100%"
},
rows: {
display: "flex",
flexDirection: "column",
flexWrap: "nowrap"
}
})
);
export default function BasicTextFields() {
const classes = useStyles();
return (
<div className={classes.main}>
<div className={classes.nav}>NNNNNNNNNNNNNNNNNNNNNN</div>
<div className={classes.rows}>
<InputBase placeholder="xxxxxx" />
<InputBase placeholder="xxxxxx" />
<InputBase placeholder="xxxxxx" />
<InputBase placeholder="xxxxxx" />
<InputBase placeholder="xxxxxx" />
<InputBase placeholder="xxxxxx" />
<InputBase placeholder="xxxxxx" />
<InputBase placeholder="xxxxxx" />
<InputBase placeholder="xxxxxx" />
</div>
</div>
);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句