---
description: Лучшие практики использования djLint для форматирования HTML-шаблонов.
title: Лучшие практики
keywords: облицовка шаблонов, форматер шаблонов, djLint, HTML, шаблоны, форматер, линтер, использование
---

# {{ "best_practices" | i18n }}

## Пробелы вокруг условных атрибутов

Иногда условия используются для добавления классов в тег. djLint удаляет пробелы внутри условных операторов.

Этот шаблон рекомендуется:

{% raw %}

```html
<div class="class1 {% if condition -%}class2{%- endif %}">содержание</div>
^ место здесь
```

{% endraw %}

Эта схема не рекомендуется:

{% raw %}

```html
<div class="class1{% if condition -%} class2{%- endif %}">содержание</div>
^ место здесь
```

{% endraw %}

## `format_attribute_template_tags` и беспространственные условные атрибуты

Если `format_attribute_template_tags` опция включена, условные атрибуты должны использовать теги без пробелов, например {% raw %}`{% if a -%}`{% endraw %} в nunjuck и jinja, чтобы удалить пробелы внутри.

djLint будет форматировать длинные атрибуты на несколько строк, и пробелы, сохраненные внутри атрибутов, могут сломать ваш код.

Рекомендуется использовать этот шаблон:

{% raw %}

```html
<input
  value="{% if database -%}{{ database.name }}{%- else -%}бла{%- endif %}"
/>
^ ^ ^ ^ -- беспространственные метки
```

{% endraw %}

Эта схема не рекомендуется:

{% raw %}

```html
<input value="{% if database %}{{ database.name }}{% else %}бла{% endif %}" />
```

{% endraw %}

После форматирования это может выглядеть следующим образом:

{% raw %}

```html
<input
  value="{% if database %}
                  {{ database.name }}
              {% else %}
                  бла
              {% endif %}"
/>
```

{% endraw %}
