文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

怎么用纯CSS实现一只纸鹤

2024-04-02 19:55

关注

这篇文章主要介绍怎么用纯CSS实现一只纸鹤,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

  代码解读

  定义dom,容器中包含6个元素,分别代表头、颈、身体侧面、翅、尾、胸:

  <divclass="cranes">

  <spanclass="head"></span>

  <spanclass="neck"></span>

  <spanclass="side"></span>

  <spanclass="wing"></span>

  <spanclass="tail"></span>

  <spanclass="belly"></span>

  </div>

  居中显示:

  body{

  margin:0;

  height:100vh;

  display:flex;

  align-items:center;

  justify-content:center;

  background-color:dodgerblue;

  }

  定义容器尺寸:

  .cranes{

  width:52em;

  height:50em;

  font-size:7px;

  }

  设置纸鹤的颜色为白色:

  .cranes{

  color:white;

  }

  画出头部:

  .cranes{

  position:relative;

  }

  .head{

  border-left:13emsolidtransparent;

  border-right:6emsolidtransparent;

  border-bottom:2emsolid;

  position:absolute;

  left:0;

  top:21;

  transform:rotate(-5deg);

  }

  把以上创建三角形的代码抽象成一个模板,然后数据都改为变量,类似于调用函数的样子:

  .cranesspan{

  border-left:calc(var(--left)*1em)solidtransparent;

  border-right:calc(var(--right)*1em)solidtransparent;

  border-bottom:calc(var(--bottom)*1em)solid;

  position:absolute;

  transform:rotate(calc(var(--rotation)*1deg));

  left:calc(var(--x)*1em);

  top:calc(var(--y)*1em);

  }

  .head{

  --left:13;

  --right:6;

  --bottom:2;

  --x:0;

  --y:21;

  --rotation:-5;

  }

  设置透明度,以便元素叠加处有折纸效果:

  .cranesspan{

  filter:opacity(0.6);

  }

  接下来就是逐个调用生成三角形的函数创建其他三角形:

  颈:

  .neck{

  --left:6;

  --right:6;

  --bottom:12;

  --x:14;

  --y:19;

  --rotation:75;

  }

  身体侧面:

  .side{

  --left:1.5;

  --right:11.5;

  --bottom:20;

  --x:18.8;

  --y:15.1;

  --rotation:20;

  }

  翅:

  .wing{

  --left:18.7;

  --right:30;

  --bottom:8;

  --x:6.7;

  --y:9.2;

  --rotation:-41.9;

  }

  尾:

  .tail{

  --left:18.6;

  --right:7.7;

  --bottom:3.9;

  --x:19.6;

  --y:38.1;

  --rotation:-126.5;

  }

  胸:

  .belly{

  --left:6.2;

  --right:1.8;

  --bottom:11.5;

  --x:17.5;

  --y:27.8;

  --rotation:-99;

  }

  至此,纸鹤画完。

  最后,增加一点交互效果,当鼠标悬停时,由等腰直角三角形变形成鹤:

  .cranes:hoverspan{

  animation:appear1sease-in;

  }

  @keyframesappear{

  from{

  border-left:3emsolidtransparent;

  border-right:3emsolidtransparent;

  border-bottom:3emsolid;

  position:absolute;

  transform:rotate(0deg);

  left:calc((52em-3em)/2);

  top:calc((50em-3em)/2);

  }

  }

怎么用纯CSS实现一只纸鹤

以上是“怎么用纯CSS实现一只纸鹤”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网行业资讯频道!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-前端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