• 技术文章 >web前端 >html教程

    html翻转效果怎么实现

    藏色散人藏色散人2021-06-03 11:12:18原创114

    html翻转效果的实现方法:首先将两个要展示的图片利用定位重叠在一起;然后利用CSS3的perspective结合“transform:ratateY()”属性实现翻转效果即可。

    本文操作环境:windows7系统、HTML5&&CSS3版、Dell G3电脑。

    CSS3实现漂亮的卡片翻转效果

    先贴效果图(实际效果比gif图流畅1000倍,放心使用):
    这里写图片描述
    主要利用的CSS3的perspective结合transform:ratateY()属性完成。当为元素定义 perspective 属性时,其子元素会获得透视效果,而不是元素本身。需要注意的是:perspective 属性只影响 3D 转换元素。
    这个属性现在在火狐谷歌safari上都得到了较好的支持,W3C.cn上关于该属性的说明还未及时更新。

    实现思路就是将两个要展示的p利用定位重叠在一起,其中一个首先围绕Y轴旋转一定角度,还要加上一个关键属性backface-visibility:hidden (该属性定义当元素不面向屏幕时是否可见)。如果不加上这个属性的话,那么就会始终只能看到一张卡片了,失败的效果如下:
    这里写图片描述
    下面就贴完整的代码:

    <!DOCTYPE html>
    <html>
    
        <head>
            <meta charset="utf-8">
            <meta http-equiv="Content-Type" content="text/html">
            <meta name="viewport" content="width=device-width, initial-scale=1,user-scalable=no">
            <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
            <title>CSS3实现卡片翻转效果</title>
            <style>
                .re-item {
                    width: 220px;
                    margin: 50px auto;
                    height: 276px;
                    cursor: pointer;
                    position: relative;
                    perspective: 500;
                    -webkit-perspective: 500;
                }
    
                .re-item img {
                    max-width: 220px;
                }
    
                .re-item-front,
                .re-item-back {
                    position: absolute;
                    top: 0;
                    left: 0;
                    width: 100%;
                    height: 100%;
                    background-color: #fff;
                    -webkit-perspective: 1000;
                    /*backface-visibility: hidden;*/
                    -webkit-transition: all 1.5s;
                    -moz-transition: all 1.5s;
                    -ms-transition: all 1.5s;
                    -o-transition: all 1.5s;
                    box-shadow: rgba(50, 50, 50, 0.2) 0 0 15px;
                    overflow: hidden;
                }
    
                .re-item-back {
                    position: relative;
                    transform: rotateY(-180deg);
                    -webkit-transform: rotateY(-180deg);
                }
    
                .re-item:hover .re-item-front {
                    transform: rotateY(-180deg);
                    -webkit-transform: rotateY(-180deg);
                }
    
                .re-item:hover .re-item-back {
                    transform: rotateY(-360deg);
                    -webkit-transform: rotateY(-360deg);
                }
    
                .re-box .re-item dd {
                    text-align: center;
                    font-family: "微软雅黑";
                }
    
                .re-item .re-item-job {
                    margin: 2px 0;
                    font-size: 18px;
                    color: #303030;
                    line-height: 40px;
                }
    
                .re-item .re-item-des {
                    padding: 0 12px;
                    font-size: 14px;
                    color: #939393;
                }
            </style>
        </head>
    
        <body>
            <div class="re-box">
                <div class="re-item">
                    <dl class="re-item-front">
                        <dt><img src="img/c2.jpg" / alt="coser"></dt>
                        <dd class="re-item-job">coser</dd>
                        <dd class="re-item-des">成为我们的合作coser,漫展返图,自由扩列,以及无偿拍摄&后期服务</dd>
                    </dl>
    
                    <div class="re-item-back">
                        <img src="img/c2_1.jpg" alt="苏苏" />
                        <button type="button" class="join_btn open_modal" data-id="2">立即加入</button>
                    </div>
                </div>
            </div>
        </body>
    
    </html>

    好好看看html结构,很多都是不需要的,最关键的结构如下,css你也看着删除一下吧。

    <p class="re-item">
        <p class="re-item-front"></p>
        <p class="re-item-back"></p>
    </p>

    我的实现代码即是如此,直接贴出来因为懒得删。

    【推荐学习:html视频教程

    以上就是html翻转效果怎么实现的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:html
    上一篇:html怎么实现表头不动 下一篇:html怎么实现密码隐藏显示
    第16期线上培训班

    相关文章推荐

    • html乱码怎么办• html左边对齐怎么设置• html怎么写空格• html怎么把密码隐藏起来• html怎么实现表头不动

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网