Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/90.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 材料UI文档中的根元素是什么意思?_Html_Css_Reactjs_Material Ui - Fatal编程技术网

Html 材料UI文档中的根元素是什么意思?

Html 材料UI文档中的根元素是什么意思?,html,css,reactjs,material-ui,Html,Css,Reactjs,Material Ui,我对材料ui术语感到困惑,如果有人能给我解释一下,我将不胜感激 让我们以以下描述为例: 扩散 提供的未记录的属性分布到根目录 元素;例如,className属性应用于根。 现在,假设您想禁用菜单项上的涟漪。你 可以利用传播行为: disableRipple属性将在此处流动 方式:菜单项>列表项>按钮库 我在某种程度上理解它,本例中的根元素是ButtonBase——最内部的元素。MenuItem属性disableRipple中的“undocumented”被“扩散”到根元素ButtonBase。因

我对材料ui术语感到困惑,如果有人能给我解释一下,我将不胜感激

让我们以以下描述为例:

扩散
提供的未记录的属性分布到根目录 元素;例如,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
元素显式记录的。

这是否意味着根样式应用于所有元素的最内部元素?而每个元素的类名属性中都有类,据我所知,这没有效果,因为只有这些组件渲染的本机元素才能应用样式。