当前位置: 首页 > 面试题库 >

如何设置Material-UI的工具提示样式?

纪俊良
2023-03-14
问题内容

如何为Material-UI的工具提示文本设置样式?悬停时的默认工具提示为黑色,没有文字换行。是否可以更改背景,颜色等?此选项是否可用?


问题答案:

关于这个问题的另一个流行的答案(由AndréJunges提出)是针对Material-UI的0.x版本。下面,我从Material UI的工具提示-自定义样式中复制了答案,该提示针对v3和v4进行了说明。

以下是如何通过主题覆盖所有工具提示的示例,或仅使用withStyles自定义单个工具提示的示例(两个不同的示例)。第二种方法也可以用于创建自定义工具提示组件,您可以在不强制将其全局使用的情况下重复使用它。

import React from "react";
import ReactDOM from "react-dom";

import {
  createMuiTheme,
  MuiThemeProvider,
  withStyles
} from "@material-ui/core/styles";
import Tooltip from "@material-ui/core/Tooltip";

const defaultTheme = createMuiTheme();
const theme = createMuiTheme({
  overrides: {
    MuiTooltip: {
      tooltip: {
        fontSize: "2em",
        color: "yellow",
        backgroundColor: "red"
      }
    }
  }
});
const BlueOnGreenTooltip = withStyles({
  tooltip: {
    color: "lightblue",
    backgroundColor: "green"
  }
})(Tooltip);

const TextOnlyTooltip = withStyles({
  tooltip: {
    color: "black",
    backgroundColor: "transparent"
  }
})(Tooltip);

function App(props) {
  return (
    <MuiThemeProvider theme={defaultTheme}>
      <div className="App">
        <MuiThemeProvider theme={theme}>
          <Tooltip title="This tooltip is customized via overrides in the theme">
            <div style={{ marginBottom: "20px" }}>
              Hover to see tooltip customized via theme
            </div>
          </Tooltip>
        </MuiThemeProvider>
        <BlueOnGreenTooltip title="This tooltip is customized via withStyles">
          <div style={{ marginBottom: "20px" }}>
            Hover to see blue-on-green tooltip customized via withStyles
          </div>
        </BlueOnGreenTooltip>
        <TextOnlyTooltip title="This tooltip is customized via withStyles">
          <div>Hover to see text-only tooltip customized via withStyles</div>
        </TextOnlyTooltip>
      </div>
    </MuiThemeProvider>
  );
}
const rootElement = document.getElementById("root");
ReactDOM.render(<App />, rootElement);

这是有关工具提示CSS类的文档,可用于控制工具提示行为的不同方面:https : //material-
ui.com/api/tooltip/#css

这是有关在主题中覆盖这些类的文档:https : //material-
ui.com/customization/components/#global-theme-override



 类似资料:
  • 问题内容: 我正在使用jQuery UI Tooltip小部件 我根据他们的示例编写了以下CSS,它的工作原理就像一个魅力: 但是我得到了3-4个我想要看起来不同的工具提示(例如上面的html示例),所以我将它们包装在一个类中并执行以下操作: 绝对没有任何作用。如何覆盖通用 .tooltip 以不同方式自定义某些工具提示? 提前致谢 问题答案: 对于那些希望将自定义类应用于新的工具提示小部件(jQ

  • 我正在尝试在单击事件上显示/隐藏jquery ui工具提示。此外,我不希望它显示隐藏在鼠标输入/离开。 这是一个带有普通工具提示的小提琴:http://jsfiddle.net/Michael_0/sLhD9/(不幸的是jsfiddle似乎无法包含来自google cdn的jquery-用户界面?)。 我的想法是在初始化时禁用工具提示,然后在显示之前单击启用它,它可以工作,但我无法阻止工具提示在鼠

  • 问题内容: 请在http://plnkr.co/edit/9dyBVZh67sxmIqUQB50S?p=preview上的 plunkr代码中查看我的示例 我有4个按钮,其中两个按钮由于某种情况而被禁用。 我希望能够在两个被禁用的按钮上显示工具提示,第一个被禁用的按钮显示“ Test itemName2不可用”,第二个被禁用的按钮显示“ Test itemName4不可用”,而另一个则没有工具提示

  • 问题内容: 我目前在我的应用程序中添加了一些引导工具提示。 所有的“正常”工具提示都可以,但是当我要使用时,我得到的只是一个空的工具提示。 我的工具提示: 在DOM中,我有: div的内容似乎为空,因此工具提示中没有任何内容可显示。我试图将一些HTML文本直接放在DOM中,例如: 而且有效。 你有好主意吗? 问题答案: html-unsafe指令旨在指出其内容。那这个呢: 然后,在SomeCtrl

  • 问题内容: 我开始研究material-ui,并在SandBox中创建一个简单的应用程序:https ://codesandbox.io/s/eager-ride-cmkrc jss的样式对我来说并不常见,但是如果您通过这两个简单的练习帮助我,那么我将理解所有内容。 首先:我希望将和的通用属性合并到新类中并进行扩展:(https://github.com/cssinjs/jss- extend#u

  • 是否有任何方法可以重写'@devexpress/dx-react-grid-material-ui'库中的TableSummaryRow的样式? 我所拥有的:一个组件,它呈现表(使用'@devexpress/dx-react-grid-material-ui'库),并在最后一行输出表中的总行数。 我需要做的:样式表单元格,其中TableSummaryRow呈现结果。 我已经试过这个解决办法了,但它