欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

如何給材質UI芯片背景添加線性漸變顏色?

錢浩然1年前9瀏覽0評論

我想在顏色下面添加線性漸變作為背景色。可能嗎?

linear-gradient(to right bottom, #430089, #82ffa1)

我用的是材質UI v0.18.7。

<Chip backgroundColor={indigo400} style={{width: 120}}>
     <Avatar size={32} color={white} backgroundColor={indigo900}>A</Avatar>
     This is a Chip
</Chip>

只需在您的風格中將背景設置為所需的漸變即可:

<Chip style={{width: 120, background: 'linear-gradient(to right bottom, #430089, #82ffa1)'}}>
     <Avatar size={32} color={white} backgroundColor={indigo900}>A</Avatar>
     This is a Chip
</Chip>

注意,linear-gradient是一個返回圖像而不是顏色的CSS函數。因此,您必須設置background屬性(獲取圖像)而不是backgroundColor屬性(僅獲取顏色)。下面是Mozilla文檔中的一段引文,對這一點進行了更全面的解釋:

因為& lt漸變& gts屬于& ltimage & gt數據類型,它們只能用在& ltimage & gt可以用s。因此,linear-gradient()不能用于背景色和其他使用& ltcolor & gt數據類型。

可以使用類覆蓋material-ui中的任何組件。 嘗試使用以下代碼代替backgroundColor。

//After imports statements
const style={
  chip:{
    background: 'linear-gradient(to right bottom, #430089, #82ffa1)',
  }
}
class Chips extends ...{
  render(){
const classes=this.props.classes;
  return(
    <Chip className={classes.chip}>
      <!--Content-->
     </Chip>
  );
  }
  }

在材質UI v5中,可以使用sx或styled():

sx道具

<Chip
  label="Chip Filled"
  sx={{
    color: 'white',
    background: 'linear-gradient(to right bottom, #36EAEF, #6B0AC9)',
  }}
/>

樣式()

type GradientChipProps = {
  colors?: string[];
};
const GradientChip = styled(Chip)<GradientChipProps>(({ colors }) => ({
  color: 'white',
  ...(colors && {
    background: `linear-gradient(to right bottom, ${colors.join(',')})`,
  }),
}));

<GradientChip
  label="Chip Outlined"
  variant="outlined"
  colors={['red', 'pink', 'purple']}
/>

現場演示Codesandbox Demo

相關回答 材質UI組件上的漸變邊框