Я пытаюсь добавить переход к эффекту маски, как в этом примере:
https://bricksforge.io/
Я добавил переход как на со- Pattern__overlay, где находится маска, и в :root, где находятся переменные CSS, обновляемые при перемещении мыши.
HTML
CSS
:root {
--mouse-x: 0px;
--mouse-y: 0px;
transition: --mouse-x 0.3s ease, --mouse-y 0.3s ease;
}
.co-pattern__overlay{
position: absolute;
top: 0px;
right: 0px;
bottom: 0px;
left: 0px;
width: 100%;
height: 100%;
pointer-events: none;
background-color: #0f1218;
z-index: 1;
transition: all 0.5s ease;
}
.co-pattern__overlay{
mask: radial-gradient( circle at var(--mouse-x) var(--mouse-y), transparent 20px, black 350px );
-webkit-mask: radial-gradient( circle at var(--mouse-x) var(--mouse-y), transparent 20px, black 350px );
}
JS
const cursor = document.querySelector('.hero');
cursor.addEventListener('mousemove', (event) => {
const rect = cursor.getBoundingClientRect();
const mouseX = ((event.clientX - rect.left) / rect.width) * 100 + '%';
const mouseY = ((event.clientY - rect.top) / rect.height) * 100 + '%';
document.documentElement.style.setProperty('--mouse-x', mouseX);
document.documentElement.style.setProperty('--mouse-y', mouseY);
});
Подробнее здесь: https://stackoverflow.com/questions/793 ... on-to-mask
Как добавить переход CSS к маске ⇐ Javascript
Форум по Javascript
1736993866
Anonymous
Я пытаюсь добавить переход к эффекту маски, как в этом примере:
https://bricksforge.io/
Я добавил переход как на со- Pattern__overlay, где находится маска, и в :root, где находятся переменные CSS, обновляемые при перемещении мыши.
HTML
CSS
:root {
--mouse-x: 0px;
--mouse-y: 0px;
transition: --mouse-x 0.3s ease, --mouse-y 0.3s ease;
}
.co-pattern__overlay{
position: absolute;
top: 0px;
right: 0px;
bottom: 0px;
left: 0px;
width: 100%;
height: 100%;
pointer-events: none;
background-color: #0f1218;
z-index: 1;
transition: all 0.5s ease;
}
.co-pattern__overlay{
mask: radial-gradient( circle at var(--mouse-x) var(--mouse-y), transparent 20px, black 350px );
-webkit-mask: radial-gradient( circle at var(--mouse-x) var(--mouse-y), transparent 20px, black 350px );
}
JS
const cursor = document.querySelector('.hero');
cursor.addEventListener('mousemove', (event) => {
const rect = cursor.getBoundingClientRect();
const mouseX = ((event.clientX - rect.left) / rect.width) * 100 + '%';
const mouseY = ((event.clientY - rect.top) / rect.height) * 100 + '%';
document.documentElement.style.setProperty('--mouse-x', mouseX);
document.documentElement.style.setProperty('--mouse-y', mouseY);
});
Подробнее здесь: [url]https://stackoverflow.com/questions/79360198/how-to-add-css-transition-to-mask[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия