Django:CSS文件不会更新

时间:2016-12-19 07:58:42

标签: html css django django-forms

我在改变Django Form的CSS方面遇到了一些问题。这是我的代码 (模板):

<form method="post" action="."  id="signup">
    <div class="container">
      {% csrf_token %}
      {{ form.as_p }}
      <button type="submit" value="{% trans 'Submit' %}">Join</button>
    </div>
</form>

型号:

class ExRegistrationForm(RegistrationForm):
    age = forms.IntegerField()
    location = forms.CharField()
    phone = forms.CharField()

型号:

class ExUserProfile(models.Model):
    user = models.ForeignKey(User, unique=True)
    age = models.PositiveSmallIntegerField(default = 19)
    location = models.CharField(max_length=2, default = "location")
    phone = models.CharField(max_length=15, default = "phone number")

    def __unicode__(self):
        return self.user


def user_registered_callback(sender, user, request, **kwargs):
    profile = ExUserProfile(user = user)
    profile.age = request.POST["age"]
    profile.location = request.POST["location"]
    profile.phone = request.POST["phone"]
    profile.save()

CSS:

.container input[type=text], .container input[type=password], .container input[type=email], .container input[type=number] {
  width: 100%;
  padding: 0.3em 0.5em;
  margin: 0.3em 0;
  font-size: 1.5em;
  text-align: center;
  display: inline-block;
  border: 0.1em solid #ccc;
  box-sizing: border-box;
  border-radius: 1em;
}

结果:

enter image description here

我的电子邮件和号码字段的样式没有更新,我认为这个问题可能与Django表单自动生成字段和做一些奇怪的事情有关,但从检查,它显示字段具有正常的名称和输入类型。所以没有什么是不寻常的,除了CSS没有更新。

我做错了什么?

4 个答案:

答案 0 :(得分:5)

问题与我的浏览器缓存旧CSS文件有关,因此不会显示任何更新。我很难解决这个问题,因为我并没有真正理解这个问题。

解决方案很简单:

  

Ctrl + Shift + Del

在Chrome中,您可以使用上述命令删除缓存,从而允许加载新的静态文件。

感谢您的帮助。

答案 1 :(得分:0)

你确定你有CSS选择器吗?转到inspect元素,选择元素并单击复制选择器。这将让您深入了解输入元素的Css选择器。

答案 2 :(得分:0)

您需要在css选择器中使用引号:例如输入[类型= “文本”]

答案 3 :(得分:0)

当Debug为False时,Django将不会提供静态内容(即CSS更改)。

确保您的settings.py文件中的Debug = True