Django中的内联CSS可以避免吗?

Meh*_*dad 4 html css django django-templates

我听说过建议说你应该不使用内联CSS,如:

<div style="min-width: 10em;">...</div>
Run Code Online (Sandbox Code Playgroud)

但是你应该使用class,将CSS与HTML分开,并且(如果可能的话)将它们放在一个单独的CSS文件中.

到现在为止还挺好; 这一切都是有道理的 - 至少只要事物适合你的模型.

现在我遇到了Django,我想说的是:

{% for a, b in bar %}
    <div style="min-width: {% widthratio a b 100 %}em;">...</div>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

有没有一种实用的方法来避免内联CSS?或者我只是打破常态?

Jor*_*dan 6

由于它是计算值,因此您将使用内联CSS.内联CSS有一个原因:CSS不能跨多个元素/页面/网站重复使用.

由于无法从CSS文件计算,显然在此处使用内联CSS是有意义的.

PS我在Django模板中做的几乎完全相同,除了我的是垂直和水平居中图像,我必须使用图像的实际比例来计算居中的CSS,所以我也不能使用类.

  • +1我同意这是**内联CSS属性的**用例. (2认同)