2.7 KiB
id, title, challengeType, videoUrl, forumTopicId, dashedName
id | title | challengeType | videoUrl | forumTopicId | dashedName |
---|---|---|---|---|---|
bad87fee1348bd8aedf06756 | Sobreescribe declaraciones de clase dando estilo a atributos ID | 0 | https://scrimba.com/c/cRkpDhB | 18251 | override-class-declarations-by-styling-id-attributes |
--description--
Acabamos de comprobar que los navegadores leen CSS desde arriba hacia abajo siguiendo el orden de las declaraciones. Por lo tanto, si llega a ocasionarse un conflicto, el navegador utilizará la última declaración CSS. Ten en cuenta que incluso si hubiésemos puesto blue-text
antes que pink-text
en nuestro elemento de clase h1
, seguiría buscando al orden de la declaración y no al orden de su uso.
Pero todavía no terminamos. Hay otras formas de sobreescribir CSS. ¿Recuerdas los atributos id?
Sobrescribamos tus clases pink-text
y blue-text
, y haz que el h1
sea naranja al darle al elemento h1
un id y luego estilizando ese id.
--instructions--
Dale al elemento h1
el atributo id
de orange-text
. Recuerda, los estilos id se ven así:
<h1 id="orange-text">
Deja las clases blue-text
y pink-text
en tu elemento h1
.
Crea una declaración CSS para el id orange-text
en el elemento style
. Aquí hay un ejemplo de cómo se debería ver:
#brown-text {
color: brown;
}
Nota: No importa si declaras este CSS arriba o debajo de la clase pink-text
, ya que el atributo id
siempre tendrá precedencia.
--hints--
Tu elemento h1
debe incluir la clase pink-text
.
assert($('h1').hasClass('pink-text'));
Tu elemento h1
debe incluir la clase blue-text
.
assert($('h1').hasClass('blue-text'));
Tu elemento h1
debe incluir el id orange-text
.
assert($('h1').attr('id') === 'orange-text');
Debe haber un solo elemento h1
.
assert($('h1').length === 1);
El id orange-text
debe tener una declaración CSS.
assert(code.match(/#orange-text\s*{/gi));
Tu h1
no debe tener ningún atributo style
.
assert(!code.match(/<h1.*style.*>/gi));
Tu elemento h1
debe ser naranja.
assert($('h1').css('color') === 'rgb(255, 165, 0)');
--seed--
--seed-contents--
<style>
body {
background-color: black;
font-family: monospace;
color: green;
}
.pink-text {
color: pink;
}
.blue-text {
color: blue;
}
</style>
<h1 class="pink-text blue-text">Hello World!</h1>
--solutions--
<style>
body {
background-color: black;
font-family: monospace;
color: green;
}
.pink-text {
color: pink;
}
.blue-text {
color: blue;
}
#orange-text {
color: orange;
}
</style>
<h1 id="orange-text" class="pink-text blue-text">Hello World!</h1>