Html 材料UI文档中的根元素是什么意思?
我对材料ui术语感到困惑,如果有人能给我解释一下,我将不胜感激 让我们以以下描述为例: 扩散Html 材料UI文档中的根元素是什么意思?,html,css,reactjs,material-ui,Html,Css,Reactjs,Material Ui,我对材料ui术语感到困惑,如果有人能给我解释一下,我将不胜感激 让我们以以下描述为例: 扩散 提供的未记录的属性分布到根目录 元素;例如,className属性应用于根。 现在,假设您想禁用菜单项上的涟漪。你 可以利用传播行为: disableRipple属性将在此处流动 方式:菜单项>列表项>按钮库 我在某种程度上理解它,本例中的根元素是ButtonBase——最内部的元素。MenuItem属性disableRipple中的“undocumented”被“扩散”到根元素ButtonBase。因
提供的未记录的属性分布到根目录 元素;例如,className属性应用于根。
现在,假设您想禁用菜单项上的涟漪。你 可以利用传播行为: disableRipple属性将在此处流动 方式:菜单项>列表项>按钮库 我在某种程度上理解它,本例中的根元素是ButtonBase——最内部的元素。MenuItem属性disableRipple中的“undocumented”被“扩散”到根元素ButtonBase。因此,属性是从上到下-到最内部的元素“分散”的 另一方面,当我读到这篇文章时: 用类名重写
重写组件样式的第一种方法是使用类名。每个组件都提供一个className属性,该属性始终应用于根元素 在我看来,他们所指的根是最外部的组件——我从material ui-MenuItem使用的组件,而不是构建它的内部组件(ButtonBase)。否则,它就没有意义了,因为如果它不是真的,我将无法对mui组件进行样式化
因此,当他们说某个东西应用于“根”元素时,他们的意思是它应用于最外部的组件(我导入并使用的mui组件)或最内部的组件(构建材质组件的顶部)?我不确定为什么将
类名
属性应用于内部元素(例如ButtonBase)没有意义。
我认为在所有情况下,“根”都是指内部元素
当您将className
传递给MenuItem时,它将被传递给ListItem组件,ListItem组件将传递给ButtonBase组件,ButtonBase组件最终将传递给本机button
元素,从而允许对按钮进行样式设置
如果有疑问,您可以检查源代码,例如。在我看来,
root
指的是外部元素
className
并没有为任何组件明确记录,因此它只应用于根(外部)元素。但是disableRipple
被扩展到了内部元素,因为它是为ButtonBase
元素显式记录的。这是否意味着根样式应用于所有元素的最内部元素?而每个元素的类名属性中都有类,据我所知,这没有效果,因为只有这些组件渲染的本机元素才能应用样式。