用CSS3实现图片翻转效果

这篇文章主要介绍了css3制作翻转效果的方法,css3打造3d翻牌效果,适用于扑克翻牌等游戏,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

CSS3制作的翻牌效果,就是鼠标移到元素上,感觉可以看到元素背后的信息。大家如果制作考验记忆力的连连看、扑克类的游戏神马的,甚至给女朋友写一些话语,放在使用该实例制作的相册之后都可以尝试下,哈~

效果图:

用CSS3实现图片翻转效果

实例用到的一些css3的新属性:

 a、-webkit-perspective: 800px;

立即学习“前端免费学习笔记(深入)”;

   perspective (透视,视角):属性定义 3D 元素距视图的距离,以像素计。该属性允许您改变 3D 元素查看 3D 元素的视图。决定了你所看到的是2D transform 还是3D transform 。

b、-webkit-transform-style: preserve-3d;

 transform-style 属性规定如何在 3D 空间中呈现被嵌套的元素。默认flat(平的),我们3D效果,然后选择3D。

c、-webkit-backface-visibility: hidden; 是否显示该选择元素旋转到背面后的样子。

d、-webkit-transform: rotateY(0);  元素绕Y轴旋转。

上面的属性先给大家一个感性的认识,看完例子再细细品味这些属性,或者baidu,google神马的。

例子:

Html:

还是相当简单的:

ul为一组图片,每个li中有个a(因为我们希望点击图片可以跳转),a中包含两个p,一个是正常显示时的(即显示图片),一个是图片旋转后显示的(即介绍)。

