纯CSS3实现常见多种相册效果
本文包含
1.CSS3中2D转换和3D转换的介绍。
2.在相册中的应用实例。
CSS3中的转换效果和动画效果十分强大好用,可以实现一些常见的动态效果。
如此一来,CSS3便可以代替许多jQuery的功能。
先来介绍一下CSS中的转换。
CSS3中转换有2D转换和3D转换之分。
2D转换(简单来说就是让某个元素改变大小和位置):
1.translate()方法
该方法包含两个参数,分别是对应的x轴,y轴偏移的距离(相对于控件的原位置进行移动)。
也可以根据translateX()方法单独设置x轴偏移量,translateY()方法设置Y轴偏移量。
2.rotate()方法
此方法包含一个参数,表示该空间以中心为圆心,顺时针转过的角度。可以为负值,表示逆时针转过的角度。
3.scale()方法
此方法包含两个参数,代表沿X轴和沿Y轴扩大的倍数。
4.skew()方法
skew()方法,该元素会根据X轴和Y轴线参数旋转给定的角度
5.matrix()方法
matrix方法将2D转换的方法合并为一个
matrix 方法有六个参数,包含旋转,缩放,移动和倾斜功能。
3D转换:
3D转换主要有一个方法。
rotateX(),rotateY(),rotateZ()。参数为一个角度值,分别围绕着X,Y,Z轴转相应的角度。
下面多介绍一个过渡属性transition:
transition:CSS3 过渡是元素从一种样式逐渐改变为另一种的效果。
transition 简写属性,用于在一个属性中设置四个过渡属性。
transition-property 规定应用过渡的 CSS 属性的名称。
transition-duration 定义过渡效果花费的时间。默认是 0。
transition-timing-function 规定过渡效果的时间曲线。默认是 "ease"。
transition-delay 规定过渡效果何时开始。默认是 0。
接下来是一个纯CSS3转换效果做的相册例子
用到多种转换方法
HTML:
<body>
<div class="d_photo">
<div class="sig_photo"><img src="img/pic1.jpg" id="pic1"/></div>
<div class="sig_photo"><img src="img/pic2.jpg" id="pic2"/></div>
<div class="sig_photo"><img src="img/pic3.jpg" id="pic3"/></div>
<div class="sig_photo"><img src="img/pic4.jpg" id="pic4"/></div>
<div class="sig_photo"><img src="img/pic5.jpg" id="pic5"/></div>
<div class="d_photo">
<div class="sig_photo"><img src="img/pic6.jpg" id="pic6"/></div>
<div class="sig_photo"><img src="img/pic7.jpg" id="pic7"/></div>
<div class="sig_photo"><img src="img/pic8.jpg" id="pic8"/></div>
<div class="sig_photo"><img src="img/pic9.jpg" id="pic9"/></div>
<div class="sig_photo"><img src="img/pic10.jpg" id="pic10"/></div>
</div>
</body>
CSS:
body{
width: 100%;
background-image: url("img/bg.jpg") ;
}
.d_photo{
width: 900px;
height: 180px;
margin-top: 10px;
margin-left: auto;
margin-right: auto;
}
.sig_photo{
float: left;
width: 150px;
height: 150px;
margin-top: 20px;
margin-left: 20px;
}
img{
width: 150px;
height: 150px;
-moz-transition: width 1s,height 1s,transform 1s;
-webkit-transition: width 1s,height 1s,transform 1s;
}
#pic1{
-moz-transform: rotate(5deg);
-webkit-transform: rotate(5deg);
}
#pic2{
-moz-transform: rotate(-6deg);
-webkit-transform: rotate(-6deg);
}
#pic3{
-moz-transform: rotate(4deg);
-webkit-transform: rotate(4deg);
}
#pic4{
-moz-transform: rotate(-3deg);
-webkit-transform: rotate(-3deg);
}
#pic5{
-moz-transform: rotate(6deg);
-webkit-transform: rotate(-6deg);
}
#pic6{
-moz-transform: rotate(-5deg);
-webkit-transform: rotate(-5deg);
}
#pic7{
-moz-transform: rotate(7deg);
-webkit-transform: rotate(7deg);
}
#pic8{
-moz-transform: rotate(4deg);
-webkit-transform: rotate(4deg);
}
#pic9{
-moz-transform: rotate(-4deg);
-webkit-transform: rotate(-4deg);
}
#pic10{
-moz-transform: rotate(5deg);
-webkit-transform: rotate(5deg);
}
#pic1:hover{
width: 300px;
height: 350px;
z-index: 10;
-moz-transform: rotate(360deg);
-webkit-transform:rotate(360deg);
}
#pic2:hover{
z-index: 10;
-moz-transform: scale(1.15);
-webkit-transform:scale(1.15);
}
#pic3:hover{
width: 300px;
height: 350px;
z-index: 10;
-moz-transform: rotate(0deg);
-webkit-transform: rotate(0deg);
}
#pic4:hover{
-moz-transform: rotateY(180deg);
-webkit-transform: rotateY(180deg);
z-index: 10;
}
#pic5:hover{
-moz-transform: rotateZ(180deg);
-webkit-transform: rotateZ(180deg);
z-index: 10;
}
#pic6:hover{
-moz-transform: rotateX(180deg);
-webkit-transform: rotateX(180deg);
z-index: 10;
}
#pic7:hover{
width: 300px;
height: 350px;
-moz-transform: translate(100px,-170px);
-webkit-transform: translate(100px,-170px);
z-index: 10;
}
#pic8:hover{
width: 300px;
height: 350px;
z-index: 10;
-moz-transform: translate(0px,-170px);
-webkit-transform: translate(0px,170px);
}
以上1-8每张图片,每张都是一种常用的转换方法,在此就不截图说明了,有兴趣可以试试。
纯CSS3实现常见多种相册效果的更多相关文章
- 纯CSS3实现的动感菜单效果
1. [代码] 纯CSS3实现的动感菜单效果 <!DOCTYPE html><head><meta http-equiv="Content-Type" ...
- Long Shadows Generate是一款在线使用纯CSS3实现长阴影的效果,一款强大的扁平化长投影制造器。
Long Shadows Generate是一款在线使用纯CSS3实现长阴影的效果,一款强大的扁平化长投影制造器. Long Shadows Generate 彩蛋爆料直击现场 Long Shadow ...
- 9种纯CSS3人物信息卡片动态展示效果
<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8&quo ...
- 纯CSS3实现轮播切换效果
使用纯css3实现与轮播器一样的功能. HTML代码: <div class="slide-container"> <input type="radio ...
- 纯Css3手工打造网页图片效果
.rotate-demo { width: 220px; height: 220px; margin: 0 auto; background: no-repeat url("http://i ...
- 纯css3代码写无缝滚动效果
主要用到css3中的动画 @keyframes, animation. 布局是外层一个div宽固定,然后overflow hidden 绝对定位,里面的ul 固定定位.通过对ul添加动画来实现效果.具 ...
- 纯css3实现文字间歇滚动效果
场景: 假设有4条数据或者标题,视口中只显示两条,采用每次向上滚动一条数据来展示所有的数据.效果如图: 用JavaScript也很容易实现,但是需要操作DOM,可以参考这篇博客.考虑到项目中经常使用V ...
- HTML5 纯CSS3实现正方体旋转3D效果
实现效果: 实现代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> & ...
- 纯CSS3实现GIF图片动画效果
在线演示 本地下载
随机推荐
- Android JNI入门第五篇——基本数据类型使用
前面讲到了java和native数据类型,这里就开始做一下使用: 第一步:新建工程 第二部:书写 java方法: public class NativeMethod { static { System ...
- 深入理解java嵌套类和内部类
一.什么是嵌套类及内部类 能够在一个类的内部定义还有一个类.这样的类称为嵌套类(nested classes),它有两种类型:静态嵌套类和非静态嵌套类.静态嵌套类使用非常少,最重要的是非静态嵌套类,也 ...
- Memory Architecture-SGA-Database Buffer Cache
启动instance:1.分配内存空间SGA 2.启动后台进程 内存结构:1.SGA 2.PGA 3.UGA 4.Software code areas SGA components:1.Databa ...
- 通知/代理/block 三者比对
通知 : “一对多”,”多对一” 传值 四个步骤: 1.发送通知2.创建监听者3.接收通知4.移除监听者 使用场景:1- 很多控制器都需要知道一个事件,应该用通知:2 - 相隔多层的两个控制器之 ...
- 比较和排序 IComparable And IComparer
1.List<Student>默认排序 为类创建默认排序实现IComparable,此代码的实现为年龄升序 using System; using System.Collections.G ...
- python切片练习
这块儿没什么难的,细心一点就好 L = [] n = 1 while n <= 99: L.append(n) n = n + 2 print(L) #但是在Python中,代码不是越多越好,而 ...
- 解决phpmyadmin配置文件的权限问题
如果部署的phpmyadmin权限为所有人可写,即权限为777,就会报”Wrong permissions on configuration file, should not be world wri ...
- QLabel设置行间距(使用html的语法,比较巧妙)
1.设置行间距 QLabel没有设置行间距的函数,所以这种办法是行不通的.只能采用其它类似的方法来实现,例如设置行高,使用样式代码如下: <p style='line-height:18px'& ...
- cocos2d-x游戏开发系列教程-超级玛丽07-CMGameMap(二)
在了解地图的初始化和加载之前,我们先了解下mario的地图. 用tiled工具打开mario地图 从地图中可以看到,mario的地图有很多层构成: objects层:怪物,会动的怪物 coin层:金币 ...
- vc 获取网页内容(HTTP)
BOOL bResult = FALSE; // 初始化WinInet 环境 HINTERNET hInternet = InternetOpen("CEHTTP", ...