【前端就业课 第二阶段】CSS 零基础到实战(03)前端 CSS 动效 transition transform

本系列文章持续更新,点击专栏就可以看其他文章:点击进入专栏

整个前端学习路线

以下路线为 CSDN C认提供:
请添加图片描述

如果想 快点搞完 并且 就业 可以选择超级实习生计划
如果有技术想稳定点找工作,可以C认证,C认证还可以 内推、招聘会 ,所以如果在校生想要稳一点,就可以选择C认证或者超级实习生计划,贼稳!

链接在这PC端:进入
手机移动端H5:进入
手机二维码扫码也可以:
在这里插入图片描述
请添加图片描述

合作的企业有这些:
请添加图片描述

如果有疑惑可以问我,如果报培训班我建议还是 CSDN 的靠谱,找我看文末就可以了。

更多资料我放文末了,想了解的可以看一下。

一、动态效果 transition、transform

1.1 transition 动效(过渡)

在网页中,常规的静态页面感觉过于单调,此时可以使用动态效果为其页面增加效果,丰富网页表现,在此咱们需要使用 transition 属性。

在介绍 transition 前我们假定有一个需求:当鼠标移动到某一个 div 时,使 div 可以更改其宽度例如如下 html 代码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>动画</title><style>.box{height: 50px;width: 100px;background-color: aqua;}</style>
</head>
<body><div class="box"></div>
</body>
</html>

以上代码使用了一个 css 样式 box,设置宽度为100 高度为50,并且为了方便观察使用了背景色,在 body 区域使用了一个 div,使其调用了这个样式,此时页面如下:在这里插入图片描述
若想使鼠标悬浮之后发生改变,为其增加 css:

.box:hover{width: 200px;
}

此时增加 hover 后当鼠标移动到 div 中,其div 宽度将会变成 200px,效果如下:

请添加图片描述
我们可以发现,其变换效果太过突兀,缺少过渡,咱们可以使用 transition 为其添加过渡效果,或者说称为动效;简单的使用 transition 只需要知道其两个参数即可,即将要改变的属性以及这个属性在改变过程中需要多长的时间去完成这个效果,如下代码将为以上代码新增一个动画的过渡效果:
在这里插入图片描述
通过以上代码即可使之前较为突然的属性改变变成具有动态效果的改变:
请添加图片描述

1.2 更多 transition 动效(过渡)

transition 可以理解为设置一个属性为增加动效的属性,给予固定的动效时间,以上示例中只需要更改其时间可以使整个 div 动效时间发生变化。

过渡效果可以在很多地方使用,假设以上示例中的div 展开后即可得到一句欢迎用语,那么此时只需要设置多个动效即可,如下示例:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>动画</title><style>.box{height: 50px;width: 100px;background-color: aqua;transition: width 1.2s;}.box:hover{width: 400px;}.box::after{content: "1bit的欢迎大家学习这个前端课程";opacity: 0;transition:margin-left 1.3s , opacity 2.2s;}.box:hover::after{opacity: 1;margin-left: 100px ;}</style>
</head>
<body><div class="box"></div>
</body>
</html>

(注:after 在之前 css 中学习过)以上示例中的关键样式为 .box::after 以及 .box:hover::after, .box::after设置了这个 box 中的“后缀”文本为 “1bit的欢迎大家学习这个前端课程”;,设置其透明度(opacity)为0,则意思是透明,最后设置了两个属性的动效,第一个是 margin-left,第二个则是 opacity,其中 margin-left 指的是距离左边多少个元素,可以设置当前元素与左边元素的距离。

接着第二个样式 .box:hover::after 表示为鼠标悬浮之后,其后缀如何进行更改,在这里设置为透明度为1不透明,并且距离左侧 100 个像素,其最终效果如下:
请添加图片描述
但是此时我们发现这个文本垂直居中,我们只需要在 box 样式中增加行高为 div 宽度即可,内容将会垂直居中:

line-height: 50px;

在这里插入图片描述
效果如下:
在这里插入图片描述
但是发现该部分文本将会超行,此时只需要在样式里添加:

overflow:hidden;

在这里插入图片描述
将会使其不超行显示,最终效果如下:请添加图片描述

若想增加一个图标、文字指引,也很简单:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>动画</title><style>.box{height: 50px;width: 100px;line-height: 50px;overflow:hidden;background-color: aqua;transition: width 1.2s;}.box::after{content: ">> 1bit的欢迎大家学习这个前端课程";opacity: 0;transition:margin-left 1.3s , opacity 2.2s;}.box:hover::after{opacity: 1;margin-left: 100px ;}.box:hover{width: 400px;}.box::before{content: " 展开 ";opacity: 1;transition: opacity 1.2s;}.box:hover::before{opacity: 0;}</style>
</head>
<body><div class="box"></div>
</body>
</html>

以上代码中增加的效果如下为增加了一个“前缀”before,其样式如after的样式一致,效果如下:
请添加图片描述

