Inhaltsverzeichnis
Nutzung von HSL -Werten
Verwendung von Farbbibliotheken
Das Farbgitterwerkzeug
RGB -Farbmanipulationstechniken
Bestimmung der RGB -Leichtigkeit
RGB sättigen, ohne Leichtigkeit oder Farbton zu beeinflussen
Versteuerung von RGB -Farben
Aufhellen und Verdunkelung von RGB gleich
Heim Web-Frontend CSS-Tutorial Verwenden Sie JavaScript, um die Sättigung und Helligkeit von RGB -Farben anzupassen

Verwenden Sie JavaScript, um die Sättigung und Helligkeit von RGB -Farben anzupassen

Apr 02, 2025 am 04:20 AM

Verwenden Sie JavaScript, um die Sättigung und Helligkeit von RGB -Farben anzupassen

Vor kurzem habe ich Farbdesignprinzipien erkundet und mich von Adam Wathan und Steve Schrogers Arbeit inspirieren lassen. Ihr Rat unterstreicht die Notwendigkeit einer umfassenden Farbpalette, die über einige ästhetisch ansprechende Hex -Codes hinausgeht. Der Aufbau von robusten Anwendungen erfordert eine breitere Reichweite, die zahlreiche Grautöne und mehrere Primärfarben umfasst, die jeweils unterschiedliche Helligkeit und Sättigung haben.

Mein Entwicklungsworkflow umfasst häufig Hex -Codes oder RGB -Farben, aber die manuelle Einstellung von Leichtigkeit und Sättigung erweist sich umständlich. Um diesen Prozess zu optimieren und sich wiederholende Dehnungsverletzungen durch konstante Farbwähleranpassungen zu vermeiden, lassen Sie uns einen Code erkunden, um die Farben effizient zu manipulieren.

Nutzung von HSL -Werten

HSL (Farbton, Sättigung, Leichtigkeit) bietet eine überlegene Methode zum Definieren von Webfarben, insbesondere wenn manuelle Farbanpassungen erwartet. HSL repräsentiert Hue als Zahl (0-360), Sättigung und Leichtigkeit als Prozentsätze. Zum Beispiel:

 div {
  Hintergrundfarbe: HSL (155, 30%, 80%);
}
Nach dem Login kopieren

Dies erzeugt ein leichtes, gedämpftes Minzgrün. Um dunklen Text hinzuzufügen und die Konsistenz aufrechtzuerhalten, können wir die Leichtigkeit anpassen:

 div {
  Hintergrundfarbe: HSL (155, 30%, 80%);
  Farbe: HSL (155, 30%, 5%);
}
Nach dem Login kopieren

Dies schafft einen dunklen Text, der mit dem Hintergrund harmoniert. Für einen Call-to-Action-Taste können wir die Sättigung und eine geringfügig niedrigere Leichtigkeit erhöhen:

 .Call-to-action {
  Hintergrundfarbe: HSL (155, 80%, 60%);
  Farbe: HSL (155, 30%, 5%);
}
Nach dem Login kopieren

Weniger wichtiger Text könnte durch Reduzierung der Sättigung und zunehmender Helligkeit weiter beeinträchtigt werden:

 div {
  Hintergrundfarbe: HSL (155, 30%, 80%);
  Farbe: HSL (155, 30%, 5%);
}

.lesssimportant {
  Farbe: HSL (155, 15%, 40%);
}
Nach dem Login kopieren

HSLs Browserkompatibilität und deklarative Natur machen es RGB vorzuziehen. Bestehende RGB -Projekte oder Legacy -Browser -Unterstützungsbedenken könnten jedoch alternative Ansätze erfordern.

Verwendung von Farbbibliotheken

