Ein Textfeld ist ein Element auf einer Webseite, in das Sie tippen können. Diese werden häufig als Kommentarbereiche, Kontaktformulare oder Adresseingabebereiche verwendet. Alle Browser haben Standardstile für Textfelder, die variieren. Sie können die Kontrolle über Ihre Textfelder übernehmen und sie mit CSS gestalten, genau wie jedes andere Element.

textarea#styled {
width: 600px;
height: 120px;
border: 3px solid #cccccc;
padding: 5px;
font-family: Tahoma, sans-serif;
background-image: url(bg.gif);
background-position: bottom right;
background-repeat: no-repeat;
}
In diesem Fall haben das Textfeld mit der ID „styled“ eine explizit festgelegte Breite und Höhe, einen angewendeten Rand und Abstand, eine Standard-Schriftart und ein angewendetes Hintergrundbild.
Textfelder unterstützen auch einige andere Funktionen, die Ihnen helfen, ihr ästhetisches Verhalten zu steuern. Nämlich „onfocus“ und „onblur“, die Sie Inline anwenden und JavaScript-Befehle geben können, wie hier:
<textarea name="styled-textarea" id="styled" onfocus="this.value=''; setbg('#e5fff3');" onblur="setbg('white')">Enter your comment here...</textarea>
Dies ändert die Hintergrundfarbe des Textfelds zu einem hellgrünen Farbton, wenn es aktiv ist, und zurück zu weiß, wenn es inaktiv ist. Fügen Sie dieses einfache Skript einfach irgendwo auf Ihrer Seite ein*
function setbg(color)
{
document.getElementById("styled").style.background=color
}
*Erstellen Sie entweder eine .js-Datei und verlinken Sie sie in Ihrem Header oder fügen Sie sie in ein <script type=”text/javascript”>-Tag ein.
Sehen Sie all dies in Aktion auf der Beispielseite.
Könnten Sie die CSS für das aktive Textfeld usw. nicht in die Stylesheet einfügen? und was ist der Unterschied zwischen a:hover usw. und der Verwendung von Javascript??
Schöner Tipp, ein Hintergrundbild mit den Worten „Danke schön“ zu verwenden und den Platz optimal auszunutzen.
Nun... die einzige Möglichkeit, es in die Stylesheet aufzunehmen, ist, es als Pseudoklasse wie diese einzufügen:
input:focus, textarea:focus{
background-color: lightyellow;
}
} Aber das wird in IE 6 oder darunter nicht funktionieren. Außerdem erlaubt Ihnen die Verwendung von Javascript, das Feld zu „leeren“, was meiner Meinung nach eine nette Geste ist. Es ist irgendwie ärgerlich, wenn man in ein Feld klickt und den Inhalt manuell löschen muss.
Seien Sie vorsichtig mit onfocus=”this.value=””.
Jedes Mal, wenn der Benutzer das Textfeld verlässt und zurückkehrt, verliert er seine Änderungen…
Sie müssen etwas komplizierteres Javascript verwenden…
Das ist ein guter Punkt, wenn Sie nicht möchten, dass das Formular geleert wird, wenn ein Benutzer wegklickt und danach wieder hineinklickt, müssen Sie stattdessen Folgendes tun:
onfocus="this.value=''; this.onfocus=null;"
Etwas komplizierter, aber nicht zu schlimm =)
Wenn Sie das tun, ändert sich das Textfeld nicht mehr zur onfocus-Farbe.
wollte schon immer wissen, wie sie das Text-Hintergrundbild bekommen...
jetzt, da ich es weiß...
zurück zum Bearbeiten der Stylesheet und so...
verdammt...
Wirklich cool, kann ich es auf meiner Webseite verwenden.
Oh, das gefällt mir! Sehr cool. :)
Wie mache ich das mit Text anstelle eines Bildes wie bei Ihrer Suchleiste?
Vielen Dank für den Beitrag.
übrigens, schöner Blog auch!!!
Ich bezweifle, dass Sie eine Möglichkeit kennen, Textfelder wie in diesem Video konsolenähnlich zu verhalten? Ich nehme an, es könnte Flash verwenden – es ist schwer zu sagen.
Ich konnte es nicht zum Laufen bringen, habe alles versucht, was mir einfiel.
Wie würde ich das mit zwei Textfeldern auf einer Seite machen?
Wirklich schöner Tipp! Danke!
Hallo,
Obwohl Sie jQuery geschrieben haben, haben Sie nur Javascript verwendet.
in jQuery können Sie schreiben:
$(‘styled’).focus().css(‘background’, ‘#e5fff3’);
Um das Textfeld beim Klicken mit CSS und nicht mit einer Javascript-Funktion aktiv zu machen?
Hey, das hat perfekt für mein Formular funktioniert! Danke. Ich habe mich gefragt, wo genau ich einen roten Rand wie im Rest des Formulars hinzufügen würde?
http://prismcareernetworks.com/prism_wordpress/wp-content/forms/registration_candidate/registration_form_candidate.html
Ich sprach zu früh. Es funktioniert nur im ersten Textfeld und nicht bei den anderen. Ich habe die ID=”styled” bei jedem Textfeld verwendet, aber es passiert nichts. ???
Ich habe es herausgefunden.
@Checmark – Können Sie bitte beschreiben, wie Sie dies für mehrere Textfelder zum Laufen gebracht haben?