웹 프론트엔드 CSS 튜토리얼 CSS 튜토리얼: CSS 선택기 그룹화에 대한 심층 분석

CSS 튜토리얼: CSS 선택기 그룹화에 대한 심층 분석

Jul 12, 2018 pm 02:49 PM
css 선택자

이 글에서는 CSS 선택자 그룹화 관련 정보를 주로 소개합니다. 필요하신 분들은 참고하시면 됩니다

선택자 그룹화

h2 요소와 단락을 회색으로 하고 싶다고 가정해 보겠습니다. 이를 달성하기 위한 가장 쉬운 방법은 다음 선언을 사용하는 것입니다:

h2, p {color:gray;}h2, p {color:gray;}

将 h2 和 p 选择器放在规则左边,然后用逗号分隔,就定义了一个规则。其右边的样式(color:gray;)将应用到这两个选择器所引用的元素。逗号告诉浏览器,规则中包含两个不同的选择器。如果没有这个逗号,那么规则的含义将完全不同。参见后代选择器。

可以将任意多个选择器分组在一起,对此没有任何限制。

例如,如果您想把很多元素显示为灰色,可以使用类似如下的规则:

body, h2, p, table, th, td, pre, strong, em {color:gray;}

提示:通过分组,创作者可以将某些类型的样式“压缩”在一起,这样就可以得到更简洁的样式表。

以下的两组规则能得到同样的结果,不过可以很清楚地看出哪一个写起来更容易:

/* no grouping */
h1 {color:blue;}
h2 {color:blue;}
h3 {color:blue;}
h4 {color:blue;}
h5 {color:blue;}
h6 {color:blue;}
/* grouping */
h1, h2, h3, h4, h5, h6 {color:blue;}
로그인 후 복사

分组提供了一些有意思的选择。例如,下例中的所有规则分组都是等价的,每个组只是展示了对选择器和声明分组的不同方法:

/* group 1 */
h1 {color:silver; background:white;}
h2 {color:silver; background:gray;}
h3 {color:white; background:gray;}
h4 {color:silver; background:white;}
b {color:gray; background:white;}
/* group 2 */
h1, h2, h4 {color:silver;}
h2, h3 {background:gray;}
h1, h4, b {background:white;}
h3 {color:white;}
b {color:gray;}
/* group 3 */
h1, h4 {color:silver; background:white;}
h2 {color:silver;}
h3 {color:white;}
h2, h3 {background:gray;}
b {color:gray; background:white;}
로그인 후 복사

通配符选择器

CSS2 引入了一种新的简单选择器 - 通配选择器(universal selector),显示为一个星号(*)。该选择器可以与任何元素匹配,就像是一个通配符。

例如,下面的规则可以使文档中的每个元素都为红色:

* {color:red;}
<html>
<head>
<style type="text/css">
* {color:red;}
</style>
</head>
<body>
<h1>这是 heading 1</h1>
<h2>这是 heading 2</h2>
<h3>这是 heading 3</h3>
<h4>这是 heading 4</h4>
<p>这是一段<b>普通</b>的段落文本。</p>
</body>
</html>
로그인 후 복사

这个声明等价于列出了文档中所有元素的一个分组选择器。利用通配选择器,只需敲一次键(仅一个星号)就能使文档中所有元素的 color 属性值指定为 red。

声明分组

我们既可以对选择器进行分组,也可以对声明分组。

假设您希望所有 h1 元素都有红色背景,并使用 28 像素高的 Verdana 字体显示为蓝色文本,可以写以下样式:

h1 {font: 28px Verdana;}
h1 {color: blue;}
h1 {background: red;}
로그인 후 복사

但是上面这种做法的效率并不高。尤其是当我们为一个有多个样式的元素创建这样一个列表时会很麻烦。相反,我们可以将声明分组在一起:

h1 {font: 28px Verdana; color: white; background: black;}

