【问题标题】:django css works on chrome but not firefoxdjango css 适用于 chrome 但不适用于 firefox
【发布时间】:2018-05-05 01:53:32
【问题描述】:

我正在开发 django 网站并使用引导程序,我可以在 chrome 浏览器上看到样式,但在 firefox 上看不到。

firefox 检查显示引导程序出现 404 错误,而 chrome 则没有。感谢任何想法。

代码:-


#settings.py 

# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

PROJECT_DIR = os.path.dirname(os.path.abspath(__file__))

STATIC_URL = '/static/'
STATIC_ROOT = '%s/coffestatic/' % (BASE_DIR)

STATICFILES_DIRS = ['%s/website-static-default/'% (BASE_DIR),
                     ("bootstrap", '%s/bootstrap' % (BASE_DIR)),]

HTTP 文件.html

<head>
{% load static %}

<link href="{% static'bootstrap/css/bootstrap.css'%}"rel="stylesheet">
</head>

文件结构

基础目录

|--ProjectFolder

|------Apps

|--BootstrapDir

|------css

工作流程

  • 定义静态文件
  • python manage.py collectstatic
  • 在 html 中定义样式
  • 运行项目

谢谢

【问题讨论】:

  • Django 本身并不关心客户端是 chrome 还是 firefox 或其他任何东西,所以我看不出相同的 url 将如何产生一个客户端的 200 和另一个客户端的 404。请确保您已清除浏览器的缓存,并使用不使用任何缓存(即使用 python-requests)的命令行客户端进行测试。

标签: python css django html


【解决方案1】:

我不确定您的 settings.py 文件是否正确,因为它们与我的设置方式不同。话虽这么说,我不是专家,你很可能对我运行不同版本的 django。我确实注意到的是您的链接文件上没有文件类型。也许 Chrome 没有这个就很好,但也许 Firefox 没有它就很适合。尝试改变:

<link href="{% static'bootstrap/css/bootstrap.css'%}"rel="stylesheet">

<link href="{% static'bootstrap/css/bootstrap.css'%}"rel="stylesheet" type="text/css">

只是猜测......

【讨论】:

  • 我试过了,但是没有用。问题是我需要知道为什么它会给出 404,这就是我得到的:-(请求 URL:localhost:8000/static/bootstrap/css/bootstrap.css / 404 Not Found)在检查中但谷歌没有这样做,谢谢回复
【解决方案2】:

在你的 html 文件中使用 bootstrap starter 文件会有所帮助;正如我所做的那样,它有所帮助。 在正文部分的末尾添加这些文件:

<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js" integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q" crossorigin="anonymous"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js" integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRS

并在 head 部分的开头添加这些文件:

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">

我是 django 的初学者,所以不确定,但它对我有用。

【讨论】:

    【解决方案3】:

    在项目文件夹中创建一个任意名称的目录。让我们命名__shared__并将css和jss文件夹放入目录中

    在settings.py中 在底部放置此代码

    STATICFILES_DIRS = [
        os.path.join(BASE_DIR, "__shared__"),
    ]
    

    【讨论】:

      猜你喜欢
      • 2015-02-20
      • 1970-01-01
      • 2015-05-07
      • 2021-08-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多