例えばですが、下記のようなのはいかがですか。
base.html
html
1{% load static %}
2<!DOCTYPE html>
3<html lang="ja">
4 <head>
5 <meta charset="utf-8">
6 {% block style %}
7 <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.4/css/bootstrap.min.css">
8 {% endblock %}
9 {% block extrastyle %}{% endblock %}
10 </head>
11 <body>
12 {% block header %}
13 {% include 'app/header.html' %}
14 {% endblock %}
15 {% block content %}{% endblock %}
16 </body>
17</html>
もしもヘッダーが異なるぺージがある場合は、例えば継承したテンプレートで
html
1{% extends "app/base.html" %}
2{% block header %}{% include 'app/header2.html' %}{% endblock %}
3{% block content %}
4本文
5{% endblock %}
のようにして別のヘッダーを読み込ませたり、空にすることも可能です。
もちろん{% block header %}を上書きしなければbase.htmlで記述した{% include 'app/header.html' %}が読み込まれます。デフォルト値を指定しつつ、上書きも可能になった、というようなイメージですね。
共通のcss等は、継承したテンプレートで上と同様に{% block style %}を上書きすることで変更でき、
基本のcssの使いつつ、追加したいcss等があれば{% block extrastyle %}等を上書き...
ということもできます。