我使用此Twig代码显示我的Symfony表单的复选框(或无线电):
{% for o in my_form.magic_choices %}
{{ form_row(o) }}
{% endfor %}
这为每个选项生成以下输出:
<div>
<label for="myform_magic_choices_0">Secret option</label>
<input type="checkbox" value="secret_option" ...>
</div>
这会强制checkbox
输入元素在视觉上 label
之后,如何解决此问题以使我的选择列表更好?我需要将检查放在左侧。
答案 0 :(得分:0)
您可以简单地将输入浮动。
答案 1 :(得分:0)
而不是使用form_row
渲染,而不是单独渲染项目。
<div class="checkbox{% if o.vars.errors|length > 0 %} has-error{% endif %}">
{{ form_widget(o) }} {{ form_label(o) }}
{% if o.vars.errors|length > 0 %}
<span class="help_block">{{ form_errors(o) }}</span>
{% endif %}
</div>
使用“checkbox”类的实际Bootstrap布局在input
中包含label
元素,并为input
使用左边距,以便正确呈现,以便您可能需要为此覆盖CSS。
.checkbox input[type=checkbox],
.checkbox-inline input[type=checkbox],
.radio input[type=radio],
.radio-inline input[type=radio] {
// margin-left: -20px;
margin-left: 0;
}
<强>替代地强>
您可以将标签呈现为文本,以使其符合Bootstrap思维,如..
<div class="checkbox{% if o.vars.errors|length > 0 %} has-error{% endif %}">
<label>
{{ form_widget(o) }} {{ o.vars.label }}
</label>
{% if o.vars.errors|length > 0 %}
<span class="help_block">{{ form_errors(o) }}</span>
{% endif %}
</div>
答案 2 :(得分:0)
树枝
{{ form_row(o, {'attr': {'class': 'checkboxy'}}) }}
CSS
checkboxy {
float:left;
}
嗯,这在Symfony Docs中没有提及,这是史诗般的失败。