如何向 Slider 添加线性渐变颜色?

cri*_*via 4 css reactjs material-ui

我想将线性渐变添加到 Material-UI Slider 作为颜色。是否可以?我尝试一切。

color: 'linear-gradient(180deg, #29ABE2 0%, #00EAA6 100%)'
Run Code Online (Sandbox Code Playgroud)

Rya*_*ell 6

linear-gradient 创建图像而不是颜色。所以你需要在CSS中使用它来指定图像(例如background-image)。

Slider下面是使用渐变的示例。

import React from "react";
import { makeStyles, withStyles } from "@material-ui/core/styles";
import Slider from "@material-ui/core/Slider";

const useStyles = makeStyles({
  root: {
    width: 200
  }
});

const CustomSlider = withStyles({
  rail: {
    backgroundImage: "linear-gradient(.25turn, #f00, #00f)"
  },
  track: {
    backgroundImage: "linear-gradient(.25turn, #f00, #00f)"
  }
})(Slider);

export default function ContinuousSlider() {
  const classes = useStyles();
  const [value, setValue] = React.useState(30);

  const handleChange = (event, newValue) => {
    setValue(newValue);
  };

  return (
    <div className={classes.root}>
      <CustomSlider
        value={value}
        onChange={handleChange}
        aria-labelledby="continuous-slider"
      />
    </div>
  );
}
Run Code Online (Sandbox Code Playgroud)

编辑渐变滑块