Flask中有多个CSS文件?

Ton*_*ony 0 python flask

您将如何获得模板以在Flask中使用特定的CSS文件?

admin.html = admin.css  
user.html = user.css
Run Code Online (Sandbox Code Playgroud)

我看过Flask文档,它们没有意义吗?

Mat*_*ias 5

您可以在基本模板的子模板中覆盖<head>部分。因此,每个用户页面都使用base.html模板中的css文件,而只有admin.html使用其他文件。http://flask.pocoo.org/docs/patterns/templateinheritance/#template-inheritance中对此进行了记录

编辑:也许您可以使用:所有页面都源自base.html并使用base.css。只有user.html和admin.html会覆盖头部,并包括base.css和特定的admin.css / user.css。

范例:

base.html:

     <!doctype html>
     <html>
     <head>
      {% block head %}
        <link rel="stylesheet" href="{{ url_for('static', filename='base.css') }}">
      {% endblock %}
      </head>
      <body>
      <div id="content">{% block content %}{% endblock %}</div>

     </body>
     </html>
Run Code Online (Sandbox Code Playgroud)

admin.html:

    {% extends "base.html" %}
    {% block head %}
      <link rel="stylesheet" href="{{ url_for('static', filename='base.css') }}">
      <link rel="stylesheet" href="{{ url_for('static', filename='admin.css') }}">
    {% endblock %}
    {% block content %}
     content goes here
    {% endblock %}
Run Code Online (Sandbox Code Playgroud)

user.html:

    {% extends "base.html" %}
    {% block head %}
      <link rel="stylesheet" href="{{ url_for('static', filename='base.css') }}">
      <link rel="stylesheet" href="{{ url_for('static', filename='user.css') }}">
    {% endblock %}
    {% block content %}
     content goes here
    {% endblock %}
Run Code Online (Sandbox Code Playgroud)

编辑:如果将css文件存储在static /的子目录中,则必须编写如下链接:

      <link rel="stylesheet" href="{{ url_for('static', filename='css/base.css') }}">
Run Code Online (Sandbox Code Playgroud)