2013-09-21 65 views
1

我試圖做的CheckBoxList和同我已經使用這個聲明
<?php echo CHtml::checkBoxList('interests', '', array('PHP', 'MySQL', 'JavaScript', 'CSS', 'Yii Framework')); ?>

但它給我的輸出中的名稱(「PHP」,「 MySQL','JavaScript','CSS', 'Yii Framework')指定複選框位於框下方,而我希望水平地與它們的名稱爲CheckBoxList的是給結果垂直

+0

請將可下載的類附加到您的問題上。 – eapo

+0

我已經在** _ form.php **中定義了這個聲明.... –

回答

2

簡單的方法來解決你的問題是,你可以在定義樣式輸入複選框您checkboxlist like:

#interests input { 
    float: left; 
    margin-right: 10px; 
} 

您的輸入(複選框)和標籤將是水平的。

+0

謝謝secretlm ....這是工作....非常感謝:) –

0
echo CHtml::checkBoxList(
    'interests', 
    '', 
    array('PHP', 'MySQL', 'JavaScript', 'CSS', 'Yii Framework'), 
    array('labelOptions' => 
      array(
       'style' => "display: inline-block" 
      ) 
    ) 
); 

或者在你的CSS文件中更好地指定某些類

.mylabelclass { 
display: inline-block 
} 

,並使用

array('labelOptions' => 
     array(
       'class' => "mylabelclass" 
     ) 
) 
1

你不需要自定義CSS來做到這一點。 Yii有一個名爲「分隔符」這個內置的屬性,你可以很容易地通過這樣擺脫換行符:

echo CHtml::checkBoxList('...','...', array(...), 
    array(
    'separator'=>'', //the default was a line break... 
    ) 
); 
+0

它不會使輸入(複選框)和標籤是水平的! – secretlm

+0

@secretlm它會的。 – jackhao

+0

@jackhao我不敢告訴你,先生,我試過Secretlm是正確的......它不工作:( –

1

行 - 我得到它的工作。這是我用過的。分隔符將刪除線條之間的間距,並且float將與描述相同的線條上實現該框。

.checkBoxClass 
 
{ 
 
\t float: left; 
 
}
<div id="itemGroups" class="itemGroups"> 
 
\t <?php echo $form->checkBoxList($model, 'groups', $group_items, 
 
\t \t array(
 
\t \t \t 'separator' => '', 
 
\t \t \t 'class'=>'checkBoxClass', 
 
\t \t) 
 
\t);?> 
 
</div>