С Новым Годом! С Новым Годом!
Blog. Just Blog

Эффект маски-градиента для изображения

Версия для печати Добавить в Избранное Отправить на E-Mail | Категория: Web-мастеру и не только | Автор: ManHunter
Эффект маски-градиента для изображения
Эффект маски-градиента для изображения

CSS-маски с градиентами - это мощный инструмент современных браузеров. Всего несколько строк кода позволяют превратить обычное изображение в произведение искусства: создать эффект виньетирования, плавного растворения, фокусного пятна или даже сложной геометрической формы. И для этого не нужны ни Photoshop, ни дополнительные скрипты.

CSS-маски обладают несколькими важными преимуществами. Во-первых, они рендерятся непосредственно браузером, не требуя загрузки внешних ресурсов или дополнительных HTTP-запросов. Во-вторых, маски автоматически масштабируются, а с помощью медиа-запросов можно легко адаптировать их параметры для разных устройств. Не менее важны вопросы доступности и SEO: маски не влияют на семантику контента (что сохраняет SEO-оптимизацию), текст остаётся доступным для скринридеров, а клавиатурная навигация работает в обычном режиме.

Начнем с верстки. Она специально сделана элементарной, но безупречной с технической точки зрения: валидной, кроссбраузерной, синтаксически корректной. Чтобы не тратить время на отладку разметки.
  1. <div class="container">
  2.     <img src="mask.jpg" alt="Маска" />
  3.     <div>Маска</div>
  4. </div>
В CSS стиль создает мягкую тень под контейнером, добавляется стандартное свойство для браузеров на WebKit (Chrome, Safari, Edge), а для современных браузеров используется mask-image.
  1. <style type="text/css">
  2. .container {
  3.     width600px;
  4.     height450px;
  5.     positionrelative;
  6.     border1px solid #909090;
  7.     transitionbox-shadow 0.3s ease;
  8.     background#000000;
  9. }
  10.  
  11. .container img {
  12.     width100%;
  13.     height100%;
  14.  
  15.     /* Маска с радиальным градиентом */
  16.     -webkit-mask-imageradial-gradient(
  17.         circle at 90110%,
  18.         rgba(2552552550.10%,
  19.         rgba(000130%
  20.     );
  21.     mask-imageradial-gradient(
  22.         circle at 90110%,
  23.         rgba(2552552550.10%,
  24.         rgba(000130%
  25.     );
  26. }
  27.  
  28. .container div {
  29.     font-size40px;
  30.     font-weightbold;
  31.     font-family'Arial';
  32.     positionabsolute;
  33.     bottom10px;
  34.     right20px;
  35.     color#FFFFFF;
  36. }
  37. </style>
Получается вот такой визуальный результат. Изображение появляется из почти полной прозрачности в правом нижнем углу и постепенно становится полностью видимым к краям. Это создает эффект, направляющий к ключевой точке.

Эффект маски-градиента для изображения
Эффект маски-градиента для изображения

Готовый пример можно посмотреть на демонстрационной странице. Пример работает во всех современных браузерах, адаптирован под мобильные устройства.

Поделиться ссылкой ВКонтакте
Просмотров: 193 | Комментариев: 0

Комментарии

Отзывы посетителей сайта о статье
Комментариeв нет

Добавить комментарий

Заполните форму для добавления комментария
Имя*:
Текст комментария (не более 2000 символов)*:

*Все поля обязательны для заполнения.
Комментарии, содержащие рекламу, ненормативную лексику, оскорбления и т.п., а также флуд и сообщения не по теме, будут удаляться. Нарушителям может быть заблокирован доступ к сайту.
Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2026
При использовании материалов ссылка на сайт обязательна
Время генерации: 0.07 сек. / MySQL: 2 (0.0036 сек.) / Память: 4.5 Mb
Наверх