我正在制作一个Django应用程序,当我尝试运行HTML加载而不是CSS的不同页面时,当我正常打开文件时(不是从服务器)它一切正常,但是当我通过服务器运行它们时,它在URL页面搜索CSS。下面是一个例子:URL: http://127.0.0.1:8000/profile/创建/HTML都是工作的,但CSS不是,我在终端上看到这个:
[21/Dec/2022 10:11:54] "GET /profile/create/ HTTP/1.1" 200 1374
Not Found: /profile/create/style.css
[21/Dec/2022 10:11:54] "GET /profile/create/style.css HTTP/1.1" 404 2993
HTML和CSS在同一个目录下,这是我从我的HTML
连接<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" type="text/css" href="style.css">
<title>MyPlantApp</title>
</head>
您需要为您的静态文件创建一个文件夹,并将所有的静态文件存储在那里。
在settings.py文件中使用以下代码设置静态文件目录:
STATICFILES_DIRS = [
(os.path.join(BASE_DIR, "static/")),
]
你的静态文件夹应该看起来像这个静态文件夹。
还需要使用适当的模板语法来指定查找静态文件。改变这个:
<link rel="stylesheet" type="text/css" href="style.css">
:
<link rel="stylesheet" type="text/css" href="{% static 'static/style.css' %}">
你试过把/
放在style.css
之前吗?您正在尝试从HTML文件的相对路径获取style.css。如果你把/放在style.css
之前,它将尝试从根目录获取css文件。
/style.css
代替style.css
<!-- Your Code -->
<link rel="stylesheet" type="text/css" href="style.css">
<!-- Might help -->
<link rel="stylesheet" type="text/css" href="/style.css">