CSS:

             body        {            font-size: 14px;            font-family: Microsoft YaHei, Tahoma, Geneva, sans-serif;            background: #111;        }        #content ul        {            width: 960px;            margin: 150px auto;            padding: 60px 0;        }        #content ul li        {            margin-right: 20px;            width: 225px;            height: 180px;            float: left;        }        #content ul li:last-child        {            margin-right: 0;        }        #content ul li a        {            position: relative;            display: block;            width: 100%;            height: 100%;            /*舞台(动画元素的父容器)perspective*/            -webkit-perspective: 800px;            -moz-perspective: 800px;        }        #content ul li a > p        {            position: absolute;            left: 0;            height: 0;            width: 100%;            height: 100%;            color: #fff;            /*动画元素transform-style*/            -webkit-transform-style: preserve-3d;            -webkit-transition: .8s ease-in-out ;            /*动画元素背后设置为hidden*/            -webkit-backface-visibility: hidden;        }        #content ul li a p:first-child        {            /*            绕y轴旋转            */            -webkit-transform: rotateY(0);            z-index: 2;        }        #content ul li a p:last-child        {            background: url("images/bg.jpg") no-repeat 0 0;            -webkit-transform: rotateY(180deg);            z-index: 1;        }        #content ul li a:hover p:first-child        {            -webkit-transform: rotateY(-180deg);        }        #content ul li a:hover p:last-child        {            -webkit-transform: rotateY(0);        }        #content ul li a p h3        {            margin: 0 auto 15px;            padding: 15px 0;            width: 200px;            height: 16px;            line-height: 16px;            font-size: 14px;            text-align: center;            border-bottom: 1px #fff dashed;        }        #content ul li a p p        {            padding: 0 10px;            font-size: 12px;            text-indent: 2em;            line-height: 18px;        }    

好了,上面的CSS中就可以发现文章前面说的那些CSS属性了。

1、最主要的是理解rotateY ,绕y轴旋转,记得我在HTML5 CSS3 精美案例 : 实现VCD包装盒个性幻灯片中也使用到类似属性 transform: rotate(2520deg);使用的是2D旋转。

rotateY字面上看绕y轴旋转,肯定有人问y轴在哪:

用CSS3实现图片翻转效果

默认旋转元素的中心点就是旋转中心(可以通过transform-origin修改),x,y轴都在图上,z轴是从中心往外发的箭头(就是屏幕射向你头的箭头)。

我们例子中,默认图片rotateY=0;鼠标指向为rotateY=-180,负数,也就是逆时针绕y轴旋转,正数,则为顺时针;其他两个轴同理;

我们例子的核心就是鼠标指向时:图片(p:first-child),从0度绕y轴逆时针旋转180度到达-180度;介绍(p:last-child)从180度绕y轴逆时针旋转180度到达0度。造成两个一起逆时针旋转的效果。有人可能会问为啥介绍默认不是0度,这里注意下,介绍逆时针旋转180度之后是正面状态,所以当倍图片遮盖时,相当于从正常状态顺时针旋转了180度,因为鼠标指向时需要恢复正常状态。

perspective,有个技巧,对于舞台(动画的父元素)设置。

transform-style对3d变化当然是3d了,没啥好说的。

关于css3的3d效果相关的属性,还有很多,有机会以后的例子会刻意使用没有用过的~ 

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

使用css如何让背景图片拉伸填充避免重复显示

如何实现canvas环形倒计时组件

用CSS3实现图片翻转效果用CSS3实现图片翻转效果用CSS3实现图片翻转效果用CSS3实现图片翻转效果

以上就是用CSS3实现图片翻转效果的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1610129.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月24日 01:15:53
下一篇 2025年12月24日 01:16:07

相关推荐

  • 使用纯CSS3截取字符串

    这次给大家带来使用纯CSS3截取字符串,的注意事项有哪些,下面就是实战案例,一起来看一下。 代码实例如下: CSS #first{ width:120px; height:30px; background-color:#F30; overflow:hidden; text-overflow:clip…

    好文分享 2025年12月24日
    000
  • CSS3 实现侧边栏展开收起动画

    这篇文章主要介绍了如何使用css3 实现侧边栏展开收起动画,并附上了示例代码,非常的详细,推荐给需要的小伙伴。 @keyframes 规则用于创建动画。 @keyframes 中规定某项 CSS 样式,就能创建由当前样式逐渐改为新样式的动画效果 @keyframes 中创建动画时,请把它捆绑到某个选…

    好文分享 2025年12月24日
    000
  • 在CSS3中常用的几种颜色渐变模式

    现在html5  css3已经越来越流行,用css3实现p渐变已经不是什么难事了,这篇文章给大家整理了现在常用的三种颜色渐变模式,包括线性渐变、径向渐变和重复的线性渐变,文中通过示例代码介绍的很详细,有需要的朋友们可以参考借鉴,下面来一起看看吧。 一、线性渐变:linear-gradient 语法:…

    2025年12月24日 好文分享
    000
  • 如何通过CSS3进行2D转换

    转换是使元素改变形状、尺寸和位置的一种效果,CSS3包括2D转化和3D转化,在这里我们只接受2D转化! 1、translate()方法      通过 translate() 方法,元素从其当前位置移动,根据给定的位置参数进行转化      代码实现:    实际效果: 2.rotate() 方法 …

    2025年12月24日 好文分享
    000
  • css3的transform中scale缩放的分析

    这篇文章主要介绍了css3的transform中scale缩放的使用方法,需要的朋友可以参考下 下面我们从3个方面开始介绍: 1、scale(x,y) 对元素进行缩放 X表示水平方向缩放的倍数 | Y表示垂直方向的缩放倍数Y是一个可选参数,没有设置的话,则表示X,Y两个方向的缩放倍数是一样的。并以X…

    好文分享 2025年12月24日
    000
  • 利用CSS3编写类似iOS中的复选框及带开关的按钮的代码

    这篇文章主要介绍了使用css3编写类似ios中的复选框及带开关的按钮,需要的朋友可以参考下 checkbox多选 最近写了一个适合移动端的checkbox,如图: ps:中间的勾勾是iconfont,iOS风格的。 具体的HTML: 立即学习“前端免费学习笔记(深入)”; 默认未选中 默认选中 橘黄…

    2025年12月24日
    000
  • 如何用css3绘制一个圆的loading转圈动画

    这篇文章主要介绍了css3如何绘制一个圆圆的loading圈的相关资料,内容挺不错的,现在分享给大家,也给大家做个参考。 如何绘制一个圆圆的loading圈 小程序里需要一个像下面的loading,原生的没有,引入别的组件库又太大,所有决定自己写个。 1.基本原理 动态的实现原理是给8个小圆圈设置透…

    2025年12月24日
    000
  • 关于CSS3中Animation动画属性的用法解析

    这篇文章主要为大家详细介绍了css3中animation动画属性用法,教大家如何使用animation动画,感兴趣的小伙伴们可以参考一下 要使用animation动画,先要熟悉一下keyframes,Keyframes的语法规则:命名是由”@keyframes”开头,后面紧接着是这个“动画的名称”加…

    2025年12月24日
    000
  • CSS3区域模块region的相关代码

    这篇文章主要介绍了css3区域模块region相关编写示例,对页面排版相关部分的工作非常有帮助意义,需要的朋友可以参考下 印刷媒体,例如一本杂志或一份报纸,相比网站最大的优势是完全灵活的安排页面和段落布局。例如,印刷媒体已经能够优雅地在多个列中填充内容,甚至复杂到如下面屏幕截图所示。 然而,由于We…

    2025年12月24日 好文分享
    000
  • 如何利用CSS3的线性渐变linear-gradient制作边框

    这篇文章主要介绍了关于如何利用css3的线性渐变linear-gradient制作边框,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 linear-gradient线条用来制作边框还是比较给力的,尤其是利用其描边可以制作一些复制的边框效果,这里我们就来看一下利用CSS3的线性渐变li…

    好文分享 2025年12月24日
    000
  • 用CSS3制作照片墙的特效

    这篇文章主要为大家详细介绍了css3制作漂亮的照片墙的具体步骤,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文实例为大家分享利用CSS3动画制作照片墙的详细步骤,供大家参考,具体内容如下 第一种实现效果: Html代码如下: 照片墙制作@@##@@@@##@@@@##@@@@##@@@@##…

    2025年12月24日
    000
  • 如何使用源生css3实现圆环加载进度条

    这次给大家带来如何使用源生css3实现圆环加载进度条,使用源生css3实现圆环加载进度条的注意事项有哪些,下面就是实战案例,一起来看一下。 效果图: 当时的要求是让进度条以扇形渐变的效果加载。我想了半天,好像只有用border-img来做渐变图了,还有一个超笨的方法就是写50个长方形分布在进度条上。…

    2025年12月24日
    000
  • CSS3制作圆角图片和椭圆形图片

    这篇文章主要教大家css3制作圆角图片和椭圆形图片的具体实现代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文实例为大家分享了CSS3制作圆角和椭圆形图片的方法,供大家参考,具体内容如下 1、圆角图片 XML/HTML Code复制内容到剪贴板 img { border-radius: 8…

    2025年12月24日
    000
  • 纯HTML5+CSS3制作图片旋转

    这篇文章主要介绍了纯html5+css3制作图片旋转,html5结合css3 实现的一些动画特效,实现起来比较容易,感兴趣的小伙伴们可以参考一下 此实例可以应用到许多项目中,很实用,希望大家可以掌握。 效果图如下: 这个效果实现起来其实并不困难,代码清单如下: XML/HTML Code复制内容到剪…

    2025年12月24日
    000
  • 如何利用CSS3截取字符串

    截取字符串一般是用js或者后台语言来实现,其实使用css也是可以实现此效果的。下面通过一段实例代码给大家介绍css3截取字符串的方法,需要的朋友参考下吧 截取字符串一般是用js或者后台语言来实现,其实使用CSS也是可以实现此效果的。 代码实例如下: CSS教程-本站 #first{ width:12…

    好文分享 2025年12月24日
    000
  • css3实现求婚小动画

    这篇文章主要介绍了关于css3实现求婚小动画,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 昨天在微信公众号中看到这一篇文章,瞬间觉得css太强大了,只要你想做,everything is possible! 首先放张效果图 然后一步步分析一下: 首先是刚出现的新郎的动画 .w-m …

    2025年12月24日
    000
  • CSS和CSS3实现画出三角形元素

    这篇文章主要介绍了关于CSS和CSS3实现画出三角形元素,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 前端页面偶尔需要有三角形图标或者三角形样式,现在图标的三角形大多用字体图标去实现了,但是有些大的三角形模块还是需要前端运用css样式去画出来的,下面介绍各种角度的三角形css样式代…

    好文分享 2025年12月24日
    000
  • CSS3如何实现全景图

    本文主要和大家介绍了css3实现全景图特效示例代码的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。 基本代码 html代码: 首先定义一些基本的样式和动画: .panorama { width: 300px; height: 300px; b…

    好文分享 2025年12月24日
    200
  • CSS3实现倾斜和旋转动画效果

    这次给大家带来CSS3实现倾斜和旋转动画效果,实现CSS3倾斜和旋转动画效果的注意事项有哪些,下面就是实战案例,一起来看一下。 先看看静态的效果,运行后的效果更好 示例代码如下 css3学习 .d{width: 200px;height: 200px;border-radius: 50%;borde…

    2025年12月24日
    000
  • 浅谈CSS3新特性之多列布局模块

    CSS3新增了一个多列布局模块(Multi-column Layout Module),主要应用在文本的多列布局方面。 multi-column可分为: ① 列数和列宽:column-count、column-width、columns column-count:值为正整数,不带单位,表示Multi…

    好文分享 2025年12月24日
    000

发表回复

登录后才能评论
关注微信