「CSS畅想」技术传递乐趣,好友说她想要七龙珠,我帮她召唤了神龙

简介: 前端技术从业者与非技术好友互动,好友说她想要七龙珠,我帮她召唤了神龙。

灵感来源

前面的「解答之书」挽回了我和好友的友谊,好友趁热打铁的提出了新要求,说她想要龙珠,还是七颗,好召唤神龙。

龙珠好像是半透明球形,上面有五角形的星星图案,不同的龙珠上面的星星数量不一样。于是我开始连夜翻网络上的图片,寻找童年记忆中的龙珠。

圆滚滚的球,星星点缀,好像用CSS都不难实现。但是神龙却难住我了,挺复杂的。我也没什么绘画天分,但是我擅长制作彩蛋,这次也给好友一个小惊喜。


在线预览

在线预览平台,可查看完整代码,并体验效果。


功能实现

一颗龙珠

  • 龙珠是半透明的,所以我给他加了一层糖果外壳;
  • 龙珠的内芯上是五角形的星星,不同的龙珠,星星的数量是不同的,最大的数量是7颗星星;
  • 龙珠的顶部,我给它打了一个高光,毕竟是能召唤神龙的珠子。
<divclass="ball ball7"><divclass="ball-light"></div><divclass="ball-star ball7-star1"><divclass="ball-star-top"></div></div><divclass="ball-star ball7-star2"><divclass="ball-star-top"></div></div><divclass="ball-star ball7-star3"><divclass="ball-star-top"></div></div><divclass="ball-star ball7-star4"><divclass="ball-star-top"></div></div><divclass="ball-star ball7-star5"><divclass="ball-star-top"></div></div><divclass="ball-star ball7-star6"><divclass="ball-star-top"></div></div><divclass="ball-star ball7-star7"><divclass="ball-star-top"></div></div><divclass="ball-core"></div><divclass="ball-inner"></div></div>

七颗龙珠

七颗都集齐的情况下

  • 其中六颗形成了一个圆圈,环绕着中间的龙珠;
  • 每颗龙珠都做了上下移动的效果,表示随时可以召唤神龙。

召唤功能

  • 点击召唤按钮,外层的龙珠开始向中间的龙珠聚合;
  • 龙珠聚合在一起,只展示一颗龙珠,然后呈现慢慢消失的效果;
  • 龙珠消失之后,神龙就出现了。
// 召唤functioncall() {
synthesis.style.display='none';
balls.classList.add('balls-active');
balls.classList.remove('balls-move');
setTimeout(function () {
balls.classList.add('balls-move');
balls.classList.remove('balls-active');
balls.style.display='none';
dragon.style.display='block';
dragonTime.innerHTML=showTime;
  }, 4500);
}

召唤效果

彩蛋时刻

虽然神龙不容易绘制,但是龙蛋不难,我给好友准备了一颗龙蛋,就说神龙还需自己孵化,而且为了避免好友让我帮她孵化龙蛋,我把孵化时间设置成了100年。今天也是被自己智慧折服的一天。

varbeBornTime='2122/07/31 00:00:00';
vardiffTime=newDate(beBornTime).getTime() -newTime;
varshowTime=Math.floor(diffTime/1000/60/60); // 一百年

再说说这颗龙蛋,

  • 这颗龙蛋的灵感来自「非人哉」的官网,大士手中托着一颗可以实现愿望的蛋,神奇又可爱;
  • 龙蛋上的裂缝效果是通过不同的直线旋转一定的角度然后连接在一起形成的。
<divclass="egg-brokenline egg-brokenline1"></div><divclass="egg-brokenline egg-brokenline2"></div><divclass="egg-brokenline egg-brokenline3"></div><divclass="egg-brokenline egg-brokenline4"></div><divclass="egg-brokenline egg-brokenline5"></div><divclass="egg-brokenline egg-brokenline6"></div><divclass="egg-brokenline egg-brokenline7"></div><divclass="egg-brokenline egg-brokenline8"></div>

后续

好友得知我把龙珠画出来了,很是兴奋,开开心心打开我给她的链接,然后3分钟后,向我丢了几个怒火的表情。然后我告诉她,知足者常乐,不要在意细节。她说,我正在打车,待会见面,让你近距离感受一下什么叫知足者常乐。

我现在画龙好像来不及了,要不画个并蒂莲给她消消气?

