在C语言中使用Django标记

2024-04-19 07:25:48 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我在Django网站上有很多样式表。CSS和JS文件位于static/的应用程序目录或全局站点目录下(如果是公共文件)。我在不同的页面上有不同的颜色主题,只是在样式表中改变了一些颜色值。你知道吗

如果我想更改主题中的一种颜色,并且在文件中重复多次,那么我就不必为每个颜色主题使用一个完全不同的样式表文件,也可以节省时间,我想使用变量(据我所知,CSS3变量既不受支持,也被程序员设计者看不起)。你知道吗

显然,在静态目录中,我无法向这些文件发送上下文变量(Python视图请求没有调用它们),所以问题就出在这里:如何使用Django大量更改CSS中重复的颜色值?你知道吗


Tags: 文件django目录应用程序主题站点网站颜色
1条回答
网友
1楼 · 发布于 2024-04-19 07:25:48

你可以利用CSS property of cascading对你有利!不要在样式表中存储颜色,可以在<head>样式中指定它们。例如:

<head>
<link rel="stylesheet" type="text/css" href="xxx"/>
<style>
body
{
    background-color: {{ colour }};
}
</style>
</head>

颜色变量可以在视图中设置为全局。或者更好的是,用你想要使用的各种颜色定义一个类、列表或字典。这里有很多选择。我想我会选择

Colours={'Grey': ['#999', '#ccc', '#ddd'], 'Blue': ['#00f', '#77f', '#aaf']}

现在,如果您希望子页面为蓝色,请在您的上下文中发送Colours['Blue'](在下面的示例中为Colour),并使用一个项作为背景色,一个用于文本,另一个用于杂项:

<style>
body
{
    background-color: {{ Colour.0 }};
    color: {{ Colour.1 }};
}
div.misc
{
    background-color: {{ Colour.2 }};
}
</style>

相关问题 更多 >