| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/de/docs/Web/HTML/Reference/Elements/input/color#alpha | [Back] [Original] |
Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.
<input type="color"> HTML-Attributswert<input>-Elemente vom Typ color bieten ein Benutzeroberflchenelement, das es einem Benutzer ermglicht, eine Farbe anzugeben, entweder durch Verwendung einer visuellen Farbauswahloberflche oder durch Eingabe der Farbe in ein Textfeld im CSS-Farbwertformat.
Die Darstellung des Elements kann von einem Browser und/oder einer Plattform zur anderen erheblich variieren es kann sich um eine einfache Texteingabe handeln, die automatisch validiert, um sicherzustellen, dass die Farbinformationen im richtigen Format eingegeben werden, oder um einen plattformblichen Farbwhler oder eine Art benutzerdefiniertes Farbwhlerfenster.
<p>Choose your colors:</p>
<div>
<input type="color" id="foreground" name="foreground" value="#e66465" />
<label for="foreground">Foreground color</label>
</div>
<div>
<input
type="color"
id="background"
name="background"
value="oklab(50% 0.1 0.1 / 0.5)"
colorspace="display-p3"
alpha />
<label for="background">Background color</label>
</div>
p,
label {
font:
1rem "Fira Sans",
sans-serif;
}
input {
margin: 0.4rem;
}
Ein CSS-Farbwert.
Hinweis:
Historisch gesehen waren nur grundlegende hexadezimale Farben (ohne Alphakanal) erlaubt. Jetzt kann jedes CSS-Farbformat, einschlielich benannter Farben, funktionaler Notationen und hexadezimaler Farben mit einem Alphakanal, verwendet werden. Der Standardwert ist #000000 (schwarz), wenn ein value weggelassen oder ungltig ist.
Zustzlich zu den globalen Attributen und den Input-Attributen, die allen <input>-Elementen gemeinsam sind, untersttzt der color-Input auch die folgenden Attribute:
alpha Ein boolesches Attribut, das anzeigt, dass der Alphakanal der Farbe vom Endbenutzer bearbeitet werden kann und nicht vollstndig undurchsichtig sein muss.
colorspace Definiert den Farbraum fr die Farbe und gibt einen Hinweis auf die gewnschte Benutzeroberflche fr das Farbwahl-Widget. Mgliche aufgezhlte Werte sind:
"limited-srgb": Die Farbe befindet sich im sRGB-Farbraum. Dies schliet rgb(), hsl(), hwb() und <hex-color> Werte ein. Der Farbwert ist auf 8-Bit pro r, g und b Komponente beschrnkt. Dies ist der Standard."display-p3": Der Display P3-Farbraum, z.B. color(display-p3 1.84 -0.19 0.72 / 0.6).Eingaben des Typs color sind einfach, aufgrund der begrenzten Anzahl von Attributen, die sie untersttzen.
Sie knnen das obige Beispiel aktualisieren, um einen Standardwert festzulegen, sodass der Farbwhler mit der Standardfarbe vorausgefllt ist und der Farbwhler (falls vorhanden) auch auf diese Farbe voreingestellt ist.
<input type="color" value="#ff0000" />
<input
type="color"
id="body"
name="body"
value="oklab(50% 0.1 0.1 / 0.5)"
colorspace="display-p3"
alpha />
Wenn Sie keinen Wert angeben oder wenn der Wert ungltig oder anderweitig vom Browser nicht untersttzt wird, wird der Wert standardmig auf #000000 gesetzt, was undurchsichtiges Schwarz ist.
Wie bei anderen <input>-Typen gibt es zwei Ereignisse, die verwendet werden knnen, um nderungen des Farbwerts zu erkennen: input und change. input wird auf dem <input>-Element jedes Mal ausgelst, wenn sich die Farbe ndert. Das change-Ereignis wird ausgelst, wenn der Benutzer den Farbwhler schliet. In beiden Fllen knnen Sie den neuen Wert des Elements bestimmen, indem Sie sich seinen value ansehen.
Hier ist ein Beispiel, das nderungen des Farbwerts im Laufe der Zeit berwacht:
colorPicker.addEventListener("input", updateFirst);
colorPicker.addEventListener("change", watchColorPicker);
function watchColorPicker(event) {
document.querySelectorAll("p").forEach((p) => {
p.style.color = event.target.value;
});
}
Wenn ein Browser keine Farbauswahloberflche untersttzt, wird die Implementierung der Farbeingaben ein Textfeld sein, das die Inhalte automatisch validiert, um sicherzustellen, dass der Wert im richtigen Format ist. In diesem Fall knnen Sie die Methode select() verwenden, um den aktuell im Bearbeitungsfeld enthaltenen Text auszuwhlen.
Wenn der Browser stattdessen einen Farbwhler verwendet, tut select() nichts. Sie sollten sich dieses Verhaltens bewusst sein, damit Ihr Code in beiden Fllen entsprechend reagieren kann.
colorPicker.select();
Ein Wert einer Farbeingabe wird als ungltig angesehen, wenn der Benutzeragent nicht in der Lage ist, die Eingabe des Benutzers in eine siebenstellige Kleinbuchstaben-Hexadezimalschreibweise umzuwandeln. Wenn dies der Fall ist, wird die :invalid-Pseudoklasse auf das Element angewendet.
Erstellen wir ein Beispiel, das etwas mehr mit der Farbeingabe macht, indem die change- und input-Ereignisse verfolgt werden, um die neue Farbe zu bernehmen und auf jedes <p>-Element im Dokument anzuwenden.
Das HTML ist ziemlich einfach ein paar Absatztext mit einer <input> vom Typ color mit der ID color-picker, die wir verwenden werden, um die Farbe des Textes der Abstze zu ndern.
<p>
An example demonstrating the use of the
<code><input type="color"></code> control.
</p>
<label for="color-picker">Color:</label>
<input type="color" value="#ff0000" id="color-picker" />
<p>
Watch the paragraph colors change when you adjust the color picker. As you
make changes in the color picker, the first paragraph's color changes, as a
preview (this uses the <code>input</code> event). When you close the color
picker, the <code>change</code> event fires, and we detect that to change
every paragraph to the selected color.
</p>
Der folgende Code initialisiert die Farbeingabe:
const defaultColor = "#0000ff";
const colorPicker = document.querySelector("#color-picker");
colorPicker.value = defaultColor;
colorPicker.addEventListener("input", updateFirst);
colorPicker.addEventListener("change", updateAll);
colorPicker.select();
Dies erhlt einen Verweis auf das Farbeingabe-Element im Dokument in einer Variablen namens colorPicker und setzt den Wert der Farbeingabe auf den Wert in defaultColor. Dann wird das input-Ereignis der Farbeingabe eingerichtet, um unsere updateFirst()-Funktion aufzurufen, und das change-Ereignis wird so festgelegt, dass es updateAll() aufruft. Diese sind beide unten zu sehen.
Schlielich rufen wir select() auf, um den Textinhalt der Farbeingabe auszuwhlen, wenn die Steuerung als Textfeld implementiert ist (dies hat keinen Effekt, wenn stattdessen eine Farbauswahloberflche bereitgestellt wird).
Wir bieten zwei Funktionen an, die mit Farbnderungen umgehen. Die updateFirst()-Funktion wird als Reaktion auf das input-Ereignis aufgerufen. Sie ndert die Farbe des ersten Absatz-Elements im Dokument, um mit dem neuen Wert der Farbeingabe bereinzustimmen. Da input-Ereignisse jedes Mal ausgelst werden, wenn eine Anpassung am Wert vorgenommen wird (zum Beispiel, wenn die Helligkeit der Farbe erhht wird), geschieht dies wiederholt, whrend der Farbwhler verwendet wird.
function updateFirst(event) {
const p = document.querySelector("p");
if (p) {
p.style.color = event.target.value;
}
}
Wenn der Farbwhler geschlossen wird, was bedeutet, dass sich der Wert nicht mehr ndern wird (es sei denn, der Benutzer ffnet den Farbwhler erneut), wird ein change-Ereignis an das Element gesendet. Wir behandeln dieses Ereignis mit der updateAll()-Funktion, indem wir Event.target.value verwenden, um die endgltig ausgewhlte Farbe zu erhalten:
function updateAll(event) {
document.querySelectorAll("p").forEach((p) => {
p.style.color = event.target.value;
});
}
Dies setzt die Farbe jedes <p>-Blocks so, dass dessen color-Attribut mit dem aktuellen Wert der Farbeingabe bereinstimmt, auf die durch event.target verwiesen wird.
Das endgltige Ergebnis sieht so aus:
| Wert |
Jeder CSS <color> Wert in beliebiger Notation.
|
| Ereignisse | [`change`](/de/docs/Web/API/HTMLElement/change_event) und [`input`](/de/docs/Web/API/Element/input_event) |
| Untersttzte gemeinsame Attribute |
autocomplete und
list
|
| IDL-Attribute |
alpha,
colorSpace,
list, und
value
|
| DOM-Schnittstelle | [`HTMLInputElement`](/de/docs/Web/API/HTMLInputElement) |
| Implizite ARIA-Rolle | keine entsprechende Rolle |
| Spezifikation |
|---|
| HTML # color-state-(type=color) |
| HTML # attr-input-alpha |
| HTML # attr-input-colorspace |
<a><abbr><acronym><address><area><article><aside><audio><b><base><bdi><bdo><big><blockquote><body><br><button><canvas><caption><center><cite><code><col><colgroup><data><datalist><dd><del><details><dfn><dialog><dir><div><dl><dt><em><embed><fencedframe><fieldset><figcaption><figure><font><footer><form><frame><frameset><geolocation><h1><h6><head><header><hgroup><hr><html><i><iframe><img><input><ins><kbd><label><legend><li><link><main><map><mark><marquee><menu><meta><meter><nav><nobr><noembed><noframes><noscript><object><ol><optgroup><option><output><p><param><picture><plaintext><pre><progress><q><rb><rp><rt><rtc><ruby><s><samp><script><search><section><select><selectedcontent><slot><small><source><span><strike><strong><style><sub><summary><sup><table><tbody><td><template><textarea><tfoot><th><thead><time><title><tr><track><tt><u><ul><var><video><wbr><xmp><input>-Typen<input type="button"><input type="checkbox"><input type="color"><input type="date"><input type="datetime-local"><input type="email"><input type="file"><input type="hidden"><input type="image">`<input type="month">`<input type="number"><input type="password"><input type="radio"><input type="range"><input type="reset"><input type="search"><input type="submit"><input type="tel"><input type="text"><input type="time"><input type="url"><input type="week"><script type>Der Bauplan fr ein besseres Internet.
Teile dieses Inhalts sind 19982026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfgbar unter einer Creative-Commons-Lizenz.
| Web Proxy Viewer | New URL | Original Page |