zoukankan      html  css  js  c++  java
  • html5——3D转换

    角度旋转

    rotateX:默认以center绕x轴旋转

    rotateY:默认以center绕y轴旋转

    rotateZ:默认以cente绕z轴r旋转

    //rotateX原点为center==》正值(顶部)远离屏幕,负值(顶部)接近屏幕
    //rotateX原点为top==》正值(底部)接近屏幕,负值(底部)远离屏幕
    //rotateX原点为bottom==》正值(顶部)远离屏幕,负值(顶部)接近屏幕
    //rotateY原点为center==》正值(左侧)接近屏幕,负值(左侧)远离屏幕
    //rotateY原点为left==》正值(右侧)远离屏幕,负值(右侧)接近屏幕
    //rotateY原点为right==》正值(左侧)接近屏幕,负值(左侧)远离屏 

    距离位移

    translateX:以x轴为基准移动,右为正值

    translateY:以y轴为基准移动,上为正值

    translateZ:以z轴为基准移动,靠近屏幕为正值

    旋转中心

    transform-origin:top//绕着y轴的顶部进行旋转
    transform-origin: x-axis y-axis z-axis;//第三个参数可以不写
    x-axis:left、center、right、length、%
    y-axis:top、center、bottom、length、%
    z-axis:length

    透视

    1、透视可以将一个2D平面,在转换的过程当中,呈现3D效果。

    2、透视是加给父盒子的

    3、透视的值表示是2D平面距离屏幕的距离

    perspective: 100px;//只有父盒子有此属性

    3D呈现

    1、只有规定了3d呈现方式为3d才会有显示效果

    2、preserve-3d属性是加给父盒子的

    transform-style: flat;//所有子元素在 2D 平面呈现
    transform-style: preserve-3d;//保留3D空间

    背面可见

    backface-visibility: hidden;//背部隐藏
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
        <style>
            .box {
                width: 300px;
                height: 300px;
                margin-top: 10px;
                margin-left: 100px;
                float: left;
                border: 1px solid #ccc;
                perspective: 100px;
            }
    
            .box > div {
                text-align: center;
                width: 150px;
                height: 150px;
                margin: 30px auto;
                background-color: blue;
                transition: all 1s;
            }
    
            .box:nth-child(1) div:hover {
                transform: rotateX(360deg);
            }
    
            .box:nth-child(2) div:hover {
                transform: rotateY(360deg);
            }
    
            .box:nth-child(3) div:hover {
                transform: rotateZ(360deg);
            }
    
            .box:nth-child(4) div:hover {
                transform: translateX(300px);
            }
    
            .box:nth-child(5) div:hover {
                transform: translateY(300px);
            }
    
            .box:nth-child(6) div:hover {
                transform: translateZ(50px);
            }
        </style>
    </head>
    <body>
    <div class="box">
        <div>rotateX</div>
    </div>
    <div class="box">
        <div>rotateY</div>
    </div>
    <div class="box">
        <div>rotateZ</div>
    </div>
    <div class="box">
        <div>translateX</div>
    </div>
    <div class="box">
        <div>translateY</div>
    </div>
    <div class="box">
        <div>translateZ</div>
    </div>
    </body>
    </html>

      

  • 相关阅读:
    log4net使用封装,无缝切换 dotnet 和 dotnetcore
    使用 certbot 申请泛域名https证书
    StackExchange.Redis中文使用文档
    在 asp.net core 中使用类似 Application 的服务
    不一样的 SQL Server 日期格式化
    你可能不知道的 docker 命令的奇淫怪巧
    [k8s]dashboard1.8.1搭建( heapster1.5+influxdb+grafana)
    [k8s]k8s 1.9(on the fly搭建) 1.9_cni-flannel部署排错 ipvs模式
    [k8s] kubelet单组件启动静态pod
    [svc]runinit管理多进程
  • 原文地址:https://www.cnblogs.com/wuqiuxue/p/8078916.html
Copyright © 2011-2022 走看看