三棱锥四面体html css,CSS transform属性实现旋转的四面体
原创声明
本文系作者辛苦码字所得,欢迎分享和转载,但请在明显位置注明作者的如下信息:
笔名:来碗鸡蛋面
简书主页:https://www.jianshu.com/u/4876275b5a73
邮箱:job_tom@foxmail.com
CSDN ID:tom_wong666
本文简单阐述了如何实现旋转的四面体效果,读者需要具备基本的HTML,CSS和JS基础知识。
一,基本概念:
1,三维坐标轴,如下图:
三维坐标
2,透视距离,如上图:
perspective:npx:透视距离为npx。
3,CSS的3D转换属性
transform:rotateX(ndeg):绕X轴旋转n度。如下图:
X轴旋转示意
transform:rotateY(ndeg):绕Y轴旋转n度。如下图:
Y轴旋转示意
transform:rotateZ(ndeg):绕Z轴旋转n度。如下图:
Z轴旋转示意
二,基本思路
用四张尺寸相同的图片以绝对定位重叠在一起,然后以4*90度旋转拼成一个四面体,接着用一个父元素包裹四张图片,旋转父元素,实现四面体的旋转。
三,代码实现
1,HTML部分,注意这里要对cs和js文件做引用,并定义好元素间的关系。
2,CSS部分,这里拼成了一个四面体,关键点见代码注释。
.banner{
margin-top:250px;
margin-left:350px;
width:960px;
height:200px;
perspective:300px;/*定义视距*/
}
.banner #stage{/*父元素*/
position:relative;
width:960px;
height:200px;
transform-style:preserve-3D;/*定义样式为3D*/
transition:all 1s;
transform:rotateX(0deg);/*父元素初始旋转为0度*/
}
.banner #stage #img1{/*图1*/
width:960px;
height:200px;
position:absolute;
transform:translateZ(100px);/*图片1前移100像素,未旋转*/
transition:all 1s;
}
.banner #stage #img2{/*图2*/
width:960px;
height:200px;
position:absolute;
transition:all 1s;
transform:rotateX(-90deg) translateZ(100px);
/*图片2前移100像素,X轴旋转-90度*/
}
.banner #stage #img3{/*图3*/
width:960px;
height:200px;
position:absolute;
transition:all 1s;
/*图片3前移100像素,X轴旋转-180度*/
}
.banner #stage #img4{/*图4*/
width:960px;
height:200px;
position:absolute;
transition:all 1s;
transform:rotateX(-270deg) translateZ(100px);
/*图片2前移100像素,X轴旋转-270度*/
}
3,JS部分,这里加了一个定时器,实现父元素匀速往复旋转。
"use strict"
let stage=document.getElementById("stage");
let imgs=stage.querySelectorAll(".light #stage>img");
(function(){
let k=90;
setInterval((function task(){
stage.style.transform=`rotateX(${k}deg)`;
k+=90;
}),1000)
})()
三棱锥四面体html css,CSS transform属性实现旋转的四面体相关推荐
- 巧用左手判断CSS中transform:rotate旋转方向
在制作网页的过程中,我们会经常让元素进行旋转,来形成一定的立体感,或是配合关键帧(@keyframe)做成动画特效,使得页面更加美观. 在css3中我们可以借助transform:rotate();来 ...
- 用CSS实现3D魔方动画旋转
一.3D魔方的实现 这里呢主要是用我们的div标签来对魔方的各个面及各个块进行实现,先上一个主体的html代码吧 <div id="box"><!-- 各个面 - ...
- CSS transform属性的简单应用——双开门动画效果
1.效果演示 CSS transform属性有许多效果,平移.旋转.缩放等. 这里简单应用平移效果,实现双开门动画,以下为效果图. 2.设计思路 设置一张居中的需要隐藏的底图. 设置封面图,平分成左右 ...
- CSS 与 地图可视化 三棱锥 (九)
地图可视化来到Css 篇章了,这次一口气是兼容了7个地图引擎, 这次直接上包应用 类库兼容地图引擎有 mapbox maptalks arcgis 4 leaflet openlayer 高德地图 百 ...
- 三分钟快速了解CSS Display的属性:Block,Inline,Inline-Block
文章目录 三分钟快速了解CSS Display的属性:Block,Inline,Inline-Block Block Inline Inline-block Block,Inline,Inline-B ...
- css让div旋转,CSS3 transform 属性 旋转 div 元素
div { transform:rotate(7deg); -ms-transform:rotate(7deg); /* IE 9 */ -moz-transform:rotate(7deg); /* ...
- html5 3d原理,使用css创建三角形 使用CSS3创建3d四面体原理及代码(html5实践)
今天读了篇关于如何使用css3创建3d四面体的文章,觉的相当不错,所以拿出来和大家分享一下. 首先要和大家分享的是,如何使用div+css创建三角形.在这里我先把相关代码粘贴出来,然后再为大家讲解原理 ...
- CSS position(定位)属性
关于CSS position,来自MDN的描述: CSS position属性用于指定一个元素在文档中的定位方式.top.right.bottom.left 属性则决定了该元素的最终位置. 然后来看看 ...
- CSS 动画相关属性动态实例大全(82种),2023年祝福第二弹(送你一只守护兔)(下),守护兔源代码免费下载
2023年春节祝福第二弹--送你一只守护兔(下) CSS 动画相关属性动态实例大全(82种).守护兔源代码免费下载 本文目录: 五.CSS3 动画相关属性实例大全 (1).CSS3的动画基本属性 (2 ...
最新文章
- RxJava初入学习(一)之Gifts-for-designers
- CSP:CSP认证考试:202104-1(灰度直方图)满分答案,Java版
- 读书笔记-沙漠里的细水微光
- ubuntu配置vnc访问
- 抖音数据统计_26万条抖音数据背后的推荐逻辑以及严重失调的男女比例
- show部分书...
- LeetCode 628. 三个数的最大乘积
- C++ 预处理与宏相关编程(#,##等等)
- vue-cli3.0使用及部分配置详解
- MongoDB 运行状态、性能监控,分析
- jQuery Callback 方法
- <<游戏设计艺术>>笔记
- filenet java配置_技术的力量:IPFS新贵Filenet缘何采用Podt
- USB | 1. 技术演进及测试概览
- java自习_java自习重点及自测
- Jmeter 录制手机脚本
- c++中“箭头(-)”和“点号(.)”操作符的区别 .
- 为什么用线程池?解释下线程池参数? -- Java面试
- 关于*.md文件打开的问题及图片丢失
- 如何获取屏幕保护程序的密码
热门文章
- P1444 [USACO1.3]虫洞 wormhole,新手向超详细讲解(搜索、判环、拆点、好题)
- P1276 校门外的树(增强版)(线段树)(校门三部曲)难度⭐⭐⭐
- 从数组中取出m个数相加的结果(组合)
- python如何使用ppip安装xlwt_Python中xlrd和xlwt模块使用方法
- 数据库实例(统计最高分学生信息,不及格率等等)
- 解决ajax.open方法失效问题
- CoordinatorLayout 之深入理解
- 至2019年全球Hadoop市场年复合增长率将达53%
- SortedDictionaryTKey, TValue 类 表示根据键进行排序的键/值对的集合。
- 北大BBS2008年毕业生晒工资