-
鼠标悬停,图片360度旋转
效果:代码:
.rotate-demo {width: 220px;
height: 220px;
margin: 0 auto;
background: no-repeat url("images/author.jpg") left top;-webkit-background-size: 220px 220px;
-moz-background-size: 220px 220px;
background-size: 220px 220px;
-webkit-border-radius: 110px;
border-radius: 110px;
-webkit-transition: -webkit-transform 2s ease-out;
-moz-transition: -moz-transform 2s ease-out;
-o-transition: -o-transform 2s ease-out;
-ms-transition: -ms-transform 2s ease-out;
}
.rotate-demo:hover {-webkit-transform: rotateZ(360deg);
-moz-transform: rotateZ(360deg);
-o-transform: rotateZ(360deg);
-ms-transform: rotateZ(360deg);
transform: rotateZ(360deg);
}
知识点:CSS3 的transform 属性可以向元素应用 2D 或 3D 转换。该属性允许我们对元素进行旋转、缩放、移动或倾斜。设置为rotateZ(angle) 实现DOM元素沿着 Z 轴的 3D 旋转,相关的设置还有rotate、rotate3d、rotateX、rotateY。立即学习“前端免费学习笔记(深入)”;
-
图片悬停放大
效果:
代码:CSS3:
.img-container {background-color: #000;
width: 220px;
height: 220px;
margin: 20px 50px;
}
.img {-webkit-transform: scale(0.6);
-moz-transform: scale(0.6);
-o-transform: scale(0.6);
-webkit-transition-duration: 0.5s;
-moz-transition-duration: 0.5s;
-o-transition-duration: 0.5s;
}
.img img {padding: 1px;
border-radius: 10px;
border: 1px solid #fff;
}
.img:hover {-webkit-transform: scale(0.8);
-webkit-box-shadow: 0px 0px 30px #ccc;
-moz-transform: scale(0.8);
-moz-box-shadow: 0px 0px 30px #ccc;
-o-transform: scale(0.8);
-o-box-shadow: 0px 0px 30px #ccc;
}
HTML:
@@##@@
知识点: 同样用到CSS3的transform属性,设置scale(x,y),实现DOM元素的2D缩放转换,相关的还有scale3d、scaleX、scaleY、scaleZ
仿虎嗅网在线视频教育门户源码2.0下载仿虎嗅商学院在线视频教育门户网站源码,织梦内核,页面简洁,容易维护修改;适合做在线教育类网站,网站模板修改简单,网站设置多个广告位方便放置广告。适用于视频网站,在线教育、在线商学院;图片展示效果极佳;网站手工div+css,代码精简,首页排版整洁大方、布局合理、利于SEO、图文并茂、静态HTML;首页和全局重新做了全面优化,方便大家无缝使用。
-
实现3D图片旋转相册
效果:
代码:CSS:
.carousel-container {margin: 20px auto;
width: 210px;
height: 140px;
position: relative;
}
#carousel {width: 100%;
height: 100%;
position: absolute;
transform-style: preserve-3d;
animation: rotation 20s infinite linear;
}
#carousel:hover {animation-play-state: paused;
}
#carousel figure {display: block;
position: absolute;
width: 186px;
height: 116px;
left: 10px;
top: 10px;
background: black;
overflow: hidden;
border: solid 1px black;
}
#carousel figure:nth-child(1) {transform: rotateY(0deg) translateZ(288px);
}
#carousel figure:nth-child(2) {transform: rotateY(40deg) translateZ(288px);
}
#carousel figure:nth-child(3) {transform: rotateY(80deg) translateZ(288px);
}
#carousel figure:nth-child(4) {transform: rotateY(120deg) translateZ(288px);
}
#carousel figure:nth-child(5) {transform: rotateY(160deg) translateZ(288px);
}
#carousel figure:nth-child(6) {transform: rotateY(200deg) translateZ(288px);
}
#carousel figure:nth-child(7) {transform: rotateY(240deg) translateZ(288px);
}
#carousel figure:nth-child(8) {transform: rotateY(280deg) translateZ(288px);
}
#carousel figure:nth-child(9) {transform: rotateY(320deg) translateZ(288px);
}
#carousel .carousel-img {-webkit-filter: grayscale(1);
cursor: pointer;
transition: all .5s ease;
border: none;
}
#carousel .carousel-img:hover {-webkit-filter: grayscale(0);
transform: scale(1.2,1.2);
}
@keyframes rotation {from {transform: rotateY(0deg);
}
to {transform: rotateY(360deg);
}
}
HTML:
@@##@@ @@##@@ @@##@@ @@##@@ @@##@@ @@##@@ @@##@@ @@##@@ @@##@@
知识点: 还是凭借CSS3的transform属性以及animation属性,使用rotateY定义元素沿着 Y 轴的进行 3D 旋转,使用translateZ定义元素沿着Z轴进行 3D 转换;
同时设置元素的animation属性实现动画效果,本文中定义如下:animation: rotation 20s infinite linear;
animation-name(需要绑定到选择器的 keyframe 名称):rotation的动画
animation-duration(完成动画所花费的时间):20s
animation-iteration-count(动画应该播放的次数):infinite(无限次)
animation-timing-function(动画的速度曲线):linear(动画从头到尾的速度是相同的)
更多纯Css3手工打造网页图片效果 相关文章请关注PHP中文网!









