uswds_base-8.x-2.0-alpha1/templates/form/form-element-label.html.twig
templates/form/form-element-label.html.twig
{# /** * @file * Theme override for a form element label. * * Available variables: * - title: The label's text. * - title_display: Elements title_display setting. * - required: An indicator for whether the associated form element is required. * - attributes: A list of HTML attributes for the label. * * @see template_preprocess_form_element_label() */ #} {%- set classes = [ not (is_checkbox or is_radio) ? 'usa-label', is_checkbox ? 'usa-checkbox-label', is_radio ? 'usa-radio-label', 'control-label', title_display == 'after' ? 'option', title_display == 'invisible' and not (is_checkbox or is_radio) ? 'sr-only', required ? 'js-form-required', required ? 'form-required', ] -%} {% if title is not empty and title_display == 'invisible' and (is_checkbox or is_radio) -%} {# Clear but preserve label text as attribute (e.g. for screen readers) for checkboxes/radio buttons when it actually should be invisible. #} {%- set attributes = attributes.setAttribute('title', title) -%} {%- set title = null -%} {%- endif -%} {# Labels for single checkboxes/radios contain the element itself and thus have always to be rendered regardless of whether they have a title or not. #} {%- if title is not empty or is_checkbox or is_radio -%} <label{{ attributes.addClass(classes) }}>{{ element }}{{ title }} {%- if description -%} <p class="help-block">{{ description }}</p> {%- endif -%} </label> {%- endif -%}