Динамическое изменение цвета текста на основе цветового контраста фона с помощью JS 😎



Слишком маленькая статья, чтобы её переводить, поэтому скидываю тебе оригинал, дружок, думаю ты без проблем всё поймёшь ❤️



https://gomakethings.com/dynamically-changing-the-text-color-based-on-background-color-contrast-with-vanilla-js/



Для ленивых даю функцию, которая решает это:



function getContrastYIQ(hexcolor){

const r = parseInt(hexcolor.substr(0, 2), 16);

const g = parseInt(hexcolor.substr(2, 2), 16);

const b = parseInt(hexcolor.substr(4, 2), 16);



const yiq = (r * 299 + g * 587 + b * 114) / 1000;



return yiq >= 128 ? 'black' : 'white';

}




Тыкательный пример: https://codepen.io/StephenFlannery/pen/byPPGj