Skip to main content
 首页 » 编程设计

python之Django动态CSS实现

2025年05月04日31飞鱼

我有我的小博客应用程序,我希望能够从管理页面更改样式(不一定是全部)。在 Django 项目中实现动态样式加载的“正确”方法是什么? 我自己的想法:

  • 通过Python文件I/O编辑css文件
  • 从数据库构建css文件
  • 虽然这两种实现都有严重的缺点。 提前感谢您的解决方案。

    编辑:我更喜欢创意而不是 Django 应用程序 :)

    请您参考如下方法:

    执行此操作的“正确”方法是在顶级 div(甚至正文)定义一个类,它确定该页面的主样式。该页面中所有可设置样式的元素然后通过级联的魔力继承此样式:

    .master-default { 
        color: black; 
    } 
    .master-default .bordered { 
        border: green; 
    } 
    .master-blue { 
        color: blue; 
    } 
    .master-blue .bordered 
        border: yellow; 
    } 
    

    等等。现在您的管理界面只允许用户确定顶级主样式,然后您可以在基本模板中使用它:

    <div id="master" class="{{ userprofile.master_style }}"> 
        <div class="bordered">Border colour will vary according to master style</a> 
    </div> 
    

    等等