网站首页 > 博客文章 正文
最近,迷上了CSS3特效,空闲时间学一些小案例,非专业,爱好。不断学习也能掌握一些更为全面的html,css,JavaScript的知识,以小博大,从兴趣出发再掌握更多网页开发知识。闲言少叙,直接开怼。
第一步:
建两个文件,一个为index.html,一个为style.css。把style.css绑定到index.html文件头部进行关联。
第二步:
1、index.html文件输入简单代码。
<section>
<p class="text">
大家好,我就是玉树临风、高大威猛、人称山崩地裂水倒流、鬼见愁、美貌与智慧结合、英雄与侠义化身,人见人爱、花见花开、车见车爆胎、为朋友可以两肋插刀、为女朋友可以插朋友两刀的二哥。今天分享一个香消玉殒的文字效果。
</p>
</section>
其中文字可自行调整,当然要直接复制这段二哥也不介意。
2、style.css写全局样式和text样式
*{
margin: 0;
padding: 0;
box-sizing: border-box;
}
section{
position: relative;
min-height: 100vh;
display: flex;
align-items: center;
justify-content: center;
overflow:hidden;
background: #111;
}
section .text{
color: #fafafa;
max-width: 750px;
text-align: justify;
font-size: 20px;
line-height: 48px;
user-select: none;
letter-spacing: 1px;
}
第三步:
通过javascrip把text样式中的文字炸成一个一个的<span></span>标签。
在index.html写入JavaScript代码。
<script type="text/javascript">
// 把text文字大爆炸
const text = document.querySelector(".text");
text.innerHTML = text.textContent.replace(/\S/g, "<span></span>");// 正则中的s为大写,不然炸不动
</script>
第四步:
在style.css文件中写入span样式
section .text span{
position: relative;
cursor: pointer;
display: inline-block;
}
第五步:
在index.html中通过JavaScript在span中增加active样式
<script type="text/javascript">
// 把text文字大爆炸
const text = document.querySelector(".text");
text.innerHTML = text.textContent.replace(/\S/g, "<span></span>");
const letters = document.querySelectorAll("span");
for (let i=0; i<letters.length; i++) {
letters[i].addEventListener("mouseover", function(){
letters[i].classList.add('active')
})
}
</script>
第六步:
这是见证奇迹的一步,在style.css样式中写入active样式和香消玉殒动画。
section .text span.active{
animation: smoker 4s linear forwards;
}
@keyframes smoker{
0%{
opacity: 1;
filter: blur(0);
transform: scale(1) translateX(0) translateY(0) rotate(0);
}
50%{
opacity: 1;
pointer-events: none;
}
100%{
opacity: 0;
filter: blur(20px);
transform: scale(8) translateX(300px) translateY(-300px) rotate(720deg);
}
}
总结:这里代码没有标注,如果初学者遇到了看不懂的属性或事件。可以复制搜索引擎查看相应的知识点,一次也许记不住,操作得多了就知道了。到最后还能举一反三,好多以前不理解的知识就会恍然大悟。
- 上一篇: 前端开发中79条不可忽视的知识点汇总
- 下一篇: 有意思的鼠标指针交互探究
猜你喜欢
- 2024-11-25 又一个布局利器,CSS 伪类 :placeholder-shown
- 2024-11-25 值得收藏的CSS小技巧
- 2024-11-25 尤娜v1.2.2内置函数用法-Part II(分页函数)
- 2024-11-25 总结7个工作中常用的css3案例,带你了解冷门却实用的特性
- 2024-11-25 带你手写一个轮播图之HTML结构和CSS布局设计
- 2024-11-25 稍微整理了几个经常在H5移动端开发遇到的东西
- 2024-11-25 七爪源码:如何使用 vanilla JS & CSS 创建滚动到顶部按钮
- 2024-11-25 吃透 Vue 项目开发实践|16个方面深入前端工程化开发技巧【上】
- 2024-11-25 3个超秀的 Vue 卡片翻动组件Vue-Card-Slide
- 2024-11-25 揭秘前端无刷新提交数据的黑科技 - React Server Actions深度解析
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)