使用particles.js实现网页背景粒子特效
得知途径
B3log提供了两套博客系统,一个是用Java开发的,叫做Solo,我也是在网上搜索Java博客系统时发现了它,之后才了解了B3log;还有一个是用Go语言开发的,叫做Pipe.其中Solo是需要自己在自己的云主机上搭建的,而Pipe可以选择自己搭建,也可以使用B3log搭建好的服务.
在Pipe的主页,背景使用了一个非常酷炫的粒子特效,而且还能和鼠标指针互动。

我最近正好在学习网页制作,就想着如果能把这个背景放到我自己的网页上就好了。一般这种效果不会是网页开发者自己写的,而是去调用一些别人写好的js或者css文件来完成。我在Pipe的主页点击右键,选择检查,界面变成下图

可以看到果然有一个叫做particles-js-canvas-el,那么基本可以确定这个效果就是由particles.js实现的。去百度搜索particles.js,果然找到了相关的资料。
基本配置
到官网下载paritcles.js的文件包,解压之后里面有一个demo文件夹。我们将该文件夹复制出来,并对该文件夹中的文件进行修改即可。
该文件夹中有一个index.html文件,我们打开它,找到其中的
<!-- particles.js container -->
<div id="particles-js"></div>
这个id为particles-js的div就是用于放置粒子特效背景的。我们在这个div的后面放上自己的内容。很多网上其他的教程就到此为止了,但是这样的话是无法将粒子特效特效设置为背景的,而是将后面的内容推了下去,如图:

一些稍微好一点的教程会告诉你,需要找到css文件夹中的style.css文件,继续修改。他会说找到#particles-js,在里面添加上一行
position: absolute;
这样的确可以让粒子效果变成背景,如图

不过依然存在两个问题
- 我使用bootstrap做网页,这样做会遮挡一些bootstrap元素(可以看看和上图的对比)
- 当网页较长时,下拉后没有背景效果,如图

网上也的确有人提出了后面的这个问题,参见该网页中用户youkie的评论,我在使用的时候同样遇到了这个问题,有意思的是作者回答了几乎所有其他的问题,就是没有回答这个问题。我尝试调整了style.css文件中background-repeat属性,不过没用。
突然我灵光一现,我们可以换一种思路啊,既然不能让它延长,那就让它像一些网站的导航栏一样固定,不也一样能解决问题。于是我将position: absolute;改成了position: fixed;,果然实现了我想要的效果。
之后我又去网上搜索怎么样让我的bootstrap元素不被遮挡。有说设置z-index的,没用。最后的解决方案也同样是修改position属性,在css文件中将想要不被遮挡的元素的position设置为relative即可。
高级配置
默认的背景颜色是红色,太刺眼,我们要修改的话同样是在style.css里面的#particles-js找到background-color属性进行修改。
还有一些具体配置粒子数量、图形、大小、速度一些细节内容。
https://www.cnblogs.com/wangyihong/p/8618305.html 里有翻译成中文的配置文件详解,我就不在此展开了。
成果展示
我使用particles.js制作的网页链接为:https://aopstudio.github.io
使用particles.js实现网页背景粒子特效的更多相关文章
- JS实现网页背景旋转缩放轮播效果
实现效果:效果预览 css代码: .switch_images { display: inline-block; margin:; padding:; width: 100%; height: 100 ...
- canvas-nest.js 设置网页背景
只需要在HTML,body中加如这行代码就可以实现效果,可以在color中修改颜色 <!DOCTYPE html> <html> <head> <meta c ...
- 在网页中使用particlesjs实现背景的动态粒子特效
先上一张效果图: 这种动态的背景特效,制作起来其实非常简单. 使用了particles.js particles.js可以从github网站下载到最新的源码,网址是 https://github.co ...
- 弄个知乎的粒子动态背景_实践particles.js
好久没登录知乎,发现他们的登录页面粒子动态效果蛮炫的,查一下代码用了Particles.js基于Canvas画布创建粒子颗粒效果. 上图 上图: 感觉有比格,就照着弄了一个,玩玩. githu ...
- js实现粒子特效,particles.js的使用
今天偶然看到了一个比较炫酷的js网页.是粒子特效的,就试着用了用.一下是步骤,方便以后查看使用. 1.在网站下载源码https://github.com/VincentGarreau/particle ...
- Three.js粒子特效,shader渲染初探(一篇非常详细的介绍)
Three.js粒子特效,shader渲染初探 转载来源:https://juejin.im/post/5b0ace63f265da0db479270a 这大概是个序 关于Three.js,网上有不多 ...
- 基于three.js实现特定Div容器的粒子特效封装
本文基于three.js实现特定容器的粒子特效效果,支持用户传入特定的dom对象以及粒子颜色. 效果图 移入库 <script src="jquery-1.11.3.min.js&qu ...
- 原生js写的贪吃蛇网页版游戏特效
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <bo ...
- Particles.js基于Canvas画布创建粒子原子颗粒效果
文章目录 使用方法 自定义参数 相关链接 Particles.js是一款基于HTML5 Canvas画布的轻量级粒子动画插件,可以设置粒子的形状.旋转.分布.颜色等属性,还可以动态添加粒子,效果非常炫 ...
随机推荐
- cdq分治入门--BZOJ1176: [Balkan2007]Mokia
对w*w,w<=2000000的矩形,一开始全是0(或一开始全是s),n<=170000个操作,每次操作:矩阵内某点加上一个数,查某一个子矩阵的和,保证修改数<=160000,询问数 ...
- VIM使用技巧15
在vim的插入模式下,有时需要插入寄存器中的文本: 1.使用<C-r>{register} 2.使用<C-r><C-p>{register} 3.使用<C-r ...
- Linux下汇编语言学习笔记63 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
- PHP上传文件限制修改
php.ini里面查看如下行: upload_max_filesize post_max_size memory_limit
- POJ 3233_Matrix Power Series
题意: 求n*n矩阵的幂和 分析: 逐个加起来时间复杂度太高,通过在矩阵中套个矩阵和,再利用矩阵快速幂,最后时间复杂度为O(n3logn) 代码: #include<cstdio> #in ...
- oracle常用函数积累
--oracle常用函数积累-- --1.字符串长度:LENGTH ,语法: CONCAT(string) --示例 select LENGTH('AA_BB') from dual;--结果:5 - ...
- spring,spring mvc之所以起作用是因为开启了注解解释器,即spring的annotation on
spring,spring mvc之所以起作用是因为开启了注解解释器,即spring的annotation on
- intellij使用tomcat搭建servlet运行时环境
http://suiyu.online/2017/08/01/intellij%E4%BD%BF%E7%94%A8tomcat%E6%90%AD%E5%BB%BAservlet%E8%BF%90%E8 ...
- Android Studio 1.x 使用问题汇总
Android Studio是谷歌于13年I/O大会推出的Android开发环境,基于IntelliJ IDEA. 类似 Eclipse ADT,Android Studio 提供了集成的Androi ...
- Linux学习日志--文件搜索命令
开头总结: 学习了Linux中的文件搜索命令find和locate,系统搜索命令whereis 和which ,字符串搜索命令grep,find和locate的差别和使用方法格式,什么是path环境变 ...