1.3 transform 变换

使用 transform 可使调用元素发生形状上的变换,在上一点中讲到,transition 主要是添加了过渡效果,在这里的 transform 则是直接使调用元素发生形状上的更改。

transform 的语法为 transform :变换类型,例如如下代码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>动画</title><style>.box {width: 100px;height: 100px;background-color: aqua;}.box:hover {transform:translate(30px);}</style>
</head>
<body><div class="box"></div>
</body>
</html>

以上代码中,在鼠标移动到 div 时,将会触发 transform:translate(30px);样式,其中 transform 的属性 translate 表示2D变换,你可以理解为一个平面的变化,其中translate 接受两个参数,分别为 x 与 y,在 translate 中第一个参数为 x,第二个参数为 y,当鼠标移动到 div 中后 translate(30px) 表示往 x 轴位置移动 30个px,当前 translate 并没有 y 值,所以此时 y 轴无变化,其效果如下:
请添加图片描述
我么可以发现,此时页面并没有特殊的过渡效果,在此可以设置 transition 属性,使其过渡有一定动效,那我们如何确定给哪一个动效效果呢?只需要设置 transition 指定属性为 all 即可,此时将会响应绝大多数的属性变化:
在这里插入图片描述
效果如下:
请添加图片描述

在这里不仅可以设置位置移动,还可以设置旋转,旋转样式如下:

.box:hover {transform:rotateX(360deg);;
}

以上代码为旋转360度,其中deg是单位,使用rotateX 表示以X旋转,还可以使用 rotateY 表示沿着 Y轴旋转。

更多资料

请添加图片描述

请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/286280.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C#基于.Net-HtmlAgilityPack库的爬虫初体验

讲故事前几天有点空闲时间&#xff0c;在github上看一些.Net的开源库&#xff0c;看到了关于爬虫相关的库&#xff0c;于是加入了一个QQ群&#xff0c;看到里面各位大佬讨论的是爬的越好&#xff0c;进去越快&#xff0c;于是我自己也想做一个爬虫相关的东西&#xff0c;但是爬…

Android中文图混排时文图的居中对齐 FontMetrics以及自定义ImageSpan实现

文章转自&#xff1a;http://www.sohu.com/a/150059234_611601 本文作者CnPeng的博客地址&#xff1a; http://www.jianshu.com/p/2650357f7547 这个标题有点长&#xff0c;乍一看这么个标题你可能没明白啥意思&#xff0c;且听我慢慢道来。 公司的项目中新增了一个“心动”…

关于事件监听机制的总结(Listener和Adapter)

记得以前看过事件监听机制背后也是有一种设计模式的.(设计模式的名字记不清了,只记得背后实现的数据结构是数组.) 附上事件监听机制的分析图: 一个事件源可以承载多个事件(只要这个事件源支持这个事件就可以,男人就不支持生孩子的事件) 事件和监听器有对应关系的. 下面用awt中…

一、首页、详情页、文章编辑页制作《iVX低代码/无代码个人博客制作》

注&#xff1a;iVX也有免费直播课《第八期直播课》 一、首页制作 首页预览如下&#xff1a; 首先在博客页创建一个相对应项目&#xff1a; 接着选择前台&#xff0c;创建一个页面&#xff0c;命名为首页&#xff1a; 接着更改当前屏幕为小屏尺寸&#xff1a; 接着我们分…

Saga体系结构模式:微服务架构下跨服务事务的实现

在服务端应用程序中&#xff0c;我们往往会通过事务处理来保证数据一致性&#xff08;Data Consistency&#xff09;&#xff0c;例如&#xff1a;当用户从库存中取走了一定数量的物品&#xff0c;这些物品会体现在用户的提货单上&#xff0c;与此同时&#xff0c;库存中物品的…

GPhone、OPhone、UPhone、APhone、IPhone:满城尽带XPhone

本文为原创&#xff0c;如需转载&#xff0c;请注明作者和出处&#xff0c;谢谢&#xff01; 最近一段时间智能手机市场是翻天覆地。各大厂商纷纷推出自己的手机操作系统和手机。Google、Apple、中国移动、中国联通纷纷推出或即将推出自已 的智能手机操作系统&#xff08;虽…

二、文章发布页制作及后台实现《iVX低代码/无代码个人博客制作》

注&#xff1a;iVX也有免费直播课《第八期直播课》 一、文章编辑页制作 当首页制作完毕后&#xff0c;需要显示内容就需要有文章数据&#xff0c;此时我们创建一个文章编辑页增加对应的数据。 那么我们创建一个页面&#xff0c;命名为文章发布页&#xff1a; 接着我们查看标…

VS2013配置pro*C/C++开发环境

2019独角兽企业重金招聘Python工程师标准>>> 1、软件&#xff1a;VS2013&#xff0c;oracle10g 2、VS2013 新建VC空项目&#xff0c;然后在源文件中新建一个*.pc文件&#xff08;不知道我的配置哪儿有问题&#xff0c;新建的pc文件必须和工程同名&#xff09;&#…