h2 및 p 선택기를 규칙 왼쪽에 놓은 다음 분리합니다. 쉼표로 구분하면 규칙이 정의됩니다. 오른쪽 스타일(색상:회색;)은 이 두 선택기가 참조하는 요소에 적용됩니다. 쉼표는 규칙에 두 개의 서로 다른 선택기가 포함되어 있음을 브라우저에 알려줍니다. 이 쉼표가 없으면 규칙의 의미가 완전히 달라집니다. 자손 선택기를 참조하세요.

원하는 만큼 선택자를 그룹화할 수 있으며 이에 대한 제한은 없습니다.

예를 들어 많은 요소를 회색으로 표시하려는 경우 다음과 유사한 규칙을 사용할 수 있습니다:

body, h2, p, table, th, td, pre, Strong, em {color: grey;}< /code><p></p>팁: 작성자는 그룹화를 통해 특정 유형의 스타일을 함께 "압착"하여 보다 간결한 스타일 시트를 만들 수 있습니다. <p></p>다음 두 가지 규칙 세트는 동일한 결과를 얻지만 어느 것이 더 작성하기 쉬운지는 분명합니다. <p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>h1 { font: 28px Verdana; color: blue; background: red; }</pre><div class="contentsignin">로그인 후 복사</div></div></p>그룹화는 몇 가지 흥미로운 옵션을 제공합니다. 예를 들어, 다음 예의 모든 규칙 그룹화는 동일하며, 각 그룹은 선택기와 선언을 그룹화하는 다른 방법을 보여줍니다. <p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>h1 { font: 28px Verdana; color: blue background: red; }</pre><div class="contentsignin">로그인 후 복사</div></div></p><p>Wildcard Selector<strong></strong></p>CSS2에서는 별표로 표시된 새로운 단순 선택인 범용 선택기를 도입합니다. (*). 이 선택기는 와일드카드처럼 모든 요소와 일치할 수 있습니다. <p></p>예를 들어 다음 규칙은 문서의 모든 요소를 ​​빨간색으로 만들 수 있습니다. <p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>h1, h2, h3, h4, h5, h6 { color:gray; background: white; padding: 10px; border: 1px solid black; font-family: Verdana; } &lt;html&gt; &lt;head&gt; &lt;style type=&quot;text/css&quot;&gt; h1, h2, h3, h4, h5, h6 { color:gray; background: white; padding: 10px; border: 1px solid black; font-family: Verdana; } &lt;/style&gt; &lt;/head&gt; &lt;body&gt; &lt;h1&gt;This is heading 1&lt;/h1&gt; &lt;h2&gt;This is heading 2&lt;/h2&gt; &lt;h3&gt;This is heading 3&lt;/h3&gt; &lt;h4&gt;This is heading 4&lt;/h4&gt; &lt;h5&gt;This is heading 5&lt;/h5&gt; &lt;h6&gt;This is heading 6&lt;/h6&gt; &lt;/body&gt; &lt;/html&gt;</pre><div class="contentsignin">로그인 후 복사</div></div></p>이 선언은 문서의 모든 요소를 ​​나열하는 그룹화 선택기와 동일합니다. 와일드카드 선택기를 사용하면 단일 키 입력(별표만)으로 문서의 모든 요소가 빨간색의 색상 속성 값을 가질 수 있습니다. <p><strong></strong>선언 그룹화</p><p></p>선택기와 선언을 모두 그룹화할 수 있습니다. <p></p>모든 h1 요소가 빨간색 배경을 갖고 28픽셀 높이의 Verdana 글꼴을 사용하여 파란색 텍스트로 표시되기를 원한다고 가정하면 다음 스타일을 작성할 수 있습니다. <p><div class="code" style="position:relative; padding:0px; margin:0px;"><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class='brush:php;toolbar:false;'>h1, h2, h3, h4, h5, h6 { color:gray; background: white; padding: 10px; border: 1px solid black; font-family: Verdana; }</pre><div class="contentsignin">로그인 후 복사</div></div><div class="contentsignin">로그인 후 복사</div></div></p>그러나 위의 접근 방식은 그리 효율적이지 않습니다. 이는 여러 스타일을 가진 요소에 대한 목록을 만들 때 특히 문제가 됩니다. 대신 선언을 함께 그룹화할 수 있습니다: <p><strong>h1 {font: 28px Verdana; color: white; background: black;}

