Primefaces 3.5/CSS-选择一个菜单和按钮垂直对齐
在Primefaces 3.5中,将Primefaces 3.5/CSS-选择一个菜单和按钮垂直对齐,css,primefaces,themes,Css,Primefaces,Themes,在Primefaces 3.5中,将p:selectOneMenu和按钮垂直对齐放在一行中时会很奇怪。我的用例是:用户从菜单中选择选项,然后单击按钮激活它。问题是-两个组件必须位于同一行(表行) XHTML非常简单: 不幸的是,结果并非我所期望的: 我的期望是:或者 我试图用Firebug研究呈现的HTML代码,但老实说,我很难找到任何CSS边距、填充、左、上或类似的东西来帮助我 任何人都曾遇到过这样的问题(希望能解决)?您可以使用panelGrid轻松地自动对齐这两个问题 <h:fo
p:selectOneMenu
和按钮
垂直对齐放在一行中时会很奇怪。我的用例是:用户从菜单中选择选项,然后单击按钮激活它。问题是-两个组件必须位于同一行(表行)
XHTML非常简单:
不幸的是,结果并非我所期望的:
我的期望是:或者
我试图用Firebug研究呈现的HTML代码,但老实说,我很难找到任何CSS边距、填充、左、上或类似的东西来帮助我
任何人都曾遇到过这样的问题(希望能解决)?您可以使用panelGrid轻松地自动对齐这两个问题
<h:form>
<h:panelGrid columns="2">
<p:selectOneMenu>
<f:selectItem itemLabel="test" itemValue="test"/>
</p:selectOneMenu>
<p:commandButton value="GO"/>
</h:panelGrid>
</h:form>
解决方案是:
.selectMenu{显示:内联块;垂直对齐:顶部;}
诱人。。。但这意味着我必须放置额外的表
元素来对齐两个组件。我想在这里做一些CSS工作。谢谢,我用边距底部:-5px解决了这个问题,但这是一个更干净的方法。我刚刚添加了.ui selectonemenu{vertical align:top}
来覆盖primefaces.css(显示已经是内联块),它们现在看起来都很好。垂直对齐:中间
也可以,但垂直对齐:基线
(默认设置)不能。真正的组合框有一个真正的基线,但PrimeFaces版本不是真正的组合框,似乎没有基线。根据“如果框没有基线,请将底部边距边缘与父对象的基线对齐。”我相信这和缺少真实基线解释了我们看到的行为。对PF 6仍然有效。0@VGR我一直在研究一个“真正的”基线修复-其他只是具有不同视觉效果的变通方法。到目前为止运气不好…废物的解决方案有效。但是,如果您希望将此更改应用于所有selectonemenu(使用PF 5.3测试),而不需要引用styleClass,那么您希望覆盖的类是。ui selectonemenu