【问题标题】:Overriding Bootstrap in django-pipeline在 django-pipeline 中覆盖 Bootstrap
【发布时间】:2015-10-13 18:41:38
【问题描述】:

我有一个使用 django-pipeline 包和 bootstrap.css 的 Django 应用程序:

PIPELINE_CSS = {
'myCSS': {
    'source_filenames': (
        'css/bootstrap.css',
        'css/bootstrapoverride.css',

    ),
    'output_filename': 'bootmin.css',
    'variant': 'datauri',
},

}

正如您在上面看到的,我添加了一个附加文件“bootstrapoverride.css”,我希望用它来覆盖 Bootstrap 的某些功能,例如在我的覆盖文件中:

.navbar {
min-height: 100px;
        }

所以我认为这可能有效,但没有发生覆盖,也许使用管道这是不可能的。我想避免直接编辑 bootstrap.css 文件。感谢您在这里提供任何见解。

【问题讨论】:

    标签: css django twitter-bootstrap django-pipeline


    【解决方案1】:

    您可以这样做,但我会以不同的方式设置您的项目。我会有一个vendor 捆绑包和一个单独的companyproject 特定捆绑包。

    一个例子看起来像这样;

    PIPELINE_CSS = {
    'vendor': {
        'source_filenames': (
            'css/bootstrap.css',
    
        ),
        'output_filename': 'vendor.css',
        'variant': 'datauri',
    },
    'project': {
        'source_filenames': (
            'css/bootstrapoverride.css',
    
        ),
        'output_filename': 'project.css',
        'variant': 'datauri',
    },
    }
    

    然后按此顺序将它们包含在您的 base.html 文件中:

    {% stylesheet 'vendor' %}
    {% stylesheet 'project' %}
    

    【讨论】:

    • @josephmisti 感谢您的回复,非常好的建议;但是我没有看到覆盖。我注意到在控制台中我没有像其他资产那样在 GET 中看到 bootstrapoverride.css。对此有什么想法吗?
    • 这行得通,但是无论出于何种原因,我不得不将我的项目文件从 bootstrapoverride.css 重命名为“myAppStyleSheet.css”*或任何您想调用的名称。不确定是否与“bootstrap”前缀存在某种冲突,我对 django-pipeline 的工作原理知之甚少。谢谢约瑟夫
    • django-pipeline 非常令人困惑,但一旦你掌握了它 - 它比替代品(jammit 等)要好得多。没问题 - 给我一个赞成票:)
    猜你喜欢
    • 2023-03-27
    • 2015-07-09
    • 1970-01-01
    • 2011-09-24
    • 2011-09-21
    • 2019-01-01
    • 1970-01-01
    • 2018-08-10
    • 2023-03-20
    相关资源
    最近更新 更多