#css #reactjs #material-ui #listitem
#css #reactjs #материал-пользовательский интерфейс #listitem
Вопрос:
Я использую компонент списка пользовательского интерфейса Material в своем коде.
Вот фрагмент кода:
<List>
<ListItem button>
<ListItemText
disableTypography
primary={<Typography>Hello</Typography>}
/>
<p>John</p>
<DraftsIcon />
</ListItem>
</List>
Как я могу установить фиксированное расстояние между «Привет» и «Джон»?
и избегайте следующего случая:
Комментарии:
1. Что вы подразумеваете под «фиксированным запасом»? Каков именно ваш желаемый внешний вид?
2. Я имел в виду фиксированное расстояние, например, могу ли я добавить ‘margin-right: 5px’ в Привет. Таким образом, расстояние между Hello и John всегда остается 5 пикселей, даже если я уменьшу размер экрана
3. Используйте StackBlitz для создания выходных данных, чтобы другие могли отлаживать.
Ответ №1:
// just add minWidth in button
<List>
<ListItem button>
<ListItemText
style={{minWidth:"50px" }}
disableTypography
primary={<Typography>Hello</Typography>}
/>
<p>John</p>
<DraftsIcon />
</ListItem>
</List>
вы также можете сделать что-то вроде этого:
import React from 'react';
import Box from '@material-ui/core/Box';
import { IconButton, Typography } from '@material-ui/core';
import DraftsIcon from "@material-ui/icons/Drafts";
export default function FlexGrow() {
return (
<Box display="flex" p={1} >
<Box p={1} flexGrow={1} >
<Typography variant="button" display="block" gutterBottom>
Hello
</Typography>
</Box>
<Box p={1} >
<Typography variant="button" display="block" gutterBottom>
John
</Typography>
</Box>
<IconButton color="inherit" style={{marginTop :"-10px"}}>
<DraftsIcon/>
</IconButton>
</Box>
);
}