【问题标题】:Django Templating - background images JinjaDjango 模板 - 背景图片 Jinja
【发布时间】:2018-02-15 06:33:21
【问题描述】:

我无法在我的网站上显示我的背景图片。我将背景图像放在我的 style.css 中,并将其链接到“”中。

我将 {% load staticfiles %} 放在样式上方,但我很确定这是错误的。

我检查了我的设置并且 STATIC_URL 设置是 STATIC_URL = '/static/'

这是我的CSS

style.css

body {
    background:slategray url("/personal/static/personal/images/background.gif")no-repeat right bottom;
}

这是我的html代码

<!DOCTYPE html>
<html lang="en">
  <head>
      <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <title>Mr. Hart</title>


      <!-- Bootstrap CSS -->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous">

      <div class="row">
        <div class="col-md-8">
            <a href='/' style="display: inline-block; text-decoration-color: #1a8002;">Home</a>
            <a href='/blog/' style="display: inline-block; text-decoration-color: green;"> Blog </a>
            <a href='/Aboutme/' style="display: inline-block; text-decoration-color: green;"> About Me </a>
            <a href='/stocks/' style="display: inline-block; text-decoration-color: green;"> My stock Tips </a>
            <a href='/crypto/' style="display: inline-block; text-decoration-color: green;"> Crypto </a>
        </div>
        <div class="col-md-4">"This is where my contacts stack,github, stocktwits, twitter, all picture links "</div>
      </div>

      {% load staticfiles %}
      <style type="text/css">
        html,
        body {
          background: url("{% static "/personal/style.css" %}") no-repeat center center fixed;
          -webkit-background-size: cover;
            -moz-background-size: cover;
            -o-background-size: cover;
            background-size: cover;
        }
    </style>
  </head>

【问题讨论】:

  • 您好,您尝试使用源 CSS 渲染图像,您需要图像而不是 CSS 文件。这里是您的问题背景: url("{% static "/personal/style.css" %}") 尝试使用 ASP 或 JSP 加载您的图像不知道尝试背景: url(domain/to/your/image.jpg) 问候
  • 我不知道如何使用 ASP 或 JSP。我尝试通过背景将 url 直接指向图像: url("/personal/static/personal/images/background.jpg") no-repeat center center fixed;无济于事仍然空白。
  • 可以肯定的是,尝试在浏览器上加载图像并将带有“http://”的 url 复制粘贴到背景:url(http/domain/to/your/image.jpg)

标签: html css django jinja2


【解决方案1】:

我认为它没有找到静态文件,因为斜线。

让我们尝试一个我们知道存在的静态文件:

$ ./manage.py findstatic admin/js/vendor/jquery/jquery.js
Found 'admin/js/vendor/jquery/jquery.js' here:
  /home/jpic/.local/lib/python3.6/site-packages/django/contrib/admin/static/admin/js/vendor/jquery/jquery.js

但带有前缀斜杠:

$ ./manage.py findstatic /admin/js/vendor/jquery/jquery.js
Traceback (most recent call last):
  File "./manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/home/jpic/.local/lib/python3.6/site-packages/django/core/management/__init__.py", line 353, in execute_from_command_line
    utility.execute()
  File "/home/jpic/.local/lib/python3.6/site-packages/django/core/management/__init__.py", line 345, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/home/jpic/.local/lib/python3.6/site-packages/django/core/management/base.py", line 348, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/home/jpic/.local/lib/python3.6/site-packages/django/core/management/base.py", line 399, in execute
    output = self.handle(*args, **options)
  File "/home/jpic/.local/lib/python3.6/site-packages/django/core/management/base.py", line 548, in handle
    label_output = self.handle_label(label, **options)
  File "/home/jpic/.local/lib/python3.6/site-packages/django/contrib/staticfiles/management/commands/findstatic.py", line 22, in handle_label
    result = finders.find(path, all=options['all'])
  File "/home/jpic/.local/lib/python3.6/site-packages/django/contrib/staticfiles/finders.py", line 250, in find
    result = finder.find(path, all=all)
  File "/home/jpic/.local/lib/python3.6/site-packages/django/contrib/staticfiles/finders.py", line 160, in find
    match = self.find_in_app(app, path)
  File "/home/jpic/.local/lib/python3.6/site-packages/django/contrib/staticfiles/finders.py", line 174, in find_in_app
    if storage.exists(path):
  File "/home/jpic/.local/lib/python3.6/site-packages/django/core/files/storage.py", line 294, in exists
    return os.path.exists(self.path(name))
  File "/home/jpic/.local/lib/python3.6/site-packages/django/core/files/storage.py", line 307, in path
    return safe_join(self.location, name)
  File "/home/jpic/.local/lib/python3.6/site-packages/django/utils/_os.py", line 78, in safe_join
    'component ({})'.format(final_path, base_path))
django.core.exceptions.SuspiciousFileOperation: The joined path (/admin/js/vendor/jquery/jquery.js) is located outside of the base path component (/home/jpic/src/django-autocomplete-light/test_project/linked_data/static)

查看官方文档和一些博客文章:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-04-26
    • 2018-09-29
    • 1970-01-01
    • 2021-04-30
    • 2019-02-02
    • 2017-06-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多