Можно ли избежать встроенного CSS в Django? - PullRequest
4 голосов
/ 20 июля 2011

Я слышал рекомендации о том, что вы должны не использовать встроенный CSS, например:

<div style="min-width: 10em;">...</div>

но вместо этого следует использовать class, отделяя CSS от HTML и (если возможно) помещая их в отдельный файл CSS.

Пока все хорошо; все это имеет смысл - по крайней мере, до тех пор, пока вещи вписываются в вашу модель.

Теперь я сталкиваюсь с Джанго и хочу сказать что-то вроде:

{% for a, b in bar %}
    <div style="min-width: {% widthratio a b 100 %}em;">...</div>
{% endfor %}

Есть ли практический способ избежать встроенного CSS здесь? Или мне просто нужно нарушить норму?

1 Ответ

6 голосов
/ 20 июля 2011

Поскольку это расчетное значение, вы должны использовать встроенный CSS. Встроенный CSS существует по причине: CSS, который нельзя использовать повторно для нескольких элементов / страниц / веб-сайтов.

Поскольку вы не можете рассчитать по CSS-файлу, очевидно, что здесь имеет смысл использовать встроенный CSS.

P.S. Я делаю почти то же самое в шаблоне Django, за исключением того, что мое - центрировать изображение по вертикали и горизонтали, и мне приходится использовать фактические пропорции изображения для вычисления центрирующего CSS, поэтому я тоже не могу использовать класс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...