html 文件没有与我的 css 文件一起下沉?



我所有的html、css和文件都在同一个templates文件夹中,所以我认为这不是问题所在。我是一个全新的前端开发和深深的困惑。。。请帮忙,这不是一个好的开始哈哈!

--我的base.html文件--

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>{% block title %}{% endblock %}</title>
<link rel="stylesheet" type="text/css" href="main.css"/>
</head>
<body>
<nav class="navigation_bar">
<ul>
<li>
<a href="/about"><b>about page</b></a>
</li>
</ul>
</nav>
{% block content %}{% endblock %}
</body>
</html>

--main.css--

@import url('https://fonts.googleapis.com/css?family=Montserrat:400,600');
body {
text-align: center;
font-family: 'Montserrat';
}

.navigation_bar a {
text-decoration: none;
}

也许是我的css有问题?非常感谢。

我认为这里的问题在你的服务器上,我认为你使用的是Flask,因为你在html文件中编写Jinja语法,我认为问题是Flask找不到你的css文件。你需要告诉它在哪里可以找到你的静态文件,或者你可以制作一个路由器来处理文件请求,读取文件并将其发送回浏览器。

第一种方式

from flask import Flask, render_template
app = Flask(__name__,
static_url_path='', 
static_folder='static',
template_folder='templates')
@app.route('/')
def main_page():
return render_template("index.html")

因此,现在Flask将在文件夹"static"中查找您的静态文件。您需要创建它,然后将静态文件(包括css文件(放在那里,并保持html文件的原样,不要更改css文件的路径以包含文件夹名称,因为Flask将像在脚本的当前目录中一样提供它。

第二种方式

from flask import Flask, render_template, request, Response
app = Flask(__name__)
@app.route('/')
def main_page():
return render_template("index.html")
@app.route('/css')
def giveCSS():
fileContent = ""
file_name = request.args.get("name")
if(file_name):
file = open("css/" + file_name + ".css", "r")
for line in file:
fileContent += line
return Response(fileContent, mimetype='text/css')

我假设你有其他css文件,你需要更改html文件中css文件的路径,以包括查询/css/name=main和名为"css"的文件夹中的css文件。当然,你可以更改你不喜欢的任何名称,但一定要小心。

最新更新