3.8 KiB
3.8 KiB
id, title, localeTitle, challengeType, videoUrl
id | title | localeTitle | challengeType | videoUrl |
---|---|---|---|---|
587d78a5367417b2b2512ad7 | Use a CSS Linear Gradient to Create a Striped Element | Use un gradiente lineal de CSS para crear un elemento de rayas | 0 |
Description
repeating-linear-gradient()
es muy similar a linear-gradient()
con la principal diferencia de que repite el patrón de gradiente especificado. repeating-linear-gradient()
acepta una variedad de valores, pero por simplicidad, trabajará con un valor de ángulo y valores de parada de color en este desafío.
El valor del ángulo es la dirección del gradiente. Las paradas de color son como los valores de ancho que marcan el lugar donde se produce una transición, y se dan con un porcentaje o un número de píxeles.
En el ejemplo que se muestra en el editor de código, el degradado comienza con el color yellow
en 0 píxeles, que se mezcla con el segundo color blue
a 40 píxeles desde el principio. Dado que la siguiente parada de color también es de 40 píxeles, el degradado cambia inmediatamente al green
tercer color, que a su vez se mezcla con el valor del color red
ya que está a 80 píxeles del comienzo del degradado.
Para este ejemplo, es útil pensar en las paradas de color como pares donde cada dos colores se mezclan.
0px [yellow -- blend -- blue] 40px [green -- blend -- red] 80px
Si todos los valores de parada de dos colores son del mismo color, la mezcla no es perceptible porque está entre el mismo color, seguida de Transición difícil al siguiente color, por lo que terminas con rayas.
Instructions
repeating-linear-gradient()
para usar un ángulo de gradiente de 45deg
grados, luego establezca los dos primeros topes de color en yellow
, y finalmente el segundo segundo color se detiene en black
.
Tests
tests:
- text: El ángulo del <code>repeating-linear-gradient()</code> debe ser de 45 grados.
testString: 'assert(code.match(/background:\s*?repeating-linear-gradient\(\s*?45deg/gi), "The angle of the <code>repeating-linear-gradient()</code> should be 45deg.");'
- text: El ángulo de la <code>repeating-linear-gradient()</code> ya no debe ser de 90 grados
testString: 'assert(!code.match(/90deg/gi), "The angle of the <code>repeating-linear-gradient()</code> should no longer be 90deg");'
- text: La parada de color en 0 píxeles debe ser <code>yellow</code> .
testString: 'assert(code.match(/yellow\s+?0(px)?/gi), "The color stop at 0 pixels should be <code>yellow</code>.");'
- text: Una parada de color a 40 píxeles debe ser <code>yellow</code> .
testString: 'assert(code.match(/yellow\s+?40px/gi), "One color stop at 40 pixels should be <code>yellow</code>.");'
- text: La segunda parada de color a 40 píxeles debe ser <code>black</code> .
testString: 'assert(code.match(/yellow\s+?40px,\s*?black\s+?40px/gi), "The second color stop at 40 pixels should be <code>black</code>.");'
- text: La última parada de color en 80 píxeles debe ser <code>black</code> .
testString: 'assert(code.match(/black\s+?80px/gi), "The last color stop at 80 pixels should be <code>black</code>.");'
Challenge Seed
<style>
div{
border-radius: 20px;
width: 70%;
height: 400px;
margin: 50 auto;
background: repeating-linear-gradient(
90deg,
yellow 0px,
blue 40px,
green 40px,
red 80px
);
}
</style>
<div></div>
Solution
var code = "background: repeating-linear-gradient(45deg, yellow 0px, yellow 40px, black 40px, black 80px);"