이것은 이전 3줄 스타일시트와 똑같은 효과를 갖습니다.

문을 그룹화할 때 각 문 끝에 세미콜론을 사용하는 것이 중요합니다. 브라우저는 스타일 시트의 공백을 무시합니다. 세미콜론만 추가하면 다음과 같은 형식으로 아무런 문제 없이 스타일을 만들 수 있습니다.

h1, h2, h3, h4, h5, h6 {
  color:gray;
  background: white;
  padding: 10px;
  border: 1px solid black;
  font-family: Verdana;
  }
로그인 후 복사
로그인 후 복사
어때요, 위의 작성 방식이 더 가독성이 좋나요?

그러나 두 번째 세미콜론이 생략되면 사용자 에이전트는 스타일 시트를 다음과 같이 해석합니다. rrreee

배경은 색상에 대한 적법한 값이 아니고 색상에 대해 하나의 키워드만 지정할 수 있으므로 사용자 에이전트는 이 색상 선언을 완전히 무시하십시오(배경: 검정색 부분 포함). 이렇게 하면 h1 제목이 빨간색 배경 없이 파란색으로만 표시되지만 파란색 h1이 전혀 표시되지 않을 가능성이 더 높습니다. 대신 헤더는 기본 색상(보통 검은색)으로 표시되며 배경색이 전혀 없습니다. 글꼴: 28px Verdana 선언은 세미콜론으로 올바르게 끝나기 때문에 여전히 작동합니다. 🎜🎜선택기 그룹화와 마찬가지로 선언 그룹화는 스타일시트를 단축하여 더 명확하고 유지 관리하기 쉽게 만드는 편리한 방법입니다. 🎜🎜팁: 규칙의 마지막 문 뒤에 세미콜론을 추가하는 것도 좋은 습관입니다. 규칙에 다른 선언을 추가할 때 다른 세미콜론을 삽입하는 것을 잊어버릴까 봐 걱정할 필요가 없습니다. 🎜🎜🎜선택자 그룹화와 선언 그룹화 결합🎜🎜🎜선택자 그룹화와 선언 그룹화를 하나의 규칙으로 결합할 수 있으며, 매우 적은 수의 문으로 비교적 복잡한 스타일을 정의할 수 있습니다. 🎜🎜다음 규칙은 모든 제목에 대해 복잡한 스타일을 지정합니다. 🎜rrreee🎜🎜선택기와 선언 그룹화 결합🎜🎜🎜선택기 그룹화와 선언 그룹화를 하나의 규칙으로 결합할 수 있으며 상대적으로 복잡한 스타일을 정의하는 문은 거의 사용할 수 없습니다. 🎜🎜다음 규칙은 모든 제목에 대한 복잡한 스타일을 지정합니다. 🎜rrreee🎜위 규칙은 모든 제목의 스타일을 흰색 배경의 회색 텍스트, 패딩 10픽셀, 1A 픽셀의 실선 테두리로 정의합니다. 텍스트 글꼴은 Verdana입니다. 🎜🎜🎜선택자 그룹화와 선언 그룹화 결합🎜🎜🎜선택자 그룹화와 선언 그룹화를 하나의 규칙으로 결합할 수 있으며, 매우 적은 수의 문으로 비교적 복잡한 스타일을 정의할 수 있습니다. 🎜🎜다음 규칙은 모든 제목에 대한 복잡한 스타일을 지정합니다: 🎜rrreee🎜🎜🎜🎜

위 내용은 CSS 튜토리얼: CSS 선택기 그룹화에 대한 심층 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Vue에서 부트 스트랩을 사용하는 방법 Vue에서 부트 스트랩을 사용하는 방법 Apr 07, 2025 pm 11:33 PM

vue.js에서 bootstrap 사용은 5 단계로 나뉩니다 : Bootstrap 설치. main.js.의 부트 스트랩 가져 오기 부트 스트랩 구성 요소를 템플릿에서 직접 사용하십시오. 선택 사항 : 사용자 정의 스타일. 선택 사항 : 플러그인을 사용하십시오.

