Cet article détaille la création d'un effet de fond arc-en-ciel pour un site Web personnel, Potato. L'auteur, qui a pris une pause dans le travail pour poursuivre des projets personnels, explique le code JavaScript simple mais efficace derrière l'effet.
Le concept de base implique la cartographie de la position de défilement de l'utilisateur à la valeur de la teinte dans le modèle de couleur HSL (teinte, saturation, légère). Cela crée une transition de couleurs lisse lorsque l'utilisateur défile via le contenu de la page. L'extrait de code est fourni:
Exporter const userainbowbg = () => useEFFECT (() => { const cb = () => { const Viewportheight = window.innerheight constationheight = document.body.getBoundingClientRect (). Const VisionSperrotation = Math.min ( 3, ContentHeight / ViewporthWeight ) const de = 51 const progress = Window.Scrolly / (Viewportheight * fenêtre de la fenêtre) const h = (à partir de 360 * progrès)% 360 document.body.style.backgroundcolor = `HSL ($ {h} deg, 100%, 50%)` } window.addeventListener ('Scroll', CB, {passif: true}) return () => window.reMoveEventListener ('Scroll', CB) })
L'auteur contraste le modèle HSL avec RVB, mettant en évidence la nature intuitive de HSL pour ajuster la température et la luminosité de la couleur. Ils expliquent le choix de HSL pour maintenir une luminosité cohérente tout en changeant de teinte, un aspect clé de l'effet souhaité. Le décalage initial de la teinte ( const from = 51
) est expliqué comme un choix stylistique.
Les améliorations potentielles des performances sont discutées, notamment en évitant les appels redondants getBoundingClientRect
et en utilisant requestAnimationFrame
pour l'exécution. Cependant, l'auteur souligne l'importance de mesurer les performances avant l'optimisation.
L'article aborde également les limites de la nature non perceptuelle de HSL, reconnaissant que certaines couleurs entièrement saturées peuvent sembler plus sombres que d'autres. L'auteur prévoit de résoudre ce problème en utilisant un espace colorimétrique perceptuellement uniforme comme HSLUV dans les futures itérations.
Les considérations d'accessibilité sont mentionnées, en se concentrant sur la cécité des couleurs et la requête médiatique prefers-reduced-motion
. Bien que les tests initiaux n'aient montré aucun problème, l'auteur reconnaît la possibilité que l'animation d'arrière-plan puisse être considérée comme un mouvement et prévoit de poursuivre la recherche sur les utilisateurs.
L'auteur conclut en réfléchissant à l'inspiration nostalgique de la conception, visant une expérience utilisateur ludique mais fonctionnelle. Ils mentionnent également le plaisir qu'ils ont vécu lors du codage du projet après une période d'épuisement professionnel.
Notes de bas de page
- Le «K» dans CMYK signifie noir, pour éviter la confusion avec «B» représentant le bleu dans d'autres modèles de couleurs.
- La luminosité n'est pas parfaitement cohérente en raison des différences entre l'espace colorimétrique perceptuel et les représentations RVB / HSL.
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!

L'écosystème React nous offre de nombreuses bibliothèques qui se concentrent sur l'interaction de la glisser et de la chute. Nous avons react-dnd, react-beeufuly-dnd,

Il y a eu des choses merveilleusement interconnectées à propos des logiciels rapides ces derniers temps.

Je ne peux pas dire que j'utilise souvent le clip de fond. Je ne parierai presque presque jamais dans le travail CSS au jour le jour. Mais je me suis souvenu de cela dans un post de Stefan Judis,

L'animation avec des demandes de châssis devrait être facile, mais si vous n'avez pas lu de manière approfondie de la documentation de React, vous rencontrerez probablement quelques choses

Peut-être le moyen le plus simple d'offrir cela à l'utilisateur est un lien qui cible un ID sur l'élément. Tellement comme ...

Écoutez, je ne suis pas un expert GraphQL mais j'aime travailler avec. La façon dont elle expose les données en tant que développeur frontal est assez cool. C'est comme un menu de

Au cours de cette semaine, un Bookmarklet pratique pour inspecter la typographie, en utilisant Await pour bricoler comment les modules JavaScript s'importent, ainsi que Facebook & # 039; S

J'ai récemment remarqué un changement intéressant sur Codepen: sur le plan des stylos sur la page d'accueil, il y a un rectangle avec des coins arrondis se développant dans le dos.


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Dreamweaver CS6
Outils de développement Web visuel

Télécharger la version Mac de l'éditeur Atom
L'éditeur open source le plus populaire

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

DVWA
Damn Vulnerable Web App (DVWA) est une application Web PHP/MySQL très vulnérable. Ses principaux objectifs sont d'aider les professionnels de la sécurité à tester leurs compétences et leurs outils dans un environnement juridique, d'aider les développeurs Web à mieux comprendre le processus de sécurisation des applications Web et d'aider les enseignants/étudiants à enseigner/apprendre dans un environnement de classe. Application Web sécurité. L'objectif de DVWA est de mettre en pratique certaines des vulnérabilités Web les plus courantes via une interface simple et directe, avec différents degrés de difficulté. Veuillez noter que ce logiciel