如何在Django表单中使标签加粗?

6

如何在Django表单中使标签变粗?

表单元素如下:

condition = forms.TypedChoiceField(label="My  Condition is",
                              coerce= int,
                              choices=Listed.CONDITION,
                              widget=RadioSelect(attrs={"class": "required"})
                              )
1个回答

14

通常,最简单的方法是在CSS中完成。如果您只处理已实现属性选择器的浏览器,则使用label[for="id_condition"]{font-weight:bold;}。现如今,这意味着除IE6之外的所有浏览器。如果确实需要支持IE6,则可以将字段包装在一个div中并以此方式进行样式设计:

<div class="bold-my-labels">{{ form.condition.label_tag }}{{ form.condition }}</div>
<style type="text/css">.bold-my-labels label{font-weight:bold;}</style>

最后,如果你需要在Python端完成这件事,你可以将HTML放入标签参数中,类似于"<strong>我的条件是</strong>"。但是它会在HTML中被转义,除非你将其标记为安全的,否则你会得到以下结果:

from django.utils.safestring import mark_safe
...
    condition = forms.TypedChoiceField(
        label=mark_safe("<strong>My Condition is</strong>"),
    ...
    )

1
实际上,只有IE6不支持CSS属性选择器,这个选择器首次出现在CSS2中而非CSS3。(当然,如果你需要支持IE6,这就无关紧要了。) - Paul D. Waite

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接