魔方变换

*问题描述:想要实现一个3D魔方,魔方不停的在旋转,且魔方每个面都由9个部分组成,每个部分也有一定的动画效果

具体的要求请参见MOOC北京林业大学(Web前端开发课程)

*HTML代码+JS代码

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>魔方测试</title><link type="text/css" rel="stylesheet" href="webstyle.css"></head>
<body><div id="container"><div class="mfbox"><div class="box-sheet top"></div><div class="box-sheet bottom"></div><div class="box-sheet left"></div><div class="box-sheet right"></div><div class="box-sheet font"></div><div class="box-sheet behind"></div></div></div><script>var lists=document.querySelectorAll(".box-sheet");
for(let index =0;index< lists.length;index++){for(var row=0;row<3;row++){for(var col=0;col<3;col++){//添加行列var imgCont=document.createElement("div");var heights=100*row;var widths=100*col;imgCont.style.cssText="width:100px;left:"+widths+"px"+";height:100px;top:"+heights+"px;"+"border:1px solid white;box-sizing: border-box;position:absolute;background-image:url(img/a"+index+".jpg);max-width:300px;max-height:300px;background-size:300px 300px;"; lists[index].appendChild(imgCont);imgCont.style.backgroundPositionX=-col*100+"px";imgCont.style.backgroundPositionY=-row*100+"px";           }}
}</script></body>
</html>

*CSS代码(使用了animation,动画自定义的)

* {margin: 0px;padding: 0px;}
#container {width: 300px;height: 300px;margin: 0px auto;margin-top: 150px;perspective: 3000px;}
.mfbox {width: 300px;height: 300px;position: relative; transform-style: preserve-3d;animation: self-rotate 4s ease-in-out  infinite ;}
@keyframes self-rotate {0%{transform:rotateX(0deg) rotateY(0deg);}100%{transform: rotateX(360deg) rotate(360deg) ;}}
.box-sheet {width: 300px;height: 300px;position: absolute;transform-style: preserve-3d;}
.box-sheet div:nth-child(1){animation: boxmove 10s linear infinite 0s;
}
.box-sheet div:nth-child(2){animation: boxmove 10s linear infinite 0.5s;
}
.box-sheet div:nth-child(3){animation: boxmove 10s linear infinite 1s;
}
.box-sheet div:nth-child(4){animation: boxmove 10s linear infinite 1.5s;
}
.box-sheet div:nth-child(5){animation: boxmove 10s linear infinite 2s;
}
.box-sheet div:nth-child(6){animation: boxmove 10s linear infinite 2.5s;
}
.box-sheet div:nth-child(7){animation: boxmove 10s linear infinite 3s;
}
.box-sheet div:nth-child(8){animation: boxmove 10s linear infinite 3.5s;
}
.box-sheet div:nth-child(9){animation: boxmove10s linear infinite 4s;
}@keyframes boxmove{0%{transform: rotateZ(0deg) translateZ(0px) scale(1);}20%{transform: rotateZ(180deg) translateZ(300px) scale(1);}80%{transform: rotateZ(180deg) translateZ(3000px) scale(1);}100%{transform: rotateZ(0deg) translateZ(0px) scale(1);}
}.top{transform: translateZ(150px) ;
}.bottom{transform: translateZ(-150px) ;
}
.left{transform: translateX(-150px) rotateY(90deg) ;
}
.right{transform: rotate(180deg);transform: translateX(150px) rotateY(90deg) ;
}
.font{transform: rotate(180deg);transform: translateY(150px) rotateX(90deg) ;
}
.behind{transform: translateY(-150px) rotateX(90deg) ;
}

简单前端页面设计(JS+CSS)——魔方变换相关推荐

  1. 【HTML响应式项目】成人教育官网前端页面(HTML+CSS+JS实现三端适应)

    项目源码已上传至码云仓库:云南农业职业技术学院/HTML响应式成人教育官网前端页面(HTML+CSS+JS实现) 项目演示地址:成人教育网 AAP端下载地址:成人教育网APP端.apk-互联网文档类资 ...

  2. Web前端页面设计流程及注意事项,谨记!

    每天我们打开电脑,看到各种各样的web前端页面.你知道他们是如何制作的吗?为了让页面更具有规范性,让使用者更加方便,在制作页面过程中必须遵循一定的设计流程.在这里就为大家详细介绍一下制作一个Web前端 ...

  3. 因分辨率变化html页面布局跳动_Web前端页面设计流程及注意事项,谨记!

    每天我们打开电脑,看到各种各样的web前端页面.你知道他们是如何制作的吗?为了让页面更具有规范性,让使用者更加方便,在制作页面过程中必须遵循一定的设计流程.在这里就为大家详细介绍一下制作一个Web前端 ...

  4. 实现一个博客系统(前端页面设计)

    博客系统的四个页面展示效果: 注意CSS有一些隐式规定,下面代码的状态:上下边距不是50px(不是两者边距之和,而是他们的最大值);上下边距塌方问题,况且只在垂直方向有,水平方向就是他们的和:况且他的 ...

  5. 新闻发布系统界面 html源码,新闻发布系统的前端页面设计

    [实例简介] 这个一个简单的新闻发布系统的前端页面,基本上功能都有. [实例截图] [核心代码] kindeditor └── kindeditor ├── jsp │   ├── demo.jsp ...

  6. 网站建设页面设计中CSS正确书写

    转自: http://blog.onlygrape.com/webdesign-css/293 1.css 字体简写规则 当使用css定义字体时你可能会这样做: font-size: 1em; lin ...

  7. eclipse插件开发(三) 简易4页签编辑器(源码 | 设计 | JS | CSS)配色修复JS多行注释问题

    本此主要修复了修改html/js/css后,实时刷新设计界面,并且修复了当js多行注释时,修复注释内容后变成黑色字体的bug,达到基本上能在实际应用的效果 源码 https://download.cs ...

  8. html htc控件详解,*.HTC 文件的简单介绍-网页设计,HTML/CSS

    今天在论坛上面看到有些兄弟不知道htc是什么东西.小生在这里稍微说一下. 从5.5版本开始,internet explorer(ie)开始支持web 行为的概念.这些行为是由后缀名为.htc的脚本文件 ...

  9. web前端页面设计 海贼王动漫网页作业 HTML+CSS简单的学生网页作业源码

最新文章

  1. Oracle不能在本地计算机启动,Windows 不能在本地计算机启动 OracleDBConsoleorcl的问题解决方法...
  2. iOS-ARC_Xcode检测循环引用
  3. 某微信公众号2019 SAP模块精华帖汇总
  4. Ajax (部分二:prototype.js代码)总结页面向后台传Form值、单个值和后台向前台传一个或是一组值...
  5. go build和go install的区别
  6. PMCAFF网站和App改版啦!
  7. 设置input标签禁用_Vue造轮子 | input组件
  8. java8 64x下载_jdk8 u102 64位下载
  9. php远程文件无法编辑,“脚本编辑器”远程文件编辑漏洞
  10. 如何在一台电脑上使用两个git@osc的账号进行操作
  11. 基于JSP+Servlet+MySQL的在线问卷调查系统(附论文)
  12. GetClientRect、ScreenToClient、GetWindowRect、ClientToScreen、MoveWindow用法总结
  13. 计算机考研 外部排序,2021考研408数据结构基础知识点:外部排序
  14. [jzoj 4722] [NOIP2016提高A组模拟8.21] 跳楼机 解题报告 (spfa+同余)
  15. MFC/VC++中怎样将一个位图添加到数据库中并且将其读出来到指定的Picture控件上
  16. 易语言源码 VX多开 思路+源码
  17. 推荐10个Vue 3.0开发的开源前端项目
  18. python-import自己的写的文件
  19. JavaScript 记时(Timing)
  20. png 微软ppt 透明度_挖到一个宝藏级的PPT素材网站,哭着五星好评,免费又实用...

热门文章

  1. 科技让生活更健康:洗/干衣机迎来智能化转型升级
  2. IP地址划分及子网掩码
  3. java mp3 信息_java 读取 mp3 信息
  4. glide-transformations 使用笔记
  5. Windows命令-目录操作-删除目录-rd/rmdir
  6. JAVA集合-线程安全
  7. 计算机应用基础北京报名流程,北京市自学考试计算机应用基础一年考几次
  8. 夜神模拟器文件导出方法
  9. mybatis-plus数据安全保护 加密解密
  10. java OpenCV实现扫描仪图片倾斜矫正