首页 > 解决方案 > 如何向 Slider 添加线性渐变颜色?

问题描述

我想将线性渐变添加到 Material-UI Slider 作为颜色。可能吗?我什么都试。

color: 'linear-gradient(180deg, #29ABE2 0%, #00EAA6 100%)'

标签: cssreactjsmaterial-ui

解决方案


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>
  );
}

编辑渐变滑块


推荐阅读