HTML, CSS 및 JavaScript의 역할 : 핵심 책임 HTML, CSS 및 JavaScript의 역할 : 핵심 책임 Apr 08, 2025 pm 07:05 PM

HTML은 웹 구조를 정의하고 CSS는 스타일과 레이아웃을 담당하며 JavaScript는 동적 상호 작용을 제공합니다. 세 사람은 웹 개발에서 의무를 수행하고 화려한 웹 사이트를 공동으로 구축합니다.

부트 스트랩에 분할 라인을 작성하는 방법 부트 스트랩에 분할 라인을 작성하는 방법 Apr 07, 2025 pm 03:12 PM

부트 스트랩 분할 라인을 만드는 두 가지 방법이 있습니다 : 태그를 사용하여 수평 분할 라인이 생성됩니다. CSS 테두리 속성을 사용하여 사용자 정의 스타일 분할 라인을 만듭니다.

HTML, CSS 및 JavaScript 이해 : 초보자 안내서 HTML, CSS 및 JavaScript 이해 : 초보자 안내서 Apr 12, 2025 am 12:02 AM

WebDevelopmentReliesonHtml, CSS 및 JavaScript : 1) HtmlStructuresContent, 2) CSSSTYLESIT, 및 3) JAVASCRIPTADDSINGINTERACTIVITY, BASISOFMODERNWEBEXPERIENCES를 형성합니다.

부트 스트랩 크기를 조정하는 방법 부트 스트랩 크기를 조정하는 방법 Apr 07, 2025 pm 03:18 PM

부트 스트랩에서 요소의 크기를 조정하려면 다음을 포함하여 차원 클래스를 사용할 수 있습니다.

부트 스트랩에 사진을 삽입하는 방법 부트 스트랩에 사진을 삽입하는 방법 Apr 07, 2025 pm 03:30 PM

Bootstrap에 이미지를 삽입하는 방법에는 여러 가지가 있습니다. HTML IMG 태그를 사용하여 이미지를 직접 삽입하십시오. 부트 스트랩 이미지 구성 요소를 사용하면 반응 형 이미지와 더 많은 스타일을 제공 할 수 있습니다. 이미지 크기를 설정하고 IMG-Fluid 클래스를 사용하여 이미지를 적응할 수 있도록하십시오. IMG 통과 클래스를 사용하여 테두리를 설정하십시오. 둥근 모서리를 설정하고 IMG 라운드 클래스를 사용하십시오. 그림자를 설정하고 그림자 클래스를 사용하십시오. CSS 스타일을 사용하여 이미지를 조정하고 배치하십시오. 배경 이미지를 사용하여 배경 이미지 CSS 속성을 사용하십시오.

부트 스트랩 버튼을 사용하는 방법 부트 스트랩 버튼을 사용하는 방법 Apr 07, 2025 pm 03:09 PM

부트 스트랩 버튼을 사용하는 방법? 부트 스트랩 CSS를 소개하여 버튼 요소를 만들고 부트 스트랩 버튼 클래스를 추가하여 버튼 텍스트를 추가하십시오.

부트 스트랩을위한 프레임 워크를 설정하는 방법 부트 스트랩을위한 프레임 워크를 설정하는 방법 Apr 07, 2025 pm 03:27 PM

부트 스트랩 프레임 워크를 설정하려면 다음 단계를 따라야합니다. 1. CDN을 통해 부트 스트랩 파일 참조; 2. 자신의 서버에서 파일을 다운로드하여 호스팅하십시오. 3. HTML에 부트 스트랩 파일을 포함; 4. 필요에 따라 Sass/Less를 컴파일하십시오. 5. 사용자 정의 파일을 가져옵니다 (선택 사항). 설정이 완료되면 Bootstrap의 그리드 시스템, 구성 요소 및 스타일을 사용하여 반응 형 웹 사이트 및 응용 프로그램을 만들 수 있습니다.

See all articles