p:selectOneMenu 当嵌套在 p:panel 中时,大纲会得到额外的 space

p:selectOneMenu outline gets extra space when nested in p:panel

我正在使用 PrimeFaces 5.2,我在 p:panel 中有一个 p:selectOneMenu。如果 selectOneMenu 在面板外,问题不会持续存在,但在面板内时,它看起来像这样:

你可以看到 selectOneMenu 右侧的失真。

我尝试了一些 CSS 编辑,但似乎没有帮助:

.ui-selectonemenu-panel{
    width: 150px;
}
.ui-selectonemenu-panel .ui-selectonemenu-items-wrapper{
    overflow-x: hidden;
}

.ui-selectonemenu-panel 中将宽度设置为 150px 仅有助于恢复下拉菜单的大小,而不是扭曲部分本身。

从 xhtml 文件更改 selectOneMenu 宽度并不能解决问题。我使用的主题是名为 "bootstrap" 的 PrimeFaces 主题,但调整主题大小也不起作用。我没有尝试不同的主题,因为我想继续使用这个主题。

selectOneMenu 应该是这样的:

我在网上找不到与此问题类似的任何内容。感谢任何帮助。

感谢 Geinmachi 的评论,我明白了。更改 ui-selectonemenu-label 似乎有效。

最初我的 selectOneMenu 有 150px 宽度,我最初在我的 CSS 文件中这样编辑 ui-selectonemenu-label

.ui-selectonemenu-label{
    width: 80px !important;
}

我的每个 selectOneMenu 开始看起来像这样:

你可以看到右边的灰色区域是收缩标签造成的。当我将宽度设置为 200px 时,它看起来像这样:

但是当我将标签宽度设置为 150px 时,我观察到与问题中的图片相同的额外 space。所以我试着将它设置为 120px,它看起来是固定的。我认为右侧的灰色下拉按钮宽度约为 30px,因此设置标签宽度时不考虑 30px 的差异会导致额外的 space 超出 selectOneMenu.

但是,我仍然不知道为什么只有当 selectOneMenu 嵌套在面板中时才会出现额外的 space。