How to change form design in Django
<p>Is it possible to change design of the <code>form</code> in <code>Django</code>? I've created a <code>form</code> which extends <code>UserCreationForm</code> because I want <code>user</code> to add more data. </p>

<p>It works correctly but it is very ugly. I've changed <code>form.as_p</code> to <code>form.as_ul</code> in my template and it helped a little but as you can see it is not the way it should be.</p>

<p><a href="https://i.stack.imgur.com/XFbPY.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/XFbPY.png" alt="enter image description here"></a></p>

<p>Let's say that I want for example put each label under it's input or put labels inside input windows like <code>facebook</code> does:
<a href="https://i.stack.imgur.com/B8WwD.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/B8WwD.png" alt="enter image description here"></a></p>

<p>How could I do such things in <code>Django</code>?</p>

<p>My code:</p>

<p><strong>TEMPLATE:</strong></p>

<pre><code>{% extends 'base.html' %}
{% block content %}
    &lt;form action="" method="post"&gt;{% csrf_token %}
        {{ form.as_ul }}
        &lt;input type="submit" value="Create the account"&gt;
    &lt;/form&gt;
{% enblock %}
</code></pre>

<p><strong>FORM:</strong></p>

<pre><code>class UserCreationFormExtended(UserCreationForm):
    first_name = forms.CharField(required=True)
    last_name = forms.CharField(required=True)
    email = forms.EmailField(required=True)
</code></pre>