<vaadin-combo-box> 的自定义滚动条,不可能?
Custom scrollbars for <vaadin-combo-box> , impossible?
我在使用 vaadin-combo-box 时遇到了问题。我不知道如何为下拉菜单自定义滚动条的外观。我阅读了有关造型部件的文章,并且知道该怎么做,但这似乎是不可能的。无法找到 select #scroller 元素的方法,因为它的设计不是 "part" 样式。然而,这是我能想到的将自定义样式应用于下拉滚动条的唯一方法。如何实现?
在此先感谢您的帮助。
#更新
事实证明,到今天为止,还没有办法在 vaadin-combo-box 组件的滚动条上自定义样式。负责滚动的元素位于内容 shadow DOM 内,无法从外部访问,也无法继承在父部分 [part="content"]
上实现的样式
下拉部分称为 vaadin-combo-box-overlay
,参见:https://vaadin.com/components/vaadin-combo-box/html-api/elements/Vaadin.ComboBoxOverlayElement 可用于样式设置。
这允许在某种程度上设置下拉菜单的样式,但是还有额外的影子根阻止应用,例如::-webkit-scrollbar
元素上的 #scroller
样式。
所以最后一个选择是在 frontend
目录的正确位置复制 vaadin-combo-box
html 文件。碰巧会使用该文件而不是来自 webjar 的文件。然后你可以直接编辑那个 html 文件。当然这意味着如果以后的vaadin-combo-box版本有变化,需要重新copy,re-apply changes
我在使用 vaadin-combo-box 时遇到了问题。我不知道如何为下拉菜单自定义滚动条的外观。我阅读了有关造型部件的文章,并且知道该怎么做,但这似乎是不可能的。无法找到 select #scroller 元素的方法,因为它的设计不是 "part" 样式。然而,这是我能想到的将自定义样式应用于下拉滚动条的唯一方法。如何实现?
在此先感谢您的帮助。
#更新
事实证明,到今天为止,还没有办法在 vaadin-combo-box 组件的滚动条上自定义样式。负责滚动的元素位于内容 shadow DOM 内,无法从外部访问,也无法继承在父部分 [part="content"]
下拉部分称为 vaadin-combo-box-overlay
,参见:https://vaadin.com/components/vaadin-combo-box/html-api/elements/Vaadin.ComboBoxOverlayElement 可用于样式设置。
这允许在某种程度上设置下拉菜单的样式,但是还有额外的影子根阻止应用,例如::-webkit-scrollbar
元素上的 #scroller
样式。
所以最后一个选择是在 frontend
目录的正确位置复制 vaadin-combo-box
html 文件。碰巧会使用该文件而不是来自 webjar 的文件。然后你可以直接编辑那个 html 文件。当然这意味着如果以后的vaadin-combo-box版本有变化,需要重新copy,re-apply changes