目录
相关文章
|
移动开发 前端开发 JavaScript
除了 CSS3,还有哪些技术可以实现动画效果?
除了 CSS3,还有哪些技术可以实现动画效果?
609 63
|
前端开发 容器
CSS 居中技术完全指南:从基础到高级应用
本文详细介绍了 CSS 中常用的居中方法,涵盖水平居中、垂直居中及同时实现两者的方法。
1762 12
|
前端开发 JavaScript 搜索推荐
HTML与CSS在Web组件化中的核心作用及前端技术趋势
本文探讨了HTML与CSS在Web组件化中的核心作用及前端技术趋势。从结构定义、语义化到样式封装与布局控制,两者不仅提升了代码复用率和可维护性,还通过响应式设计、动态样式等技术增强了用户体验。面对兼容性、代码复杂度等挑战,文章提出了相应的解决策略,强调了持续创新的重要性,旨在构建高效、灵活的Web应用。
524 6
|
前端开发 开发者 容器
探索现代Web开发中的CSS Grid布局技术
【8月更文挑战第29天】在数字时代的浪潮中,网页设计不断进化以适应日新月异的用户需求。CSS Grid布局技术作为一项革新性的前端工具,为设计师和开发者提供了前所未有的布局能力。本文旨在通过深入浅出的方式介绍CSS Grid的核心概念、基本用法以及在实际项目中的应用,帮助读者快速掌握这一强大的网页布局工具。
308 3
|
前端开发 开发者 UED
CSS不同技术的探讨
【10月更文挑战第11天】 CSS不同技术的探讨
|
存储 前端开发 JavaScript
CSS:现代Web设计的不同技术
【10月更文挑战第11天】 CSS:现代Web设计的不同技术
|
前端开发 开发者 UED
CSS技术的演变与应用
【10月更文挑战第11天】CSS技术的演变与应用
|
存储 前端开发 JavaScript
仿真银行app下载安装, 银行卡虚拟余额制作app,用html+css+js实现逼真娱乐工具
这是一个简单的银行账户模拟器项目,用于学习前端开发基础。用户可进行存款、取款操作,所有数据存储于浏览器内存中
|
人工智能 程序员 UED
【01】完成新年倒计时页面-蛇年新年快乐倒计时领取礼物放烟花html代码优雅草科技央千澈写采用html5+div+CSS+JavaScript-优雅草卓伊凡-做一条关于新年的代码分享给你们-为了C站的分拼一下子
【01】完成新年倒计时页面-蛇年新年快乐倒计时领取礼物放烟花html代码优雅草科技央千澈写采用html5+div+CSS+JavaScript-优雅草卓伊凡-做一条关于新年的代码分享给你们-为了C站的分拼一下子
1037 21
【01】完成新年倒计时页面-蛇年新年快乐倒计时领取礼物放烟花html代码优雅草科技央千澈写采用html5+div+CSS+JavaScript-优雅草卓伊凡-做一条关于新年的代码分享给你们-为了C站的分拼一下子

热门文章

最新文章

  • 1
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(九):强势分析Animation动画各类参数;从播放时间、播放方式、播放次数、播放方向、播放状态等多个方面,完全了解CSS3 Animation
    622
  • 2
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(八):学习transition过渡属性;本文学习property模拟、duration过渡时间指定、delay时间延迟 等多个参数
    484
  • 3
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(七):学习ransform属性;本文学习 rotate旋转、scale缩放、skew扭曲、tanslate移动、matrix矩阵 多个参数
    484
  • 4
    (CSS)使用Flex布局,帮助你快速了解各种基本的Flex布局属性以及帮你让元素快速达到布局中的指定位置!
    314
  • 5
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(六):全方面分析css的Flex布局,从纵、横两个坐标开始进行居中、两端等元素分布模式;刨析元素间隔、排序模式等
    592
  • 6
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(五):背景属性;float浮动和position定位;详细分析相对、绝对、固定三种定位方式;使用浮动并清除浮动副作用
    777
  • 7
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距
    1524
  • 8
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(三):元素继承关系、层叠样式规则、字体属性、文本属性;针对字体和文本作样式修改
    354
  • 9
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(二):CSS伪类:UI伪类、结构化伪类;通过伪类获得子元素的第n个元素;创建一个伪元素展示在页面中;获得最后一个元素;处理聚焦元素的样式
    1239
  • 10
    【CSS】前端三大件之一,如何学好?从基本用法开始吧!(一):CSS发展史;CSS样式表的引入;CSS选择器使用,附带案例介绍
    588