Windows 11 23H2 25131 推送!全新搜索体验,优化应用商店

面向 Dev频道的 Windows 预览体验成员&#xff0c;微软现已推送 Windows 11 预览版 Build 25131。主要变化1.微软为 Windows 11 搜索引入全新体验&#xff0c;当您在搜索结果中点击“打开文件位置”时&#xff0c;现在将选择文件资源管理器中的文件&#xff0c;此前只是打开文件…

C# RichTextBox 实现循环查找关键字

实现效果如上图&#xff0c;点击“Search”按钮&#xff0c;开始从文首查找关键字“menu”&#xff0c;并高亮&#xff0c;再次点击“Search”按钮&#xff0c;继续查找下一个。查找到文末&#xff0c;自动从文首重新查找。 private int _searchIndex 0;//查找开始位置/// <…

网站常见漏洞-- XSS攻击

跨站攻击&#xff0c;即Cross Site Script Execution(通常简写为XSS&#xff0c;因为CSS与层叠样式表同名&#xff0c;故改为XSS) 是指攻击者利用网站程序对用户输入过滤不足&#xff0c;输入可以显示在页面上对其他用户造成影响的HTML代码&#xff0c;从而盗取用户资料、利用用…

【ArcGIS遇上Python】从入门到精通系列之第一章:ArcGIS Python简介

文章目录1. Python简介2. Python的特点3. ArcGIS的脚本语言4. ArcGIS中的Python脚本编辑器1. Python简介 Python是一种跨平台的计算机程序设计语言。 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell)&#xff0c;随着版…

C# RichTextBox 做简单的HTML代码编辑器 ---------左侧显示行号

说明&#xff1a;此显示行号为实际行号&#xff0c;不论是空行还是自动换行&#xff0c;都计算在内&#xff0c;跟实际IDE的行号不同&#xff0c;同步滚动会有半行高度以内的误差。 实现原理&#xff0c;在RichTextBox 编辑器左侧放置另一RichTextBox &#xff08;或其它控件也…

五、文章详情页制作及跳转功能实现《iVX低代码/无代码个人博客制作》

注&#xff1a;iVX也有免费直播课《第八期直播课》 一、详情页制作 在之前的章节中&#xff0c;我们已经制作完毕了登录、注册、首页等内容&#xff0c;在这一节中&#xff0c;我们编写详情页以及详情页功能制作。 详情页页面如下&#xff1a; 详情页头部也就是一个头部栏&…

c++ 数据类型转换: static_cast dynamic_cast reinterpret_cast const_cast

c 数据类型转换&#xff1a; static_cast dynamic_cast reinterpret_cast const_cast 【版权声明】转载请注明出处 http://www.cnblogs.com/TenosDoIt/p/3175217.html【目录】 引言 static_cast 定义 dynamic_cast 定义 举例&#xff1a;下行转换&#xff08;把基类的指针或引用…

日用有余!国产中科方德桌面操作系统初体验

国产IT圈里最受关注的话题&#xff0c;除了芯片想必就是操作系统了。但真说起国产操作系统&#xff0c;大家是既熟悉又陌生&#xff0c;听说过的多而真正使用过的少。而伴随产业发展&#xff0c;市面上也涌现出众多国产操作软件&#xff0c;这些系统是否好用&#xff1f;能否满…

C# RichTextBox 做简单的HTML代码编辑器 ---------利用WinApi修正左侧显示行号 误差

说明&#xff1a;通过WinApi可以准确定准滚动位置。 //行号 生成显示 这里rtbLineNum用的 RichTextBox&#xff0c;也可以用其它private void ShowLineNum(){rtbLineNum.Text "";//计算行高&#xff0c;行数int linesLength 0;var pFirst tbEditor.GetPositionFr…

Angular - - angular.element

angular.element 将DOM元素或者HTML字符串一包装成一个jQuery元素。 格式&#xff1a;angular.element(element); element&#xff1a;包装成jquery对象的html字符串或者dom元素 jqLite提供的方法&#xff1a; addClass()after()append()attr()bind() – 不支持命名空间,选择器…

六、文章详情显示及点赞实现《iVX低代码/无代码个人博客制作》

注&#xff1a;iVX也有免费直播课《第八期直播课》 一、文章详情实现 上一节我们已经完成了首页的内容显示&#xff0c;那么此时我们完成点击后跳转到详情页内容。 那么此时由于我们需要跳转到详情页需要对应的数据ID&#xff0c;那么此时还需要给首页的文章数据对象数组一个…

System.CommandLine选项Option

前一篇简单看了一下CommandLine命令的使用&#xff0c;其实在一个命令行工具中&#xff0c;还有一个重要的点&#xff0c;那就是选项——Option&#xff0c;选项是为命提供参数&#xff0c;就好像C#中方法&#xff0c;Command就像方法&#xff0c;Option就像方法的参数&#xf…