CSS 2D动画效果

示例1(盾牌动画):

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>盾牌动画</title>
    <link rel="shortcut icon" href="bkq.ico"  type="image/x-icon"/>
    <style>
        * {
            margin: 0;
            padding: 0;
        }
        body {
            background-color: #ff3040;
        }
        div {
            width: 440px;
            margin: 100px auto;
        }
        div img {
            transition: all 1s;
        }
        div img:nth-child(1) {
            transform: translate(200px,-100px) rotate(60deg);
        }
        div img:nth-child(2) {
            transform: translate(-300px,-150px) rotate(90deg);
        }
        div img:nth-child(3) {
              transform: translate(-100px,180px) rotate(-100deg);
        }
        div img:nth-child(4) {
            transform: translate(-80px,80px) rotate(125deg);
        }
        div img:nth-child(5) {
            transform: translate(200px,-100px) rotate(150deg);
        }
        div img:nth-child(6) {
            transform: translate(180px,180px) rotate(180deg);
        }
        div img:nth-child(7) {
            transform: translate(120px,120px) rotate(120deg);
        }
        div img:nth-child(8) {
            transform: translate(130px,140px) rotate(150deg);
        }
        div img:nth-child(9) {
            transform: translate(500px,-305px) rotate(390deg);
        }
        div:hover img {
            transform: none;
        }
    </style>
</head>
<body>
<div>
    <img src="img/shield_1_01.png" alt=""/>
    <img src="img/shield_1_02.png" alt=""/>
    <img src="img/shield_1_03.png" alt=""/>
    <img src="img/shield_1_04.png" alt=""/>
    <img src="img/shield_1_05.png" alt=""/>
    <img src="img/shield_1_06.png" alt=""/>
    <img src="img/shield_1_07.png" alt=""/>
    <img src="img/shield_1_08.png" alt=""/>
    <img src="img/shield_1_09.png" alt=""/>
</div>
</body>
</html>

 

示例2(楚乔传旋转动画):

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>楚乔传</title>
    <style>
     div {
         width: 250px;
         height: 170px;
         /*border: 1px solid pink;*/
         margin: 200px auto;
         position: relative;
     }
        div img {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0;
            transition: all 0.6s;
            transform-origin: top right;

        }
     /*鼠标经过div 第一张图片旋转*/
     div:hover img:nth-child(1){
         transform: rotate(60deg);
     }
     div:hover img:nth-child(2){
         transform: rotate(120deg);
     }
     div:hover img:nth-child(3){
         transform: rotate(180deg);
     }
     div:hover img:nth-child(4){
         transform: rotate(240deg);
     }
     div:hover img:nth-child(5){
         transform: rotate(300deg);
     }
     div:hover img:nth-child(6){
         transform: rotate(360deg);
     }
    </style>
</head>
<body>
<div>

    <img src="img/6.jpg" alt=""/>
    <img src="img/5.jpg" alt=""/>
    <img src="img/4.jpg" alt=""/>
    <img src="img/3.jpg" alt=""/>
    <img src="img/2.jpg" alt=""/>
    <img src="img/1.jpg" alt=""/>
</div>
</body>
</html>

 

示例3(音乐盒子):

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>音乐盒子</title>
	<style type="text/css">
	body{
		background: pink;
	}
	.box{
		width: 300px;
		height: 300px;
		margin:100px auto;
		position: relative;
	}
	.top,.bottom{
		position: absolute;
		top:0;
		left:0;
		width: 100%;
		height: 100%;
		overflow: hidden;
		border-radius: 50%;
		transform-origin:bottom; /*设置旋转元素的基点位置*/
		transition: all 0.5s ease 0s;
	}
	.box:hover .top{
		transform:rotateX(180deg);
	}
	</style>
</head>
<body>
	<div class="box">
		
		<div class="bottom"><img src="img/musicb.jpg" alt=""></div>
		<div class="top"><img src="img/musict.jpg" alt=""></div>
	</div>
</body>
</html>

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CSS(层叠样式表)和HTML(超文本标记语言)结合可以用来创建简单的2D动画,但要制作复杂的灰太狼动画,特别是涉及到逐帧动画或交互式动画,可能需要使用更专业的工具如JavaScript、CSS3动画(包括关键帧动画@keyframes)以及可能的前端库(如GreenSock, Anime.js等)。 下面是简单的步骤概述: 1. **HTML基础**: - 使用HTML创建灰太狼角色的基本形状,比如圆形头部、身体、四肢等,并为每个元素添加唯一的ID或class,方便CSS操作。 ```html <div class="wolfgang head"></div> <div class="wolfgang body"></div> <div class="wolfgang leg left"></div> <div class="wolfgang leg right"></div> ``` 2. **CSS样式**: - 设置基本样式,包括颜色、尺寸等。 - 利用CSS3动画,例如改变transform属性(旋转、平移),或者使用关键帧动画来控制动画的开始和结束状态。 ```css .wolfgang { position: relative; } .head { /* 添加头部样式 */ } .body { /* 添加身体样式 */ } @keyframes run { 0% { transform: translateX(0); } 100% { transform: translateX(200px); } } ``` 3. **JavaScript(可选)**: - 如果需要更复杂的交互或动画控制,JavaScript可以帮助你响应用户的输入或触发特定动画。 4. **布局和交互**: - 可能还需要考虑CSS布局,如absolute, relative, fixed等来调整动画元素的位置。 为了制作灰太狼的完整2D动画,你需要不断实验和调整代码,可能还需要学习一些基础的动画原理和实践技巧。如果你是初学者,建议从简单的动画开始,逐渐提升技能。 **相关问题**: 1. 如何在CSS中应用CSS3动画? 2. JavaScript如何与CSS动画协作? 3. CSS布局中有哪些不同的定位方式?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值