Django/Python的CSS模板系统?
我在想有没有类似于Django的HTML模板系统那样的东西,可以用在CSS上。我查找了一些资料,但没有找到有用的信息。我知道有SASS和CleverCSS这些工具,但从我了解的情况来看,它们并不能解决我的问题,因为我想根据特定条件动态生成一个CSS文件,这样就可以根据特定用户的会话提供不同的CSS文件。
我想尽量减少使用JavaScript或AJAX,因为这是在一个老旧的系统里运行的,那个医院还在用IE 6。同时,我也希望在其他项目中尽量减少JavaScript的使用。所以我希望有一个CSS文件,但它可能需要根据情况进行更改(这可以用CleverCSS来实现)。不过问题是,如果我只是把更改写到一个文件里,那么这个文件就会被所有人看到,尽管他们在使用应用时可能会有不同的CSS状态。因此,我想去掉CSS文件的物理关联,而是希望每次都能动态生成,这样就能确保每个用户的会话都是独一无二的,就像Django的HTML模板系统那样。
1 个回答
8
Django的模板系统可以用来处理任何你想要的文本。虽然它大多数时候是用来生成HTML的,但其实也可以用来创建CSS。你在HTML中引用的CSS可以指向一个动态的链接,而不是一个静态的文件,这样视图函数就可以根据需要生成任何你想要的内容,然后通过一个.css的模板文件来生成你的CSS。
如果你只有几种不同的CSS选择,可能更好的是把它们做成静态文件,然后在HTML模板中根据不同的条件来选择你想要的CSS文件。