我希望整个body
都有点状网格。
body {
background-image: radial-gradient(black 1px, transparent 0);
background-size: 40px 40px;
}
body
的左上角。因此,整个结构应该向 -20px,-20px
移动。或者可能有更好的解决方案?我希望整个body
都有点状网格。
body {
background-image: radial-gradient(black 1px, transparent 0);
background-size: 40px 40px;
}
body
的左上角。因此,整个结构应该向 -20px,-20px
移动。或者可能有更好的解决方案?以下解决方案可以工作,但仅适用于固定的background-size
。请参见@Temani Afif的答案以获取更好的解决方案。
您可以使用background-position
CSS属性来实现您想要的效果。
body {
background: white;
background-image: radial-gradient(black 1px, transparent 0);
background-size: 40px 40px;
background-position: -19px -19px;
}
除了改变 background-position
的方式之外,这里还有另一种可能适用于任何尺寸的方法:
body {
background-image: radial-gradient(circle at 1px 1px, black 1px, transparent 0);
background-size: 40px 40px;
}
body {
background-image: radial-gradient(circle at 1px 1px, black 1px, transparent 0);
background-size: 50px 30px;
}
background-size
定义的区域内的点的位置改变到顶部/左侧,而不是移动整个背景。at 2px 2px
和 1px
是什么意思吗? - Eugene Barsky1px
基本上是圆的半径(因为我们使用径向渐变),所以我应该将圆的中心放在 2px 2px
,也可以是 1px 1px
,应该会得到相同的结果..这里有一个更大值的示例以更好地查看: https://jsfiddle.net/(半径为10px,我们将中心放在10px 10px处) - Temani Afif1px 1px
处,这是半径...当然,您可以将其放置在任何位置(最初我将其设置为2px 2px,以使其远离边缘) - Temani Afif
background
简写属性,该属性可以提供大量参数。如果您将background-position
属性(或任何其他特定于背景的属性)放在background
简写属性之前,则会被简写属性覆盖,并填充默认值。重要的是,在任何地方使用简写属性时,首先设置它,然后设置任何特定属性。其他简写属性的示例包括animation
、flex
、transition
等。 - Tim Kleinbackground
的简写形式。 - Eugene Barskyradial-gradient
方法绘制的圆形没有反锯齿效果。一个替代方法是使用 Houdini worklet 来自定义绘画过程,并按照 https://codepen.io/arnellebalane/pen/yLVOOgW 中所示进行绘制。然而,截至2023年初,Houdini 仅在基于Chromium的浏览器中得到支持(不包括Firefox或Safari)。 - Keavon