个人名片 | 霓虹

164 阅读4分钟

当青训营遇上码上掘金~
background2.jpg

前言

名片是向人介绍自我的重要工具,作为一名程序员用代码做自我介绍是一件非常酷炫的事情。这不,闲来无事,我也进行了一番“创作”!市场上的名片大同小异,基本上都围绕卡片的元素展开,既然是创作,那当然要做点花里胡哨的(●'◡'●)一直想做赛博朋克风,这次终于有机会接触接触了!

整体样式设计

最开始想到的是一张背景图加上一些文字动效的方式,后来参考圈内大佬的文章,对内容做了修改。直接使用不规则方框套内容,把整体卡片显现出满满科技感。

			.box {
				padding: 5px;
				position: relative;
				font-size: 1.2rem;
				color: var(--yellow-color);
				border: 30px solid var(--yellow-color);
				border-right: 5px solid var(--yellow-color);
				border-left: 5px solid var(--yellow-color);
				border-bottom: 24px solid var(--yellow-color);
				background-image: url("https://images.pexels.com/photos/1906658/pexels-photo-1906658.jpeg?auto=compress&cs=tinysrgb&w=600");
				background-size: 100%;
				background-repeat: no-repeat;
				clip-path: polygon(0px 25px, 26px 0px, calc(60% - 25px) 0px, 60% 25px, 100% 25px, 100% calc(100% - 10px), calc(100% - 15px) calc(100% - 10px), calc(80% - 10px) calc(100% - 10px), calc(80% - 15px) 100%, 80px calc(100% - 0px), 65px calc(100% - 15px), 0% calc(100% - 15px));
			}

上述内容主要是用border属性修改四边的距离,同时用clip-path: polygon()属性做切割,使之呈现出不规则形状。同时在polygon内部,还存在calc动态计算长度值的CSS计算函数,该函数应用标准的数学计算公式,用它计算出多边形各个顶点的位置信息作为polygon绘制多边形的顶点,如此便得到了基础的多边形。

霓虹闪烁

霓虹闪烁的思路是做一个在起始位置相同,中点位置有一个颜色变化,来呈现出一闪一回的动态效果,使用的css的动画。

.neon {
				font-size: 3.125rem;
				text-shadow: 0 0 3vw #F4BD0A;
				animation: neon 2s ease-in-out infinite;
				padding-left: 22%;
			}
                        

@keyframes neon {

				0%,
				100% {
					text-shadow: 0 0 1vw #FA1C16, 0 0 3vw #FA1C16, 0 0 10vw #FA1C16, 0 0 10vw #FA1C16, 0 0 .4vw #FED128, .5vw .5vw .1vw #806914;
					color: #FFFC00;
				}

				50% {
					text-shadow: 0 0 .5vw #800E0B, 0 0 1.5vw #800E0B, 0 0 5vw #800E0B, 0 0 5vw #800E0B, 0 0 .2vw #800E0B, .5vw .5vw .1vw #40340A;
					color: #806914;
				}
			}

文字的霓虹效果主要是通过text-shadow设置文字阴影实现的,放大阴影的同时字体颜色发生变化。在keyframes关键帧中,指定一个动画元素,随后在需要使用动画的标签中设置animation动画即可实现霓虹闪烁的效果。动画的运动方式分多种,可以选择ease-in-out的起始较慢,中间匀速的方式,也可以选择liner的全程匀速播放,后加上infinite使之循环播放即可。

个人说明

个人说明采用的是textarea多行文本写入方式,同时设置了一个半透明的背景以适应整体背景色。

background-color: rgba(255, 250, 232, 0.5);
				width: calc(100% - 30px);
				border: 30px solid rgba(20, 20, 30, 0);
				border-left: 5px solid rgba(20, 20, 30, 0);
				border-right: 5px solid rgba(20, 20, 30, 0);
				border-bottom: 15px solid rgba(20, 20, 30, 0);
				clip-path: polygon(0px 25px, 26px 0px, calc(60% - 25px) 0px, 60% 25px, 100% 25px, 100% calc(100% - 10px), calc(100% - 15px) calc(100% - 10px), calc(80% - 10px) calc(100% - 10px), calc(80% - 15px) calc(100% - 0px), 10px calc(100% - 0px), 0% calc(100% - 10px));
				padding: 12px;
				animation: textarea 2s linear infinite;
				text-align: left;
				font-size: 22px;

同样式设计一样,多边形的裁切依然使用的是clip-path:polygoncalc结合的计算顶点裁切方式。

总结

总体设计效果: 关于科技感的名片设计,最初想的挺好的,后来在做的时候问题还是很多的,此次经历只是大致了解了科技风制作的基本原理,主要还是对于色彩的把握不太到位,做出来的效果不如最开始想的那么好,不过也算是深入了解了一下css动画方面的相关内容。