transform应用详解

关于css3的transform,做了一个demo,上代码
html:
<!DOCTYPE html>
<html>
<head lang="en">
<link rel="stylesheet" href="practice.css" type="text/css" >
<script src="../js/jquery-2.1.1.min.js" type="text/javascript" ></script>
<meta charset="UTF-8">
<title>transform</title>
</head>
<body>
<div class="container">
<div class="out">
<ul>
<li class="in"><img src='1.jpg' /></li>
<li class="in"><img src='2.jpg' /></li>
<li class="in"><img src='3.jpg' /></li>
<li class="in"><img src='4.jpg' /></li>
<li class="in"><img src='5.jpg' /></li>
</ul>
</div>
<div class="control">
<div class='detail'>
<span>transform-style: flat:<input type="radio" name='style' value='flat'/> preserve-3d:<input type="radio" name='style' value='preserve-3d' /></span>
<p>你选择transform_style为<span></span></p>
</div>
<div class='detail'>
<span>perspective:</span><input name='perspective' type="range" min='0' max='800' value='0' step='1'/>
<p>你选择的perspective值为<span></span></p>
</div>
<div class='detail'>
<span>translateX:</span><input name='translateX' type="range" min='0' max='50' value='0' step='1'/>
<p>你选择的translateX值为<span></span></p>
</div>
<div class='detail'>
<span>translateY:</span><input name='translateY' type="range" min='0' max='50' value='0' step='1'/>
<p>你选择的translateY值为<span></span></p>
</div>
<div class='detail'>
<span>translateZ:</span><input name='translateZ' type="range" min='0' max='50' value='0' step='1'/>
<p>你选择的translateZ值为<span></span></p>
</div>
<div class='detail'>
<span>rotateX:</span><input name='rotateX' type="range" min='0' max='180' value='0' step='1'/>
<p>你选择的rotateX值为<span></span></p>
</div>
<div class='detail'>
<span>rotateY:</span><input name='rotateY' type="range" min='0' max='180' value='0' step='1'/>
<p>你选择的rotateY值为<span></span></p>
</div>
<div class='detail'>
<span>rotateZ:</span><input name='rotateZ' type="range" min='0' max='180' value='0' step='1'/>
<p>你选择的rotateZ值为<span></span></p>
</div>
</div>
</div>
css比较简单,就不上了
js:
<script>
$(function(){
var transform_style='flat',translateX='0px',translateY='0px',translateZ='0px',perspective='0px',rotateX=0,rotateY=0,rotateZ=0;
$("input").on('change',function(){
if($(this).attr('name')==='style'){
if($(this).is(":checked")){
transform_style=$(this).val();
$("ul").css({"transform-style":transform_style});
$(this).parent().siblings('p').find('span').text(transform_style) ;
}
}else{
var change=$(this).attr('name');
var val=$(this).val();
switch(change){
case 'perspective':
perspective=val+'px';
break;
case 'translateX':
translateX=val+'px';
break;
case 'translateY':
translateY=val+'px';
break;
case 'translateZ':
translateZ=val+'px';
break;
case 'rotateX':
rotateX=val;
break;
case 'rotateY':
rotateY=val;
break;
case 'rotateZ':
rotateZ=val;
break;
}
$(this).siblings('p').find('span').text(val);
$('.in').css({'-webkit-transform':'perspective('+perspective+') translate3d('+translateX+','+translateY+','+translateZ+') rotateX('+rotateX+'deg) rotateY('+rotateY+'deg) rotateZ('+rotateZ+'deg)'})
}
})
})
</script>
transform应用详解的更多相关文章
- 第98天:CSS3中transform变换详解
transform变换详解 本文主要介绍变形transform. Transform字面上就是变形,改变的意思.在CSS3中transform主要包括以下几种:旋转rotate.扭曲skew.缩放sc ...
- CSS3 transform 属性详解(skew, rotate, translate, scale)
写这篇文章是因为在一个前端QQ群里,网友 "小豆豆" (应他要求要出现他的网名......) ,问skew的角度怎么算,因为他看了很多文章还是不能理解skew的原理.于是,我觉得有 ...
- 2016 - 1- 14 UI阶段学习补充 transform属性详解
UIView的transform属性 transform是view的一个重要属性,它在矩阵层面上改变view的显⽰状态,能实现view的缩放.旋转.平移等功能.transform是CGAffineTr ...
- CSS3属性transform详解之(旋转:rotate,缩放:scale,倾斜:skew,移动:translate)
CSS3属性transform详解之(旋转:rotate,缩放:scale,倾斜:skew,移动:translate) 在CSS3中,可以利用transform功能来实现文字或图像的旋转.缩放.倾 ...
- iOS开发——UI篇OC&transform详解
transframe属性详解 1. transform属性 在OC中,通过transform属性可以修改对象的平移.缩放比例和旋转角度 常用的创建transform结构体方法分两大类 (1) 创建“基 ...
- 【CSS3 transform属性和过渡属性详解】
CSS3transform属性详解 transform字面上就是变形,改变的意思. 在CSS3中transform主要包括以下几种:旋转rotate.扭曲skew.缩放scale和移动translat ...
- css3系列之transform详解translate
translate translate这个参数的,是transform 身上的,那么它有什么用呢? 其实他的作用很简单,就是平移,参考自己的位置来平移 translate() translateX() ...
- CSS3属性transform详解【转载】
CSS3属性transform详解之(旋转:rotate,缩放:scale,倾斜:skew,移动:translate) 在CSS3中,可以利用transform功能来实现文字或图像的旋转.缩放.倾 ...
- 详解如何用 CSS3 完成 3D transform变换
Tips:阅读提示!!! 首先,本文针对的是3D transform变换的学习,所以你需要对 2D transform变换 有一定的了解 其次,需要说明的是,代码是一种需要自己不断实践的学科,建议各位 ...
随机推荐
- Android N 新特性 + APP开发注意事项
1. 多窗口MultiWindow 多窗口MultiWindow,这是Android N里对开发者影响比较大的特性,也是大家疑问比较多的地方.站在开发者的角度其实不必太担心这个特性会导致我们需要修改很 ...
- 【PHP&&FileIO】
在程序员的眼中,文件不应当仅仅是一部电影.一首歌曲.一个pdf文件,它应该被视为一个文件夹,而我们所熟知的文件,应当是它的特例. 在web开发中,文件的上传和下载是文件变成的一个实际应用. 延续cru ...
- 在PYTHON3中,使用Asyncio来管理Event loop
#!/usr/bin/env python # -*- coding: utf-8 -*- import asyncio import datetime import time def functio ...
- MVA Universal Windows Apps系列学习笔记1
昨天晚上看了微软的Build 2015大会第一天第一场演讲,时间还挺长,足足3个小时,不过也挺震撼的.里面提到了windows 10.Microsoft edge浏览器.Azure云平台.Office ...
- PHP面向对象编程之深入理解方法重载与方法覆盖(多态)
这篇文章主要介绍了PHP面向对象编程之深入理解方法重载与方法覆盖(多态)的相关资料,需要的朋友可以参考下: 什么是多态? 多态(Polymorphism)按字面的意思就是"多种状态" ...
- poj 2337 欧拉回路输出最小字典序路径 ***
把26个小写字母当成点,每个单词就是一条边. 然后就是求欧拉路径. #include<cstdio> #include<iostream> #include<algori ...
- linux中socket的理解
对linux中socket的理解 一.socket 一般来说socket有一个别名也叫做套接字. socket起源于Unix,都可以用“打开open –> 读写write/read –> ...
- Java利用Preferences设置个人偏好
Java利用Preferences设置个人偏好 Preferences的中文意思即偏好或喜好的意思,也就是说同一个程序在每次运行完后,可以通过Preferences来记录用户的偏好,下次启动时,程序会 ...
- android应用程序如何调用支付宝接口
最近在做一个关于购物商城的项目,项目里面付款这块我选的是调用支付宝的接口,因为用的人比较多. 在网上搜索了以下,有很多这方面的教程,但大部分教程过于陈旧,而且描述的过于简单.而且支付宝提供的接口一直在 ...
- DSP using Matlab 书内练习Example 2.1
先上代码,后出结果图. a. n = [-5:5]; x=2*impseq(-2,-5,5) - impseq(4,-5,5); set(gcf,'Color',[1,1,1]) % 改变坐标外围背景 ...