Zahlreiche Farbmanipulationsbibliotheken vereinfachen HSL-to-RGB/HEX-Conversions und bieten eine erweiterte Farbschemasgenerierung. Einige bemerkenswerte Beispiele sind:

  • Colvertize (Philipp Mildenberger): Leichte Bibliothek mit Umwandlung und Manipulationsfunktionen.
  • Farbe (Josh Junon): Fluent -Schnittstelle zur Farbdeklaration, Verarbeitung und Extraktion.
  • TinyColor (Brian Grinstead): Verarbeitet verschiedene Eingangstypen und bietet Dienstprogramme für die Schema.

CSS-Tricks bietet auch eine wertvolle Ressource für Farbformatkonvertierungen.

Das Farbgitterwerkzeug

Betrachten Sie für einen interaktiveren Ansatz das Farbgitterwerkzeug. Wie die Refactoring -UI hervorhebt, garantiert die mathematische Präzision allein keine optimalen Farbpaletten. Das Farbgitter, eine Reaktionsanwendung, die ich entwickelt habe, erzeugt eine Palette, die auf einem ausgewählten Farbton basiert und 100 Variationen in Sättigung und Leichtigkeit bietet. Benutzer können HEX -Codes oder CSS -benutzerdefinierte Eigenschaften direkt über die Schnittstelle kopieren.

RGB -Farbmanipulationstechniken

Die folgenden Techniken konzentrieren sich auf die RGB -Farbverarbeitung.

Bestimmung der RGB -Leichtigkeit

Hinweis: Diese Methode berücksichtigt nicht die inhärente Helligkeit eines Farbton (z. B. die höhere wahrgenommene Helligkeit von Yellow als lila). Es misst die Menge an schwarz oder weiß gemischtem. Die visuelle Bewertung bleibt für eine genaue Beurteilung der Leichtigkeit von entscheidender Bedeutung.

Die Leichtigkeit wird berechnet, indem die höchsten und niedrigsten RGB -Werte gemittelt und dann durch 255 geteilt werden:

 Funktion getLightnessofrgb (rgbstring) {
  const rgBintArray = (rgbstring.replace ( / / g, '') .lice (4, -1) .Split (','). MAP (e => parseInt (e)));
  const höchst = math.max (... rgbintArray);
  const niedrigst = math.min (... rgbintArray);
  Return (am höchsten am niedrigsten) / 2 /255;
}
Nach dem Login kopieren

RGB sättigen, ohne Leichtigkeit oder Farbton zu beeinflussen

Das Sättigung von RGB stellt Herausforderungen dar: Grautönen fehlen Farbtoninformationen, und das Erreichen reine Farbtöne erfordert 50% Leichtigkeit. Dieses Beispiel behält die Leichtigkeit bei:

Erhöhen Sie den Unterschied zwischen den niedrigsten und höchsten RGB -Werten. Die Aufrechterhaltung der Leichtigkeit erfordert gleiche Erhöhungen/Abnahmen der höchsten und niedrigsten Werte, die durch 0-255 Grenzen eingeschränkt werden. Der verfügbare Sättigungsbereich wird bestimmt:

  • Der Unterschied zwischen einem Grau (gleiche Leichtigkeit) und 255.
  • Der Unterschied zwischen einem Grau (gleiche Leichtigkeit) und 0.
 // ... (GetLightnessFrgb -Funktion von oben) ...

const Grayval = GetLightnessofrgb ('RGB (205, 228, 219)') * 255; // 217
const sättigungRange = math.round (math.min (255 - Grayval, Grayval)); // 38

// ... (Rest der Sättigungsberechnung) ...
Nach dem Login kopieren

Die Einstellung des mittleren Werts ist proportional zu den Änderungen der höchsten und niedrigsten Werte. Die vollständige Sättigungsfunktion ist ziemlich involviert und für die Kürze weggelassen, aber die Kernkonzepte werden vorgestellt.

Versteuerung von RGB -Farben

Die Entsättigung kehrt den Sättigungsprozess um und bewegt sich in Richtung eines grauen Wertes. Eine vollständige Entsättigung führt zu einem Grau mit gleichen RGB -Werten. Eine partielle Entsättigung beinhaltet proportional die Differenz zwischen den höchsten und niedrigsten RGB -Werten. Die vollständige Entsättigungsfunktion wird auch für die Kürze weggelassen.

