Применить режим наложения только к тени - PullRequest
0 голосов
/ 16 октября 2018

Можно ли смешать только только тень элемента с цветом перекрываемого элемента?

Например: у меня один элемент перекрывает другой.Элемент сверху имеет светло-серую тень.Элемент ниже черный.Я не хочу, чтобы какое-либо смешение применялось к какому-либо из самих элементов, но хочу, чтобы тень наложенного элемента сливалась с цветом элемента ниже, создавая темный серый цвет, где тень падает на перекрывающийся элемент.

Если бы я хотел применить эффект ко всему элементу, включая тень, это можно сделать с помощью режима смешивания-смешивания: умножение.Я действительно хочу использовать микс-режим смешивания только для тени - это можно сделать?

1 Ответ

0 голосов
/ 16 октября 2018

Вы не можете сделать это, но то, что вы можете сделать, это применить тень к псевдоэлементу того же размера, который использует режим смешанного смешивания.

.above {
	position: absolute;
	background: green;
	width: 100px;
	height: 100px;
}

.above::before {
	box-shadow: 3pt 3pt 0 0 dodgerblue;
	mix-blend-mode: multiply;
  content: " ";

	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
}

.below {
	position: absolute;
	top: 50px;
	left: 50px;

	width: 100px;
	height: 100px;

	background: red;
}
<div class="below">
</div>
<div class="above">
</div>

Я использовал эти цвета в иллюстративных целях, но вы можете заменить их на свои.

...