Java h:jsf 1.1和2.0的selectOneRadio HTML输出
对于类似blow的selectOneRadio代码:Java h:jsf 1.1和2.0的selectOneRadio HTML输出,java,html,css,jsf-2,Java,Html,Css,Jsf 2,对于类似blow的selectOneRadio代码: <h:selectOneRadio value="#{myBean.selectedItem}" enabledClass="selectOneRadio" disabledClass="selectOneRadio"> <f:selectItem itemLabel="#{myBean.item.label}" itemValue="#{myBean.item.code}"/> </h:selectO
<h:selectOneRadio value="#{myBean.selectedItem}" enabledClass="selectOneRadio" disabledClass="selectOneRadio">
<f:selectItem itemLabel="#{myBean.item.label}" itemValue="#{myBean.item.code}"/>
</h:selectOneRadio>
我可以做些什么来让JSF 2.0像JSF 1.1一样生成输出,还是有一个CSS可以用于JSF 2.0输出?通过这样做使它工作:
.selectOneRadio input {
vertical-align: top;
}
.selectOneRadioLabel {
width: 120px; /* width has to set at the label. It won't work if set at table label */
text-align:left;
margin-left:4px;
display: inline-block;
}
<h:selectOneRadio value="#{myBean.selectedItem}" style="selectOneRadio" enabledClass="selectOneRadioLabel" disabledClass="selectOneRadioLabel">
<f:selectItem itemLabel="#{myBean.item.label}" itemValue="#{myBean.item.code}"/>
</h:selectOneRadio>
我创建了一个JSFIDLE,看看是否有人可以帮助我使用css解决方案:。基本上,我需要的标签是在同一行作为单选按钮。如果删除display:inline块,则标签的2行与文本的第一行不对齐。
...
<td><input type="radio" ...><label>text text text text ...... </label></td>
...
.selectOneRadio
{ display:block;
text-indent: -25px;
margin-left: 22px;
}
.selectOneRadio input {
vertical-align: top;
}
.selectOneRadioLabel {
width: 120px; /* width has to set at the label. It won't work if set at table label */
text-align:left;
margin-left:4px;
display: inline-block;
}
<h:selectOneRadio value="#{myBean.selectedItem}" style="selectOneRadio" enabledClass="selectOneRadioLabel" disabledClass="selectOneRadioLabel">
<f:selectItem itemLabel="#{myBean.item.label}" itemValue="#{myBean.item.code}"/>
</h:selectOneRadio>