如何在复选框上方获取标签

How to get label above checkbox

我正在 Yii2 中创建一个表单,但默认设计存在一些问题。即,<?= $form->field($model, 'x')->textInput(['maxlength' => true]) ?> 会将 'x' 标签放在文本字段上方,但 <?= $form->field($model, 'y')->checkbox(['label' => 'y']) ?> 会将标签放在框的右侧。因为这不是我可以用 css 调整的 html 元素(afaik?),我不知道如何修复它并在复选框上方获取标签。

您需要将 false 作为第二个参数传递给 checkbox():

<?= $form->field($model, 'y')->label('y')->checkbox([], false) ?>

您可能仍然需要调整 CSS(这取决于您的布局样式),但复选框及其标签将使用标准字段布局呈现,因此应该相当容易。