CSS3,transform3D立体可拖拽正方体实现原理
---恢复内容开始---
今天咱们来说一下,CSS中的3D效果
.如果你把transform真的掌握的和纯熟的话,就可以直接通过CSS做出很多很炫酷的效果,甚至.轮播图和选项卡都可以通过CSS来做,咱们明天就说如何运用CSS来做轮播图,大家记得看哦!
很好,话不多说,翠花'上代码':
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>ITandYT</title>
<style type="text/css">
#box{
width: 200px;
height: 200px;
margin: 200px auto;
position: relative; /*给父级设置3d空间*/
transform-style: preserve-3d;
/*设置景深*/
/*perspective: 800px;*/
transform: perspective(8000px) rotateY(-60deg) rotateX(30deg);
} #box div{
width: 100%;
height: 100%;
border: 1px solid black;
position: absolute;
opacity: 0.7;
}
/*前面*/
#box div:nth-child(1){
background: palegreen;
transform: translateZ(100px);
}
/*后面*/
#box div:nth-child(2){
background: palevioletred;
transform: translateZ(-100px);
}
/*左面*/
#box div:nth-child(3){
background: plum;
transform: translateX(-100px) rotateY(90deg);
}
/*右面*/
#box div:nth-child(4){
background: peru;
transform: translateX(100px) rotateY(90deg);
}
/*上面*/
#box div:nth-child(5){
background: palegoldenrod;
transform: translateY(-100px) rotateX(90deg);
}
/*下面*/
#box div:nth-child(6){
background: paleturquoise;
transform: translateY(100px) rotateX(90deg);
}
img{
width:200px;
height: 100%;
}
</style>
</head>
<body>
<div id="box">
<div><img src="010.jpg"/></div>
<div><img src="010.jpg"/> </div>
<div><img src="010.jpg"/> </div>
<div><img src="010.jpg"/> </div>
<div><img src="010.jpg"/> </div>
<div><img src="010.jpg"/> </div>
</div> <script type="text/javascript"> // 获取元素
var oDiv = document.querySelector('#box');
var x = 30;
var y = -60;
oDiv.onmousedown = function(ev){
var event = window.event || ev;
var disY = event.clientX - y;
var disX = event.clientY - x; document.onmousemove = function(ev){
var event = window.event || ev;
// 计算偏移角度
x = event.clientY - disX;
y = event.clientX - disY;
oDiv.style.transform = 'perspective(800px) rotateY('+y+'deg) rotateX('+x+'deg)'
}
document.onmouseup = function(){
document.onmousemove = null;
}
return false;
} </script>
</body>
</html>
图片没有的话就其他的代替哦!
是不是很简单,你学会了吗???没学会也不要紧,直接把本上神的复制走吧!绝对能用哦!
纯熟原创,禁止未经允许私自转载!
---恢复内容结束---
CSS3,transform3D立体可拖拽正方体实现原理的更多相关文章
- HTML5图片拖拽预览原理及实现
一.前言 这两天恰好有一位同事问我怎样做一个图片预览功能.作为现代人的我们首先想到的当然是HTML5啦,其实HTML5做图片预览已经是一个老生常谈的问题了.我在这里就简单说说其中相关的一些东西,当然会 ...
- jquery图片查看插件,支持旋转、放大、缩小、拖拽、缩略图(仿qq图片查看)
最近做了一个jquery图片查看的插件,目的是能精确查看图片的详情,插件支持图片旋转.放大.缩小.拖拽.缩略图显示,界面效果是按照window的qq查看图片功能写的,当然不尽相同. 具体功能: 1. ...
- 拖拽对DOM的影响
前一段时间公司要对上传列表中多文本输入框添加富文本编辑功能,所以最初的想法是引入富文本编辑器插件,对每个多文本输入框实例化一次.但是上传列表还有一个可以拖拽排序的功能,在初次实例化以后,再拖拽元素就会 ...
- 这交互炸了(四) :一分钟让你拥有微信拖拽透明返回PhotoView
本文已授权微信公众号:鸿洋(hongyangAndroid)原创首发 <交互炸了>或许是一系列高端特效教程, 文中会介绍一些比较炫酷的特效,以及实现的思路.特效实现本身也许不会有太大的难度 ...
- 【转】IE沙箱拖拽安全策略解析
https://xlab.tencent.com/cn/2015/12/17/ie-sandbox-drop-security-policy/ IE沙箱逃逸是IE浏览器安全研究的一个重要课题,其中有一 ...
- 自由拖拽DIV实现
最近在做的项目有个效果是要实现div随意拖拽改变大小,前端框架选择的是vue.js,UI用的是element,拖拽效果可以很简单的实现,但是在拖拽过程中发现会对其他元素实现全选效果,因此最后选择使用元 ...
- 一步一步实现JS拖拽插件
js拖拽是常见的网页效果,本文将从零开始实现一个简单的js插件. 一.js拖拽插件的原理 常见的拖拽操作是什么样的呢?整过过程大概有下面几个步骤: 1.用鼠标点击被拖拽的元素 2.按住鼠标不放,移动鼠 ...
- Android学习系列(12)--App列表之拖拽GridView
根据前面文章中ListView拖拽的实现原理,我们也是很容易实现推拽GridView的,下面我就以相同步骤实现基本的GridView拖拽效果. 因为GridView不用做分组处理,代码处理起来 ...
- 原生js简单实现拖拽效果
实现弹窗拖拽效果的原理是:按下鼠标并移动——拖拽移动物体,抬起鼠标——停止移动.主要触发三个事件:onmousedown.onmousemove以及onmouseup: 首先搭建结构:一个宽350px ...
随机推荐
- Eclipse右键增加在浏览器打开
https://github.com/samsonw/OpenExplorer/downloads 放在 \eclipse\plugins 下,右键项目就多一个 以后打开项目文件夹就方便了.
- 常见浏览器hack汇总
1.背景渐变bug: ①.ie8 ie9:用滤镜的方式解决: -ms-filter:"progid:DXImageTransform.Microsoft.gradient(GradientT ...
- origin显示三维曲面
准备数据并选中数据: 这里如果只关心z<1部分的趋势,可以对Z轴范围进行调整,双击Z轴的数字: 然后修改显色条的范围,双击曲面: 最后让曲面最上面部分clip掉: 成功了:
- python创建目录并更改权限的代码
如下代码段是关于python创建目录并更改权限的代码. import os os.mkdir("foo", 0666)
- my35_MGR添加新节点
MGR添加节点主要涉及以下两个参数 group_replication_group_seeds #可以动态修改 group_replication_ip_whitelist #需要关闭 ...
- SpringCloud---客户端负载均衡---Spring Cloud Ribbon
1.概述 1.1 Spring Cloud Ribbon是一个基于HTTP和TCP的客户端负载均衡工具: 基于Netflix Ribbon实现: 通过Spring Cloud的封装,可以轻松将面向服务 ...
- Linux-文件目录类命令
l 文件目录类 pwd 指令 基本语法 pwd (功能描述:显示当前工作目录的绝对路径) 应用实例 案例:显示当前工作目录的绝对路径 ls指令 基本语法 ls [选项] [目录或是文件] 常用选项 - ...
- reduce的用法
在不增加变量的情况下,统计数组中各元素出现的次数. ```jsfunction countItem (arr) { // 写入你的代码}countItem(['a', 'b', 'a', 'c', ' ...
- JMeter元件的作用域与执行顺序
元件的作用域 先来讨论一下元件有作用域.<JMeter基础元件介绍>一节中,我们介绍了8类可被执行的元件(测试计划与线程组不属于元件),这些元件中,取样器 是典型的不与其它元件发生交互作用 ...
- Robot Framework(AutoItLibrary库关键字介绍)
AutoItLibrary库关键字 AutoItLibrary 的对象操作大体上有几大主要部分,Window 操作.Control 操作.Mouse 操作.Process操作.Run 操作.Reg 操 ...