点状背景
introduce radial-gradient
在 vercel 的各个文档站(Nextra)看到的,用到了 css 的 background-image: radial-gradient (opens in a new tab) 属性,浏览器会根据参数在屏幕上生成一张散射图片(是一个特殊的 图片,所以不会和 background-color 一起作用)
语法:
radial-gradient(circle at center, red 0, blue, green 100%)A radial gradient is defined by a center point, an ending shape, and two or more color-stop points.
<radial-gradient()> =
  radial-gradient( [ <ending-shape> || <size> ]? [ at <position> ]? , <color-stop-list> )
// 可以设置位置,形状,大小,渐变的阶段颜色P.S. MDN Using CSS gradients (opens in a new tab) 里面有各种花里胡哨的渐变效果 demo
Dotted background
主要的 css 代码如下,
.dot-background {
  background: fixed 0 0 /20px 20px radial-gradient(#313131 2px, transparent 0), fixed
      10px 10px / 20px 20px radial-gradient(#ff5f00 2px, transparent 0);
}拆解一下这里用的属性,回顾一下 background 属性
fixed:是 background-attachment (opens in a new tab) 的属性,设置了背景图对应他的 viewport 是固定的(fixex)还是随着容器滚动(scroll)- 也就是在滚动的时候会不会随着容器一起
 
0 0:这里是 position/ 20px 20px是背景的大小- 最后才是 iamge,用的 radial-gradient,设置了一个大小为 2px,默认球体,颜色 
#ff5f00,第二阶段是 transparent 0% 
这样第一个图层的点就画完了,没有设置 repeat。
第二层一样,有一个位置的偏移,这样使得两个图层的点交错,更加密集