CSS3D旋转木马效果+图片倒影特效

2023-10-10 22:30

本文主要是介绍CSS3D旋转木马效果+图片倒影特效,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

CSS3D效果图片倒影特效

预览

在这里插入图片描述

实现原理

主要应用到的属性是CSS3的3d视图(这个在前期的动画学习中有提到过,大家可以点开本专栏中的其他特效来看看!)和动画以及倒影特效属性:box-reflect
以下是倒影特效属性的属性值

  1. direction 定义方向,取值包括 above 、 below 、 left 、 right。
    above:
    指定倒影在对象的上边
    below:
    指定倒影在对象的下边
    left:
    指定倒影在对象的左边
    right:
    指定倒影在对象的右边

  2. offset定义反射偏移的距离,取值包括数值或百分比,其中百分比根据对象的尺寸进行确定。默认为0。
    用长度值来定义倒影与对象之间的间隔。可以为负值。用百分比来定义倒影与对象之间的间隔。可以为负值。

  3. mask-box-image定义遮罩图像,该图像将覆盖投影区域。如果省略该参数值,则默认为无遮罩图像。
    取值:
    none:无遮罩图像。
    linear-gradient:使用线性渐变创建遮罩图像。
    radial-gradient:使用径向(放射性)渐变创建遮罩图像。
    repeating-linear-gradient:使用重复的线性渐变创建背遮罩像。
    repeating-radial-gradient:使用重复的径向(放射性)渐变创建遮罩图像。

