簡體   English   中英

如何在 Material UI 中制作高度響應文本字段?

[英]how to make a height responsive textfield in Material UI?

我需要制作一個具有響應高度的文本字段,因此當瀏覽器最小化/最大化時,高度將始終調整為父網格的大小。

我查找了一個解決方案,我只發現了這個: Responsive MaterialUI TextField?

它只給了我一個關於如何解決與寬度相同的問題的想法。 它不適用於高度。

這是我的代碼:

const useStyles = makeStyles({
infogrid: {
    width: '30%',
    height: '39%',
    display: 'inline-block',
    position: 'absolute',
    right: '8%',
    top: '10%',
    backgroundColor: '#00ffff',
    borderRadius: '5vh',
    alignItems: 'center',
    justifyContent: 'center',
    justifyItems: 'center',
    flexDirection: 'column',
    overflow: 'auto'
  },

label: {
    margin: '25%',
    marginTop: '0.3%',
    marginBottom: '0.3%',
    display: 'block',
    height: '9%',
    width: '50%',
    
  }
})


export default function App() {

  const  classes = useStyles()
  
  <Grid className={classes.infogrid}>
     
      <TextField fullWidth className={classes.label} id="ovalID" label="1" variant="outlined" />
      <TextField fullWidth className={classes.label} id="latitude" label="2" variant="outlined" />
      <TextField fullWidth className={classes.label} id="longitude" label="3" variant="outlined" />
      <TextField fullWidth className={classes.label} id="ovalRadius1" label="4" variant="outlined" />
      <TextField fullWidth className={classes.label} id="ovalRadius2" label="5" variant="outlined" />
      <TextField fullWidth className={classes.label} id="angel" label="6" variant="outlined" />

     
      </Grid>
 );  
}

只需使用<Stack>組件將所有內容包裝在<Grid>中。

例子

<Grid>
  <Stack>
    <TextField />
    <TextField />
    <TextField />
    <TextField />
  </Stack>
</Grid>

應該使您的TextField高度在網格項目中響應。

我只是通過將父網格更改為 div 並將 div 的顯示設置更改為“flex”來解決它。 此外,我將“標簽”class 中的 marginTop 和 marginBottom 設置設置得更高一點。

只要父 div 將 flex 方向設置為“列”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM