如果存在背景图像,则插入div

时间:2018-04-30 15:00:33

标签: html css django django-templates

我有一个对象,可能有也可能没有与之关联的图像。如果它有图像,我希望图像用作div的背景图像。如果它没有图像,我不希望div显示。我正在使用django模板。这是我到目前为止所尝试的:

{% if post.image %}
    <div class="background"></div>
{% endif %}

CSS是:

.background{
  position: absolute;
  z-index: -1;
  background-image: url("{{ post.image.url }}");
  width: 100%;
  height: 400px;
}

图像存储在AWS S3中。发生的事情是,如果对象没有图像,则页面不会加载并告诉我'image'属性没有与之关联的文件。我该怎么办?

1 个答案:

答案 0 :(得分:0)

还要对css添加验证并仅在图像存在时渲染图像:

.background{
  position: absolute;
  z-index: -1;
  {% if post.image %}background-image: url("{{ post.image.url }}");{% endif %}
  width: 100%;
  height: 400px;
}