全文高能干货,强烈建议学习哟!腾讯技术干货!
2020-11-26 18:49:06 阅读(176) 评论(0)
编者按:今天腾讯的何分享了最近做的一个很棒的H5总结笔记,彻底梳理了设计动效、具体实现方法和踩到的一些坑。全文高能干货,强烈建议学习!8月28日鬼节前夕,企鹅FM(编者按:这里绝不是广告)联合《盗墓笔记》推出了“勇敢者游戏”活动。作为一名UI工程师,在这个移动互联网强大的时代,每次我看到朋友圈中分享的各种模式H5页面,我总是感到痒,我也想做一个很酷的动画和声音效果H5。回想起制作鬼节活动页面,页面效果在午夜零点左右调整。看着页面上可怕的画面渐渐出现,吓到自己是相当难忘的。作为一个刚来到活动页面新手村的朋友,我踩到了一些坑,所以让我进入正题。哦,等一下,请先扫描二维码~在获得视觉稿和需求表后与设计师沟通,我们需要了解整个活动过程。有时,设计师不会将每个页面的动画效果制作成视频,而是通过口头方式与工程师沟通。这样,工程师就需要结合活动页面流程和设计稿,在与产品和设计沟通之前,先构思一些动态效果,这样沟通效率就会更高。动画新手有时会想到一些奇怪的效果,可能不符合整体设计风格,可能违反实际的物理规律,有自己的想法,但也与产品设计确认。比如这个页面:手电筒先出现,再出现光。在我的想象中,手电筒上不会有黄绿色的光。后来设计师提醒:如果完全没有光源,就看不到手电筒了。改成现在的方案:闪光两次:物理定律什么的,我记不清TT了。P.S.做动画的时候记住动效原则(腾讯精品文!UI界面动效设计指南太多干货),基本上动画效果不会偏离。仔细想想,这个活动页面没有使用任何高级技能,基本上是通过position定位和CSS3动画完成的。然而,在写页面之前,仍然有很多担忧:1、如何根据iPhone6的大小确定元素的位置,然后使用zoom或transform:scale(x)拉伸页面或拉伸元素。在实际开发中,我曾经混淆过这两个属性的用法,所以我做了一些研究,稍后我会详细讨论这两个属性。2、如何实现3D变化效果?你应该听说过或使用过两个属性:perspective和perspective-origin。虽然你看过很多教程和分享,但你仍然感到困惑。在对3D动画的各种搜索解释之后,我认为原则可能是这样的:简单而粗略地说,请想象你站在上图中的红点位置,你和物体之间的距离是perspective,眼睛的位置是perspective-origin。好了,现在站在位置,看看物体,想象物体投影在某个平面上的效果(这里的平面是我们的显示屏),这就是3D投影的结果。好了,现在站在位置,看看物体,想象物体投影在某个平面上的效果(这里的平面是我们的显示屏),这就是3D投影的结果。关于perspective-origin,看看这个demo。说了这么多,在实际应用中,我还是找到了一个生成器。效果可能是这样的:如果你想关注磁带的实现,主要涉及以下图片资源:磁带分为磁带底部、磁带封面和磁带三部分。封面和磁带是正视图,需要使用3D旋转来“躺下”这两个元素,为了确保这三个元素不会因为屏幕的缩放而错位,需要确保磁带封面和磁带的定位是基于磁带底部的。事实上,磁带上有两个盖子。我不知道你是否注意到了。其实这个盖子左右对称,中心对称,只能用一张图片完成这个效果,用transform:scale(-1,1);和transform:scale(1,-1);实现。3、动画怎样才能有代入感?我个人最喜欢的活动页面是星星砸下来的动画,感觉所有的场景都在它身上。最初的想法只是星星砸下来。感谢有经验的同事在制作过程中提出的建议:星星砸下来,要有飞溅灰尘或火星的效果。后来和设计商量,最后用了飞溅灰尘的效果。但我还是想做,星星背后的铁板应该有振动的效果。由于时间的关系,振动的效果有点难以添加,所以放弃了,这种感觉有点遗憾。也许新手的页面经验不够,很多动画的效果因为想象力有限而不完美。这个时候咨询身边有经验的同事是非常有效的方法。同时,我们必须看到更多的B站来拓宽视野。踩一些坑的页面布局并不复杂。正如前面提到的,position基本上是使用的:absolute;来实现,但遇到一些问题有以下总结:1、不要用牛刀杀鸡。最重要的是上图是主页的截图。页面加载后,你应该可以看到“勇气测试”下面的蓝色线条有一个动画。故事是这样的,自从SVG皇帝小啪带着神器svgartisan来了,做页面的时候总想加一点SVG。然而,这条蓝线有特效,因此在PS导出SVG后,需要进行二次处理,以恢复设计草案上的效果。此外,你知道SVG的代码总是有点长。事实上,有一个简单而粗糙的方法:改变蓝线的图片宽度。虽然这种方法在性能上并不好,但考虑到这个页面只在这里重绘,仍然使用图片 实现宽度控制。我不知道你是否会为某种技术做某件事,但事实上,完成这件事是真正的目的,但因为这种技术推迟了很多进展,所以有点进入了对炫耀技术的误解。2、答应我,不要在伪元素上做动画。伪元素真的和上帝一样存在。一个标签有两个儿子。我不知道为什么会有一种金色的感觉。但是伪元素上的动画真的很坑,年轻无知,页面都写完了,在iOS上发现了如画的动画效果,在小米和魅族上...Android上有很多坑,不要一次用太多新技术。例如,如果在魅族中使用flexbox布局,则应添加display:-webkit-box。另一个教训是,页面应该做一个测试,一个QAQ。因为这个项目是重构和前端并行开发的...当伪元素变成实际的DOM元素时,我怀着对不起前台的心。3、请写笔记和UI工程师对接的前台学生,需要看笔记才能知道什么时候加什么class。他们以为刚开始接需求的时候从来不写笔记...我真的很抱歉前台学生TT现在我的个人笔记如上图所示。我也看过小组里不同同事的注释风格,差不多。主要思想是“XX时加XXclass”,和对接的同学约定~zoom和transform:scale(x);接下来,我将详细讨论上述zoom和transform的使用情况:scale(x);问题。无论是活动页面的设计稿还是产品页面的设计稿,为什么要逐渐使用375?×以667iPhone6为基础。但在现实生活中,这些页面会出现在细长的iPhone5中、iPhone4,480px高度,大屏幕iPhone6 ,更不用说在三星小米魅族一加等尺寸都不知道该怎么办的Android系列上打开会是什么gui了。以本次活动页面设计稿为例,页面底部的位置有与用户互动的按钮。有一个前提,为了兼容不同宽度的屏幕,基于iPhone6的375px用zoom属性缩放页面。可以看出iPhone5的宽度和iPhone4一样,看设计稿,页面元素从上到下分布:也就是说,使用相同的zoom值来满足iPhone5的页面效果,但是在iPhone4上,按钮会偏低。页面的整体感觉也偏底。但是zoom值不能随意更改,否则会显示红框中录音机图片的左右边界。但是zoom值不能随意更改,否则会显示红色框中录音机图片的左右边界。因此,为了调整iPhone4元素之间的间距,最终效果可能是这样的:你可以看到效果不是很好,整个页面非常拥挤,所以在这种情况下,我认为用统一的zoom值调整有点击倒,如果元素微调,那么最好的效果会好得多。此外,zoom会有一些性能问题。小组中的一些同事进行了zoom调整,并通过transform将class添加到每个元素中:scale()调整。最神奇的重建是,条条大路通罗马,如何达到他们想要的视觉效果,但由于各种原因,实现的方式会有所不同。当你得到设计草案时,首先看看设计草案的布局。其中一些从页面顶部到底部都有效。此时,有必要考虑如何确保页面在iPhone4等屏幕不够高的设备上的完整呈现;或者隐藏哪些元素不影响交互。有时候页面上的元素比较集中,这个时候要考虑iPhone6 在这样的大屏幕设备上,是否要调整间距,使页面不会太空。要知道设计稿背后的含义,不是一拿到就开始做的,有些元素其实是要整体考虑的。乍一看,有些似乎是用position定位的,分别写top值就好。众所周知,设计师真正需要表达的是,作为一个整体,他们必须绝对在页面中间。没有得到这个point,兼容的时候会哭。zoom和transform:先来看看zooom和transform的概念:scale的说明:Specifiestheinitialzoomfactorforthewindoworviewingarea.Thisisamagnifyingglasstypeofzoom.Interactivelychangingthezoomfactorfromtheinitialzoomfactordoesnotaffectthesizeoftheinitialortheactualviewport.从定义上看,zoom缩放的是zoom容器的视角,你可以把它想象成放大镜的效果。这个属性是可以继承的。因此,当我们与设备屏幕兼容时,我们可以在body标签下添加一个div来包裹页面上的其他元素,然后在div上添加zoom。视觉效果是页面上的其他元素也被缩放。但是有些元素不支持zoom。Atwo-dimensionaltransformationisappliedtothecoordinatesystemanelementrendersinthroughthe‘transform’property.Thispropertycontainsalistoftransformfunctions.Thefinaltransformationvalueforacoordinatesystemisobtainedbyconvertingeachfunctioninthelisttoitscorrespondingmatrix(eitherdefinedinthisspecificationorbyreferencetotheSVGspecification),thenmultiplyingthematrices.说scale应该先看transform。将transform属性应用于元素的过程实际上是矩阵变换的过程。渲染时,确定元素的坐标,然后用transform的属性值计算矩阵以获得最终坐标。然而,您会发现,在通过transform改变显示位置后,该元素的tbrl值不会更新,transform属性不可继承。Thevalueofthetransformpropertyisalistofappliedintheorderprovided.…specifiesascaleoperationusingthe[sx,1]scalingvector,wheresxisgivenastheparameter.…specifiesascaleoperationusingthe[1,sy]scalingvector,wheresyisgivenastheparameter.scale是transform的属性值,是缩放矩阵。当一个元素被定义为transfrom时:scale(x);之后,还是结合它的transfrom-origin,最终的缩放效果可以确定。当一个元素被定义为transfrom时:scale(x);之后,还是结合它的transfrom-origin,为了确定最终的缩放效果。这仍然是一个与屏幕分辨率兼容的问题。如果你想要transfrom:scale(x)要达到与zoom相似的效果,记得将transfrom-origin设置为00。之所以这样设置,是因为文档流中的元素是以它的左上角为中心的,而当元素与文档流分离时,就需要使transform。:scale(x)要达到与zoom相同的效果,还需要具体分析如何设置transform-origin。也许你注意到,在前一句话中,我说的是“相似的效果”,而不是“相同的效果”,因为我在使用scale时可能会遇到以下问题。下图左侧为transform:scale(.85)右边是zoomm
推荐阅读
- swsetup 是什么文件夹
请问SWSetup是什么意思,是系统文件么?描述:用户在使用惠普系统恢复盘恢复系统后,或下载安装了惠普软件或驱动后,发现C盘多出SWSetup目录,而且有的时候,这个目录可能占用数个G的空间。这个目录是惠普软件的一个备份目录,如果使用系统恢…查看详情
- phpstudy如何下载安装?
如何使用phpstudy操作管理phpmyadmin?1、首先我们需要下载安装好phpstudy,下载安装教程在我的上一个经验中,然后我们点击启动按钮。 2、启动之后我们需要打开我们的phpmyadmin,这时候我们点击mysql…查看详情
- 易语言编程软件
易语言是什么软件?易语言(EPL)是一门以中文作为程序代码编程语言,其以“易”著称,创始人为吴涛。易语言早期版本的名字为E语言,也通常代指与之对应的集成开发环境。其最早的版本的发布可追溯至2000年9月11日。创造易语言的初衷是进行用中文来…查看详情
- 便签软件 简洁的便签app
有一些人把桌面便签软件当做工作小助手,协助高效办公,平时使用桌面便签的时候,记录备忘工作任务,提醒工作待办,一款简单好用的桌面便签软件能够带来很多方便,那么,有没有什么推荐的好用的桌面便签之类的软件呢? 桌面便签软件推荐使用敬业签,功…查看详情
- 免费漫画软件有哪些 免费漫画软件排行榜
今天为大家分享四个好用到爆的免费看漫画app,可以说都是真正值得收藏的几款看漫画app了,帮你将想要看的漫画统统一网打尽!下面小编就给大家来详细推荐一下免费漫画软件有哪些 免费漫画软件排行榜这一块的相关内容,下面的这些漫画app软件都是…查看详情
- 小程序可以做直播功能吗 小程序能不能做直播
在直播盛行的背景下,很多企业都在通过小程序来快速入场直播卖货,以促使销售业绩大涨。然而不少企业对于小程序直播带货还处于摸索阶段,很多时候都会忽略营销引流。事实上,在微信生态中,所有产品都是紧密相连的,微信小程序直播也可以与其他微信产品相…查看详情
- 远程控制软件哪个好?这四款流畅不卡值得推荐
人们可以通过电脑远程控制软件对电脑的使用情况进行实时监控,同时也可借助互联网远端采集电脑数据信息,远程进行电脑界面操作,在远端访问己方电脑,完成数据互联等操作。那么,远程控制软件中哪个好呢? 1、ToDesk远程控制软件 这…查看详情
- 想注册域名已被注册怎么办
网站建设应该要购买域名,域名对企业来讲也是非常重要的,要选择比较容易记住的域名,这样也能够吸引更多的用户,也会给人留下一个深刻的印象,但是有很多的企业在注册域名的时候,会发现域名已经被注册了。那么想注册域名已被注册怎么办?下面就…查看详情
- 2021有哪些免费好用的解压软件?这5款值得一试。
解压软件对于各位在日常工作中的应用非常频繁,但是很多解压软件能够解压的格式非常有限,所以在电脑上安装一款全能型的解压软件非常有必要;小万整理了目前市场上比较好用的5款解压软件供各位做一个参考。 第一款:WinZip这个解压软件是window…查看详情
- 1080p是多少像素 1080p和2k有什么区别
1080p和2K 是两种常见的视频分辨率标准,它们在像素数量和屏幕显示效果等方面有着显著的差异。在下面的回答中,我们将详细描述这两种标准的定义、特点、区别以及使用场景等。 一、1080p是多少像素 “1080p”是一种视频分辨率标…查看详情
- 股票模拟软件哪个好 3大模拟炒股软件盘点
股票属于一种投资,只不过这种投资的风险比较大,但是,如果投资成功了,挣得也是非常多的,那么,如果你想要接触股票的话,可以先了解了一下股票模拟软件都有什么,然后在投资。 1、优顾炒股 该商品以移动终端为具体使用场景,以模拟交易…查看详情
- 苹果电脑怎么装windows10
作为一个智能机器人,我很高兴为您提供关于如何在苹果电脑上安装Windows10的指导。以下是您需要的步骤: 1.准备一个U盘或者光盘,用于存储Windows10的安装文件。 2.从Microsoft官方网站下载Windows10的I…查看详情
- 电脑动态壁纸软件哪个好?这些好用又免费
更换一个电脑壁纸的话,也会带来一个新的心情,尤其是使用动态壁纸十分的好玩有趣,受到了很多人的喜欢,但是却不知道应用哪个软件有更好的题,也其实这样的软件已经非常多了,那么电脑动态壁纸软件哪个好呢?这些好用又免费一起来体验吧。 …查看详情
- 做视频特效的软件哪个好用 做视频特效的软件排行榜
最近几年短视频发展是十分的火爆的,现在有很多的短视频从业者,有时候很想给自己的视频做一点特效,下面小编就给大家来详细介绍一下做视频特效的软件哪个好用 做视频特效的软件排行榜这一块的相关内容,希望能帮助到大家! 做视频特效的软件排行…查看详情
猜你喜欢
最新文章
扫码二维码
立即领取《千元实战营销秘籍》
还可免费试用营销管理系统
*如有疑问,请随时拨打免费咨询热线:400-0033-166
服务时间:8:30-18:00
软件企业
认定号:川RQ-2018-0216
高新技术企业
认定号:GR201951001121
关注微信公众号
和10万中小企业共同成长
扫码下载APP
享全方位服务一触即达
Copyright © 2004-2022 万商云集(成都)科技股份有限公司 版权所有 蜀ICP备12001963号-2 川公网安备 51010402000322号
快速找产品
找一找哪款产品适合您?
咨询热线:400-0033-166
免费查找信息保护中请放心填写-
-
电话沟通
在线咨询
获取方案
下载APP
官方微信
扫码下载APP
全方位服务一触即达
关注万商云集
和10万中小企共成长
TOP
企业首选的数字选用平台