2013-09-21 86 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>