Dans cet article, nous explorerons une méthode pour transformer la couleur noire (#000) en n'importe quelle couleur souhaitée en utilisant uniquement des filtres CSS. Cette transformation implique une série de calculs appliqués à la couleur noire, aboutissant à la couleur cible sans affecter les autres couleurs présentes dans l'image ou l'élément.
<code class="js">function transformBlack(targetColor) { // Convert target color to HSL const targetHSL = ... // Implement HSL conversion here // Calculate filter values using SPSA algorithm const filterValues = ... // Implement SPSA algorithm here // Construct CSS filter string const filterString = "invert(" + filterValues[0] + "%) " + "sepia(" + filterValues[1] + "%) " + "saturate(" + filterValues[2] + "%) " + "hue-rotate(" + filterValues[3] + "deg) " + "brightness(" + filterValues[4] + "%) " + "contrast(" + filterValues[5] + "%)"; return filterString; }</code>
<code class="html"><p>Real pixel, color applied through CSS <code>background-color</code>:</p> <div class="pixel realPixel" style="background-color: #000"></div> <p>Filtered pixel, color applied through CSS <code>filter</code>:</p> <div class="pixel filterPixel" style="filter: invert(100%) sepia() saturate(10000%) hue-rotate(0deg) brightness(100%) contrast(100%);"></div> <p class="filterDetail"></p> <p class="lossDetail"></p></code>
<code class="js">const targetColor = ... // User-provided target color const filterString = transformBlack(targetColor); const filterPixel = document.querySelector(".filterPixel"); filterPixel.style.filter = filterString; const filterDetail = document.querySelector(".filterDetail"); filterDetail.innerHTML = filterString;</code>
En utilisant les filtres CSS, nous pouvons en toute transparence transformez le noir en n'importe quelle couleur donnée, permettant des possibilités de conception polyvalentes et une manipulation dynamique des couleurs uniquement via CSS. La fonction JavaScript fournie rationalise le processus, vous permettant d'appliquer facilement ces transformations dans vos projets.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!