CSS 渐变跳跃颜色
CSS Gradient skipping colors
我有一个 css class 用于整个页面背景。这个想法是在每种颜色之间以及每种颜色内部都会有一条黑线,但它会跳过其中一些黑线。
目前正在跳过第 2、3、5 和 7 行。
我正在使用 NextJS,css 和顺风css。
这是代码:
<main
className={`w-screen h-screen flex items-center justify-center ${styles.targetBackground} `}
>
.targetBackground {
background: linear-gradient(225deg, #F5ED32 0% 10%, #000 10.1%, #F5ED32 10.3% 20%, #000 20.1% 20.2%, #F3130C 20.3% 30%, #000 30.1%, #F3130C 30.3% 40%, #000 40.1%, #3CB9CA 40.3% 50%, #000 50.1%,#3CB9CA 50.3% 60%, #000 60.1% 70%, #fff 70.1%, #000 70.3% 79.9%, #fff 80% 90%, #000 90.1%, #fff 90.3% 100%);
}
最终代码有效,我只是增加了 Temani 解决方案的像素大小:
.targetBackground {
--l: 8px;
background: linear-gradient(225deg,
#F5ED32 0 10%, #000 0 calc(10% + var(--l)),
#F5ED32 0 20%, #000 0 calc(20% + var(--l)),
#F3130C 0 30%, #000 0 calc(30% + var(--l)),
#F3130C 0 40%, #000 0 calc(40% + var(--l)),
#3CB9CA 0 50%, #000 0 calc(50% + var(--l)),
#3CB9CA 0 60%, #000 0 calc(60% + var(--l)),
#000 0 70%, #fff 0 calc(70% + var(--l)),
#000 0 80%, #fff 0 calc(80% + var(--l)),
#fff 0 90%, #000 0 calc(90% + var(--l)),
#fff 0);
height:100vh;
}
考虑像素值来定义该线的粗细并避免舍入问题。
这是渐变的更新版本,具有更好的语法和线条粗细作为 CSS 变量:
html {
--l: 3px;
background: linear-gradient(225deg,
#F5ED32 0 10%, #000 0 calc(10% + var(--l)),
#F5ED32 0 20%, #000 0 calc(20% + var(--l)),
#F3130C 0 30%, #000 0 calc(30% + var(--l)),
#F3130C 0 40%, #000 0 calc(40% + var(--l)),
#3CB9CA 0 50%, #000 0 calc(50% + var(--l)),
#3CB9CA 0 60%, #000 0 calc(60% + var(--l)),
#000 0 70%, #fff 0 calc(70% + var(--l)),
#000 0 80%, #fff 0 calc(80% + var(--l)),
#fff 0 90%, #000 0 calc(90% + var(--l)),
#fff 0);
height:100%
}
我有一个 css class 用于整个页面背景。这个想法是在每种颜色之间以及每种颜色内部都会有一条黑线,但它会跳过其中一些黑线。
目前正在跳过第 2、3、5 和 7 行。
我正在使用 NextJS,css 和顺风css。
这是代码:
<main
className={`w-screen h-screen flex items-center justify-center ${styles.targetBackground} `}
>
.targetBackground {
background: linear-gradient(225deg, #F5ED32 0% 10%, #000 10.1%, #F5ED32 10.3% 20%, #000 20.1% 20.2%, #F3130C 20.3% 30%, #000 30.1%, #F3130C 30.3% 40%, #000 40.1%, #3CB9CA 40.3% 50%, #000 50.1%,#3CB9CA 50.3% 60%, #000 60.1% 70%, #fff 70.1%, #000 70.3% 79.9%, #fff 80% 90%, #000 90.1%, #fff 90.3% 100%);
}
最终代码有效,我只是增加了 Temani 解决方案的像素大小:
.targetBackground {
--l: 8px;
background: linear-gradient(225deg,
#F5ED32 0 10%, #000 0 calc(10% + var(--l)),
#F5ED32 0 20%, #000 0 calc(20% + var(--l)),
#F3130C 0 30%, #000 0 calc(30% + var(--l)),
#F3130C 0 40%, #000 0 calc(40% + var(--l)),
#3CB9CA 0 50%, #000 0 calc(50% + var(--l)),
#3CB9CA 0 60%, #000 0 calc(60% + var(--l)),
#000 0 70%, #fff 0 calc(70% + var(--l)),
#000 0 80%, #fff 0 calc(80% + var(--l)),
#fff 0 90%, #000 0 calc(90% + var(--l)),
#fff 0);
height:100vh;
}
考虑像素值来定义该线的粗细并避免舍入问题。
这是渐变的更新版本,具有更好的语法和线条粗细作为 CSS 变量:
html {
--l: 3px;
background: linear-gradient(225deg,
#F5ED32 0 10%, #000 0 calc(10% + var(--l)),
#F5ED32 0 20%, #000 0 calc(20% + var(--l)),
#F3130C 0 30%, #000 0 calc(30% + var(--l)),
#F3130C 0 40%, #000 0 calc(40% + var(--l)),
#3CB9CA 0 50%, #000 0 calc(50% + var(--l)),
#3CB9CA 0 60%, #000 0 calc(60% + var(--l)),
#000 0 70%, #fff 0 calc(70% + var(--l)),
#000 0 80%, #fff 0 calc(80% + var(--l)),
#fff 0 90%, #000 0 calc(90% + var(--l)),
#fff 0);
height:100%
}