源码

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>3D照片墙</title><style>html,body {background: #000;}.container {position: relative;}.stage {position: relative;width: 800px;height: 240px;margin: 10% auto;perspective: 2000px;transform-style: preserve-3d;-webkit-box-reflect: below 10px linear-gradient(transparent, rgba(0, 0, 0, 0.5));}.stage .control {position: relative;width: 100%;height: 100%;transform-style: preserve-3d;transform: translateZ(-2000px) rotateY(50deg) rotateZ(0deg);animation: rotate 30s linear infinite;}.stage .control .imgWrap {position: absolute;width: 400px;height: 400px;top: 50%;left: 50%;transform: translate(-50%, -50%);transform-style: preserve-3d;}.stage .control .imgWrap .img {position: absolute;width: 500px;height: 400px;line-height: 400px;text-align: center;font-size: 120px;top: 0;left: 0;transform-style: preserve-3d;transform-origin: 50% 50% 0px;}.stage .control .imgWrap img {width: 100%;height: 100%;object-fit: cover;}.stage .control .imgWrap .img1 {transform: rotateY(80deg) translateZ(650px);}.stage .control .imgWrap .img2 {transform: rotateY(125deg) translateZ(650px);}.stage .control .imgWrap .img3 {transform: rotateY(170deg) translateZ(650px);}.stage .control .imgWrap .img4 {transform: rotateY(215deg) translateZ(650px);}.stage .control .imgWrap .img5 {transform: rotateY(260deg) translateZ(650px);}.stage .control .imgWrap .img6 {transform: rotateY(305deg) translateZ(650px);}.stage .control .imgWrap .img7 {transform: rotateY(350deg) translateZ(650px);}.stage .control .imgWrap .img8 {transform: rotateY(395deg) translateZ(650px);}@keyframes rotate {0% {transform: translateZ(-2000px) rotateY(0deg);}50% {transform: translateZ(-2000px) rotateY(-360deg);}100% {transform: translateZ(-2000px) rotateY(-720deg);}}</style>
</head><body><div class="container"><div class="stage"><div class="control"><div class="imgWrap"><div class="img img1"><img src="https://img0.baidu.com/it/u=2948507730,366864743&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=333"></div><div class="img img2"><img src="https://img0.baidu.com/it/u=3497736752,3489380243&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=333"></div><div class="img img3"><img src="https://img1.baidu.com/it/u=4176596244,2087050683&fm=253&fmt=auto&app=138&f=JPEG?w=600&h=400"></div><div class="img img4"><img src="https://img1.baidu.com/it/u=101343263,2767669969&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=333"></div><div class="img img5"><img src="https://img2.baidu.com/it/u=4101108356,2385848699&fm=253&fmt=auto&app=138&f=JPEG?w=600&h=400"></div><div class="img img6"><img src="https://img2.baidu.com/it/u=3184536438,1657368344&fm=253&fmt=auto&app=138&f=JPEG?w=658&h=411"></div><div class="img img7"><img src="https://img0.baidu.com/it/u=3641792508,719781706&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=281"></div><div class="img img8"><img src="https://img2.baidu.com/it/u=2645719931,682188402&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=333"></div></div></div></div></div>
</body></html>

倒影属性兼容性
在这里插入图片描述

这篇关于CSS3D旋转木马效果+图片倒影特效的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/183533

相关文章

Java实现Excel与HTML互转

《Java实现Excel与HTML互转》Excel是一种电子表格格式,而HTM则是一种用于创建网页的标记语言,虽然两者在用途上存在差异,但有时我们需要将数据从一种格式转换为另一种格式,下面我们就来看看... Excel是一种电子表格格式,广泛用于数据处理和分析,而HTM则是一种用于创建网页的标记语言。虽然两

C#中图片如何自适应pictureBox大小

《C#中图片如何自适应pictureBox大小》文章描述了如何在C#中实现图片自适应pictureBox大小,并展示修改前后的效果,修改步骤包括两步,作者分享了个人经验,希望对大家有所帮助... 目录C#图片自适应pictureBox大小编程修改步骤总结C#图片自适应pictureBox大小上图中“z轴

使用Python将长图片分割为若干张小图片

《使用Python将长图片分割为若干张小图片》这篇文章主要为大家详细介绍了如何使用Python将长图片分割为若干张小图片,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. python需求的任务2. Python代码的实现3. 代码修改的位置4. 运行结果1. Python需求

vue解决子组件样式覆盖问题scoped deep

《vue解决子组件样式覆盖问题scopeddeep》文章主要介绍了在Vue项目中处理全局样式和局部样式的方法,包括使用scoped属性和深度选择器(/deep/)来覆盖子组件的样式,作者建议所有组件... 目录前言scoped分析deep分析使用总结所有组件必须加scoped父组件覆盖子组件使用deep前言

VUE动态绑定class类的三种常用方式及适用场景详解

《VUE动态绑定class类的三种常用方式及适用场景详解》文章介绍了在实际开发中动态绑定class的三种常见情况及其解决方案,包括根据不同的返回值渲染不同的class样式、给模块添加基础样式以及根据设... 目录前言1.动态选择class样式(对象添加:情景一)2.动态添加一个class样式(字符串添加:情

基于Python实现PDF动画翻页效果的阅读器

《基于Python实现PDF动画翻页效果的阅读器》在这篇博客中,我们将深入分析一个基于wxPython实现的PDF阅读器程序,该程序支持加载PDF文件并显示页面内容,同时支持页面切换动画效果,文中有详... 目录全部代码代码结构初始化 UI 界面加载 PDF 文件显示 PDF 页面页面切换动画运行效果总结主

React实现原生APP切换效果

《React实现原生APP切换效果》最近需要使用Hybrid的方式开发一个APP,交互和原生APP相似并且需要IM通信,本文给大家介绍了使用React实现原生APP切换效果,文中通过代码示例讲解的非常... 目录背景需求概览技术栈实现步骤根据 react-router-dom 文档配置好路由添加过渡动画使用

使用 Python 和 LabelMe 实现图片验证码的自动标注功能

《使用Python和LabelMe实现图片验证码的自动标注功能》文章介绍了如何使用Python和LabelMe自动标注图片验证码,主要步骤包括图像预处理、OCR识别和生成标注文件,通过结合Pa... 目录使用 python 和 LabelMe 实现图片验证码的自动标注环境准备必备工具安装依赖实现自动标注核心

使用Python实现生命之轮Wheel of life效果

《使用Python实现生命之轮Wheeloflife效果》生命之轮Wheeloflife这一概念最初由SuccessMotivation®Institute,Inc.的创始人PaulJ.Meyer... 最近看一个生命之轮的视频,让我们珍惜时间,因为一生是有限的。使用python创建生命倒计时图表,珍惜时间

使用Vue.js报错:ReferenceError: “Vue is not defined“ 的原因与解决方案

《使用Vue.js报错:ReferenceError:“Vueisnotdefined“的原因与解决方案》在前端开发中,ReferenceError:Vueisnotdefined是一个常见... 目录一、错误描述二、错误成因分析三、解决方案1. 检查 vue.js 的引入方式2. 验证 npm 安装3.