1.31学习

案例复习

波纹图(动态的,有空再去弄动态图)

    <style>
         .map{
             width: 747px;
             height: 616px;
             background: url(eightsix.webp) no-repeat;
             margin: 0 auto;
         }
         .city{
             position: absolute;
             top: 40px;
             right: 558px;
         }
         .dotted{
             width: 150px;
             height: 20px;
             background-color:transparent;
             border-radius: 50%;
         }
         /* 属性选择器记得复习 */
         .city div[class^="pulse"]{
             position: absolute;
             /* 保证在中心发散 */
             top: 50%;
             left: 50%;
             transform: translate(-50%,-50%);
             width: 150px;
             height: 20px;
             border-radius: 50%;
             box-shadow: 0 0 12px rgb(206, 26, 26);
             animation: pulse 1.2s linear infinite;
         }
         /* 注意权重,让它延迟播放 */
         .city div.pulse2{
             animation-delay: 0.6s;
         }
         @keyframes pulse{
             0%{
 ​
             }
             70%{
                 height: 50px;
                 width: 200px;
                 /* 透明度 */
                 opacity: 1;
             }
             100%{
                 height: 70px;
                 width: 250px;
                 opacity: 0;
             }
         }
     </style>
 </head>
 <body>
     <div class="map">
         <div class="city">
             <div class="dotted"></div>
             <div class="pulse1"></div>
             <div class="pulse2"></div>
         </div>
     </div>
 </body>

速度曲线

steps类似分段表现

可以实现文字逐个显示。

多个动画的实现,逗号隔开。

CSS 3D转换

多个注意是否有逗号。简写中xyz不能省略,如果没有就0.

透视(perspective)

记得是父盒子!

透视数值越小越近越大。

translateZ越大(越往外突出)物体越大

一个主要改变观察点,一个主要改变物体位置

3D旋转(rotate3d)

可以加透视凸显立体感

有个判断旋转方向的左手准则,想象力比较好就不记了()

算了还是记一下

一般旋转都是绕中心(轴/点)旋转。

多矢量时可以合成方向再旋转。

3D呈现(transform-style)

鼠标移上去后翻转

     <style>
         .box{
             position: relative;
             width: 300px;
             height: 300px;
             margin: 100px auto;
             transition: all 1.4s;
             transform-style: preserve-3d;
         }
         .box:hover{
             transform: rotateY(180deg);
         }
         .front,
         .back{
             position:absolute;
             top: 0;
             left: 0;
             width: 100%;
             height: 100%;
             border-radius: 50%;
             font-size: 30px;
             color:#Fff;
             text-align: center;
             line-height: 300px;
         }
         .front{
             background-color: pink;
             transform: translateZ(1px);
         }
         .back{
             background-color: purple;
             transform: rotateY(180deg);
         }
     </style>
 </head>
 <body>
     <div class="box">
         <div class="front">黑马程序员</div>
         <div class="back">pink老师</div>
     </div>
 </body>

盒子翻转

鼠标移上去会向上翻转

    <style>
         *{
             padding:0;
             margin:0;
         }
         ul{
             margin: 100px;
         }
         ul li{
             width: 120px;
             height: 35px;  
             list-style: none;
             perspective: 500px;
         }
         .box{
             position: relative;
             height: 100%;
             width: 100%;
             transform-style: preserve-3d;
             transition: all .4S;
         }
         .front,
         .bottom{
             position: absolute;
             left: 0;
             top: 0;
             width: 100%;
             height: 100%;
         }
         .box:hover{
             transform: ROTATEX(90deg);
         }
         .front{
             background-color:PINK;
             z-index: 1;
             transform: translateZ(17.5px);
         }
         .bottom{
             background-color: purple;
             /* 先位移 */
             transform:translateY(17.5px) rotateX(-90deg);
         }
     </style>
 </head>
 <body>
     <ul>
         <li>
             <div class="box">
                 <div class="front"></div>
                 <div class="bottom"></div>
             </div>
         </li>
     </ul>
 </body>

要是先旋转再移动注意根据坐标系的改变进行改正。

可以实现如图效果,定位层叠后旋转移位,再加动画

浏览器私有前缀

CSS3总结

属性选择器/结构伪类选择器/伪元素选择器

后面准备学JS,视频到p389,后面是移动端及其他。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值