98 lines
4.2 KiB
Markdown
98 lines
4.2 KiB
Markdown
|
---
|
||
|
id: bad87fee1348bd9aedf08805
|
||
|
title: Use CSS Selectors to Style Elements
|
||
|
localeTitle: Usar los selectores de CSS para elementos de estilo
|
||
|
challengeType: 0
|
||
|
videoUrl: ''
|
||
|
---
|
||
|
|
||
|
## Description
|
||
|
<section id='description'>
|
||
|
Con CSS, hay cientos de <code>properties</code> CSS que puedes usar para cambiar la apariencia de un elemento en tu página.
|
||
|
Cuando ingresó <code><h2 style="color: red">CatPhotoApp</h2></code> , estaba diseñando ese elemento <code>h2</code> individual con <code>inline CSS</code> , que significa <code>Cascading Style Sheets</code> .
|
||
|
Esa es una forma de especificar el estilo de un elemento, pero hay una mejor manera de aplicar <code>CSS</code> .
|
||
|
En la parte superior de su código, cree un bloque de <code>style</code> como este:
|
||
|
<blockquote><style><br></style></blockquote>
|
||
|
Dentro de ese bloque de estilo, puede crear un <code>CSS selector</code> para todos los elementos <code>h2</code> . Por ejemplo, si desea que todos los elementos <code>h2</code> sean rojos, debe agregar una regla de estilo que se vea así:
|
||
|
<blockquote><style><br> h2 {color: red;}<br></style></blockquote>
|
||
|
Tenga en cuenta que es importante tener tanto la apertura como el cierre de llaves ( <code>{</code> y <code>}</code> ) alrededor de las reglas de estilo de cada elemento. También debe asegurarse de que la definición de estilo de su elemento se encuentre entre las etiquetas de estilo de apertura y de cierre. Finalmente, asegúrese de agregar un punto y coma al final de cada una de las reglas de estilo de su elemento.
|
||
|
</section>
|
||
|
|
||
|
## Instructions
|
||
|
<section id='instructions'>
|
||
|
Borre el atributo de estilo de su elemento <code>h2</code> y, en su lugar, cree un bloque de <code>style</code> CSS. Agrega el CSS necesario para convertir todos los elementos <code>h2</code> azul.
|
||
|
</section>
|
||
|
|
||
|
## Tests
|
||
|
<section id='tests'>
|
||
|
|
||
|
```yml
|
||
|
tests:
|
||
|
- text: Elimine el atributo de estilo de su elemento <code>h2</code> .
|
||
|
testString: 'assert(!$("h2").attr("style"), "Remove the style attribute from your <code>h2</code> element.");'
|
||
|
- text: Crear un elemento de <code>style</code> .
|
||
|
testString: 'assert($("style") && $("style").length > 1, "Create a <code>style</code> element.");'
|
||
|
- text: Tu elemento <code>h2</code> debe ser azul.
|
||
|
testString: 'assert($("h2").css("color") === "rgb(0, 0, 255)", "Your <code>h2</code> element should be blue.");'
|
||
|
- text: Asegúrese de que la declaración <code>h2</code> su hoja de estilo sea válida con un punto y coma y una llave de cierre.
|
||
|
testString: 'assert(code.match(/h2\s*\{\s*color\s*:.*;\s*\}/g), "Ensure that your stylesheet <code>h2</code> declaration is valid with a semicolon and closing brace.");'
|
||
|
- text: Asegúrese de que todos sus elementos de <code>style</code> sean válidos y tengan una etiqueta de cierre.
|
||
|
testString: 'assert(code.match(/<\/style>/g) && code.match(/<\/style>/g).length === (code.match(/<style((\s)*((type|media|scoped|title|disabled)="[^"]*")?(\s)*)*>/g) || []).length, "Make sure all your <code>style</code> elements are valid and have a closing tag.");'
|
||
|
|
||
|
```
|
||
|
|
||
|
</section>
|
||
|
|
||
|
## Challenge Seed
|
||
|
<section id='challengeSeed'>
|
||
|
|
||
|
<div id='html-seed'>
|
||
|
|
||
|
```html
|
||
|
<h2 style="color: red">CatPhotoApp</h2>
|
||
|
<main>
|
||
|
<p>Click here to view more <a href="#">cat photos</a>.</p>
|
||
|
|
||
|
<a href="#"><img src="https://bit.ly/fcc-relaxing-cat" alt="A cute orange cat lying on its back."></a>
|
||
|
|
||
|
<div>
|
||
|
<p>Things cats love:</p>
|
||
|
<ul>
|
||
|
<li>cat nip</li>
|
||
|
<li>laser pointers</li>
|
||
|
<li>lasagna</li>
|
||
|
</ul>
|
||
|
<p>Top 3 things cats hate:</p>
|
||
|
<ol>
|
||
|
<li>flea treatment</li>
|
||
|
<li>thunder</li>
|
||
|
<li>other cats</li>
|
||
|
</ol>
|
||
|
</div>
|
||
|
|
||
|
<form action="/submit-cat-photo">
|
||
|
<label><input type="radio" name="indoor-outdoor" checked> Indoor</label>
|
||
|
<label><input type="radio" name="indoor-outdoor"> Outdoor</label><br>
|
||
|
<label><input type="checkbox" name="personality" checked> Loving</label>
|
||
|
<label><input type="checkbox" name="personality"> Lazy</label>
|
||
|
<label><input type="checkbox" name="personality"> Energetic</label><br>
|
||
|
<input type="text" placeholder="cat photo URL" required>
|
||
|
<button type="submit">Submit</button>
|
||
|
</form>
|
||
|
</main>
|
||
|
```
|
||
|
|
||
|
</div>
|
||
|
|
||
|
|
||
|
|
||
|
</section>
|
||
|
|
||
|
## Solution
|
||
|
<section id='solution'>
|
||
|
|
||
|
```js
|
||
|
// solution required
|
||
|
```
|
||
|
</section>
|