2014-01-13 5 views
0

Для кода selectOneRadio, как удар:ч: selectOneRadio HTML выход для JSF 1.1 против 2.0

<h:selectOneRadio value="#{myBean.selectedItem}" enabledClass="selectOneRadio" disabledClass="selectOneRadio"> 
    <f:selectItem itemLabel="#{myBean.item.label}" itemValue="#{myBean.item.code}"/> 
</h:selectOneRadio> 

JSF 1.1, кажется, генерируя вывод HTML, как показано ниже:

... 
<td><label><input type="radio" ...>text text text text ...... </label></td> 
... 

Но в JSF 2.0 , это, кажется, генерируя вывод HTML, как показано ниже:

... 
<td><input type="radio" ...><label>text text text text ...... </label></td> 
... 

в JSF 1.1, я использую стиль CSS, как показано ниже, чтобы выровнять длинный текст ярлыка, который проходит более одной строки. Но этот стиль css, похоже, не работает с выходом JSF 2.0 HTML.

.selectOneRadio 
{ display:block; 
    text-indent: -25px; 
    margin-left: 22px; 
} 

Есть ли что-то я могу сделать, чтобы сделать JSF 2,0 генерировать выходной сигнал, как JSF 1.1 или есть CSS, который будет работать на 2.0 выход JSF?

+0

Я создал jsfiddle, чтобы увидеть, если кто-то может помочь мне с CSS решения: http://jsfiddle.net/8j7dK/. В принципе, мне нужна метка на той же линии, что и переключатель. Если я удалю дисплей: встроенный блок, 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> 
Смежные вопросы