本演示关键使用了几个新型的CSS属性(background-blend-mode
, mix-blend-mode
, 和 filter
),利用这些属性,我们可以让同一张图片呈现出各种不可思议的神奇效果。
下面大多数的效果图中,背景图片源background-image url通常会反复使用数次,同时利用CSS混合模式 (multiply
, overlay
, screen
, difference
等)进行处理。
在有一些效果中,使用了一下CSS filter
属性进一步处理图片,比如 grayscale()
, brightness()
, 和 contrast()
等可以让图片呈现出更好的效果。
制作这个演示时,我们首先让这些图片呈现出原始面貌,然后使用CSS @supports
来检测某种CSS属性是否在你的浏览器中受支持。然后才施加这些效果。
本演示的源代码可以在GitHub上下载。
In each of these CSS/SCSS snippets, replace photo.jpg
with the URL of the image you are using.
<div class="emboss-effect">
<img width="" height="" src="photo.jpg" alt="">
</div>
In this implementation, the <img>
tag acts as a placeholder, setting the correct aspect ratio for the effect while being visually hidden with CSS. Setting values for the width
, height
, and alt
attributes is recommended.
To try out any effect for yourself, click on the CodePen button.