88 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			88 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|   | --- | |||
|  | id: bad87fee1348bd9aedf08805 | |||
|  | title: Use CSS Selectors to Style Elements | |||
|  | challengeType: 0 | |||
|  | videoUrl: '' | |||
|  | localeTitle: 使用CSS选择器设置样式元素 | |||
|  | --- | |||
|  | 
 | |||
|  | ## Description
 | |||
|  | <section id="description">使用CSS,您可以使用数百种CSS <code>properties</code>来更改元素在页面上的显示方式。当您输入<code><h2 style="color: red">CatPhotoApp</h2></code> ,您使用<code>inline CSS</code> (代表<code>Cascading Style Sheets</code>对单个<code>h2</code>元素进行<code>Cascading Style Sheets</code> 。这是指定元素样式的一种方法,但有一种更好的方法来应用<code>CSS</code> 。在代码的顶部,创建一个<code>style</code>块,如下所示: <blockquote> <风格> <br> </样式> </blockquote>在该样式块中,您可以为所有<code>h2</code>元素创建<code>CSS selector</code> 。例如,如果您希望所有<code>h2</code>元素都是红色,则可以添加如下所示的样式规则: <blockquote> <风格> <br> h2 {color:red;} <br> </样式> </blockquote>请注意,在每个元素的样式规则周围同时打开和关闭花括号( <code>{</code>和<code>}</code> )非常重要。您还需要确保元素的样式定义位于开始和结束样式标记之间。最后,请务必在每个元素的样式规则的末尾添加分号。 </section> | |||
|  | 
 | |||
|  | ## Instructions
 | |||
|  | <section id="instructions">删除<code>h2</code>元素的样式属性,而不是创建CSS <code>style</code>块。添加必要的CSS以将所有<code>h2</code>元素变为蓝色。 </section> | |||
|  | 
 | |||
|  | ## Tests
 | |||
|  | <section id='tests'> | |||
|  | 
 | |||
|  | ```yml | |||
|  | tests: | |||
|  |   - text: 从<code>h2</code>元素中删除style属性。 | |||
|  |     testString: 'assert(!$("h2").attr("style"), "Remove the style attribute from your <code>h2</code> element.");' | |||
|  |   - text: 创建<code>style</code>元素。 | |||
|  |     testString: 'assert($("style") && $("style").length > 1, "Create a <code>style</code> element.");' | |||
|  |   - text: 你的<code>h2</code>元素应该是蓝色的。 | |||
|  |     testString: 'assert($("h2").css("color") === "rgb(0, 0, 255)", "Your <code>h2</code> element should be blue.");' | |||
|  |   - text: 确保样式表<code>h2</code>声明对分号和右括号有效。 | |||
|  |     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: 确保所有<code>style</code>元素都有效并具有结束标记。 | |||
|  |     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> |