css-doodle是一个用来绘制CSS图案的WEB组件,
请容许我先放上它的官网地址:https://css-doodle.com/
再请容许我放上组件的做者的codepen地址:https://codepen.io/yuanchuan/css
如下是来自codepen中使用css-doodle制做出来的一些成品:html
下面是来自官网的一个例子,在HTML中引入如下代码:ajax
<css-doodle> :doodle { @grid: 7 / 100vmax; background: #0a0c27; } @shape: clover 5; background: hsla( calc(360 - @index() * 4), 70%, 68%, @rand(.8) ); transform: scale(@rand(.2, 1.5)) translate( @rand(-50%, 50%), @rand(-50%, 50%) ); </css-doodle>
效果以下图所示:npm
经过这个代码,咱们大概可以看出一些东西!布局
:doodle
这个选择器选中的是<css-doodle>
这个标签。@grid
的使用能够猜获得实质上它是用了CSS3的Grid布局,在控制台中就能看出这个布局,一行分了7个格子:编码
另外vmax
这个单位也是CSS3中的表示尺寸的单位,意思是取宽度和高度大的那个做为标准(手机横放和竖放的时候会形成宽度和高度的改变),1vmax就是这个标准的1/100。
详见:http://www.css88.com/book/css...spa
@grid: 5x8 / 100% 100vh;
另外这样写的话,就表明5行8列,宽度为100%,高度为100vh;若只写一个,那么行列相同,宽度和高度也相同。code
如下能够说明:orm
@shape: clover 5;
官方拥有一个图案库:cdn
没错啦,这个小花花就在这些图案里面。
颜色、尺寸还有平移位置也都设置了一个过渡的范围,这样就能够出现一种随机分布的效果。
<css-doodle> :doodle { @grid: 20 / 100vmax; background: #12152f; font-family: sans-serif; } :after { content: '\@hex(@rand(0x2500, 0x257f))'; font-size: 5vmax; color: hsla( @rand(360), 70%, 70%, @rand(.9) ); } </css-doodle>
效果图以下:
想插入文字的话,都是用了伪类来实现的,这里的content的字符编码是如下的一些,因此就有了成品中的那些“字图案”:
能够引入CDN直接使用:
<script src="https://cdnjs.cloudflare.com/ajax/libs/css-doodle/0.3.0/css-doodle.min.js"></script>
也能够npm install css-doodle
再import CSSDoodle from 'css-doodle'
。
最后再推荐大漠老师写的文章,有更加详细的说明:一个制做Web图案的组件:css-doodle
除此以外,官网还有更多变量说明,也有JavaScript的接口,但愿你能用它创造出更多美丽惊艳的效果^-^。