hi,你好!欢迎访问本站!登录
本站由简数采集腾讯云宝塔系统阿里云强势驱动
当前位置:首页 - HTML - 正文 请牢记本站网址www.sosophp.cn

纯CSS3完成3D翻转结果的代码示例【html5教程】

2019-11-26HTML搜搜PHP网52°c
A+ A-
本篇文章给人人带来的内容是关于纯CSS3完成3D翻转结果的代码示例,有肯定的参考价值,有须要的朋侪能够参考一下,愿望对你有所协助。

作为前端开发人员的必修课,CSS3能带我们完成很多基础动效,本期我们将用CSS3完成hover翻转结果~

第一步异常简朴,我们简朴画1个演示方块,为其增加transition和transform属性

// 本示例均运用Sass语法
.block {
  width: 200px;
  height: 200px;
  background: brown;
  cursor: pointer;
  transition: 0.8s;
  &:hover {
    transform: rotateY(180deg);
  }
}

我们看一看这时刻的结果:

这里须要注重的是:transition属性要写在.block上而不是hover上,假如只在hover上写transition,则鼠标移出时并没有transition的过渡结果,假如我们只将transition写在hover上:

第二步比较症结:我们不难发明一直在1个平面上翻转,不够有立体感,因而我们须要略加转变思绪——用2层p嵌套

// html部份
<div class="block">
    <div class="block-in"></div>
</div>
// CSS部份
.block {
  width: 200px;
  height: 200px;
  cursor: pointer;
 
  &-in {
    background: brown;
    height: 100%;
    transition: 0.8s;
  }
  
  &:hover .block-in {
    transform: rotateY(180deg);
  }
}

此时结果没变,以下:

这个时刻症结的1步来了:我们须要给外层增加perspective和transform-style属性,为全部动画增加3D变形结果:

.block {
  width: 200px;
  height: 200px;
  cursor: pointer;
  /* 3D变形 */
  transform-style: preserve-3d;
  -webkit-perspective: 1000;
  -moz-perspective: 1000;
  -ms-perspective: 1000;
  perspective: 1000;
 
  &-in {
    background: brown;
    height: 100%;
    transition: 0.8s;
  }
 
  &:hover .block-in {
    transform: rotateY(180deg);
  }
}

终究完成结果以下:

终究我们总结一下思绪:
1.竖立表里2层div,鼠标 hover 到外层时,内层div增加翻转 transform: rotateY(180deg)
2.注重将 transition 属性增加到须要翻转的div上,而不是 hover 时
3.外层div增加 perspective 和 transform-style 属性,终究完成3D翻转结果

以上就是纯CSS3完成3D翻转结果的代码示例的细致内容,更多请关注ki4网别的相干文章!

  选择打赏方式
微信赞助

打赏

QQ钱包

打赏

支付宝赞助

打赏

  选择分享方式
  移步手机端
纯CSS3完成3D翻转结果的代码示例【html5教程】

1、打开你手机的二维码扫描APP
2、扫描左则的二维码
3、点击扫描获得的网址
4、可以在手机端阅读此文章