Django-Formulare mit CSS gestalten
In Django können Formulare mithilfe von CSS-Stilen angepasst werden. Dadurch können Entwickler das Erscheinungsbild von Formularelementen wie Betreff-, E-Mail- und Nachrichtenfeldern ändern.
So gestalten Sie das in der Frage erwähnte Formular:
Hinzufügen von Klassen oder IDs zu Formularfeldern
Eine Möglichkeit, Klassen oder IDs zu Formularfeldern hinzuzufügen, ist das attrs-Wörterbuch des Widget-Attributs. Zum Beispiel:
class ContactForm(forms.Form): subject = forms.CharField(max_length=100, widget=forms.TextInput(attrs={'class': 'subject-class'})) email = forms.EmailField(required=False, widget=forms.EmailInput(attrs={'id': 'email-id'})) message = forms.CharField(widget=forms.Textarea(attrs={'class': 'message-class'}))
ModelForm für erweitertes Styling verwenden
ModelForm bietet eine erweiterte Möglichkeit, die Formularwiedergabe anzupassen. Es unterstützt die Verwendung von Metaklassen, in denen Widget-Attribute für jedes Formularfeld angegeben werden können.
class ContactForm(forms.ModelForm): class Meta: model = Contact widgets = { 'subject': forms.TextInput(attrs={'class': 'subject-class'}), 'email': forms.EmailInput(attrs={'id': 'email-id'}), 'message': forms.Textarea(attrs={'class': 'message-class'}) }
Überschreiben des Formularrenderers
Für vollständige Kontrolle über die Formularwiedergabe , kann die Methode as_table überschrieben werden. Dadurch können Entwickler eine benutzerdefinierte Vorlage erstellen, die das Formularlayout und die Stile definiert.
def as_table(self): return "custom form template with styles"
Durch die Befolgung dieser Methoden können Formularelemente mithilfe externer Stylesheets nach Bedarf gestaltet werden.
Das obige ist der detaillierte Inhalt vonWie kann ich Django-Formulare mit CSS formatieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!