Aufhellen und Verdunkelung von RGB gleich

Das Aufhellen beinhaltet proportional erhöhte RGB -Werte in Richtung 255, während die Verdunkelung proportional in Richtung 0 verringert. Beide Prozesse reduzieren die Sättigung allmählich. Die vollständigen Funktionen für das Aufhellen und Verdunkelung werden für die Kürze weggelassen.

Diese Funktionen bilden eine Grundlage für die Manipulation von RGB -Farben. HSL, Farbbibliotheken und das Farbnetzwerkzeug bieten jedoch je nach Ihren Anforderungen und Projektbeschränkungen alternative, potenziell effizientere Lösungen.

Das obige ist der detaillierte Inhalt vonVerwenden Sie JavaScript, um die Sättigung und Helligkeit von RGB -Farben anzupassen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Arbeiten mit GraphQL Caching Arbeiten mit GraphQL Caching Mar 19, 2025 am 09:36 AM

Wenn Sie kürzlich mit GraphQL gearbeitet oder seine Vor- und Nachteile überprüft haben, haben Sie zweifellos Dinge wie "GraphQL nicht unterstützen Caching" oder gehört

Machen Sie Ihren ersten Seltsamen -Sufle -Übergang Machen Sie Ihren ersten Seltsamen -Sufle -Übergang Mar 15, 2025 am 11:08 AM

Die Sufelte Transition -API bietet eine Möglichkeit, Komponenten zu beleben, wenn sie das Dokument eingeben oder verlassen, einschließlich benutzerdefinierter Svelte -Übergänge.

Show, Don ' Tell Show, Don ' Tell Mar 16, 2025 am 11:49 AM

Wie viel Zeit damit, die Inhaltspräsentation für Ihre Websites zu entwerfen? Wenn Sie einen neuen Blog -Beitrag schreiben oder eine neue Seite erstellen, denken Sie darüber nach

Aufbau einer Ethereum -App mit Redwood.js und Fauna Aufbau einer Ethereum -App mit Redwood.js und Fauna Mar 28, 2025 am 09:18 AM

Mit dem jüngsten Aufstieg von Bitcoins Preis über 20.000 USD und kürzlich von 30.000, dachte ich, es lohnt

Wie verwenden Sie CSS, um Texteffekte wie Textschatten und Gradienten zu erstellen? Wie verwenden Sie CSS, um Texteffekte wie Textschatten und Gradienten zu erstellen? Mar 14, 2025 am 11:10 AM

In dem Artikel werden CSS für Texteffekte wie Schatten und Gradienten verwendet, diese für die Leistung optimiert und die Benutzererfahrung verbessert. Es listet auch Ressourcen für Anfänger auf (159 Zeichen)

Was zum Teufel haben NPM -Befehle? Was zum Teufel haben NPM -Befehle? Mar 15, 2025 am 11:36 AM

NPM-Befehle führen verschiedene Aufgaben für Sie aus, entweder als einmalige oder als kontinuierlich ausgeführter Vorgang für Dinge wie das Starten eines Servers oder das Kompilieren von Code.

Erstellen Sie Ihr eigenes Bragdoc mit ELEITY Erstellen Sie Ihr eigenes Bragdoc mit ELEITY Mar 18, 2025 am 11:23 AM

Unabhängig davon, in welcher Phase Sie als Entwickler Sie befinden, haben die Aufgaben, die wir erledigen - ob groß oder klein - einen enormen Einfluss auf unser persönliches und berufliches Wachstum.

Verwenden wir (x, x, x, x), um über Spezifität zu sprechen Verwenden wir (x, x, x, x), um über Spezifität zu sprechen Mar 24, 2025 am 10:37 AM

Ich habe mich neulich mit Eric Meyer unterhalten und erinnerte mich an eine Eric Meyer -Geschichte aus meinen prägenden Jahren. Ich habe einen Blog -Beitrag über CSS -Spezifität geschrieben, und

See all articles