카테고리 없음

[CSS] 주석 및 선택자

김씨 학생 2024. 1. 20. 17:15
주석

CSS 주석

/* 주석 내용 */

 

 

 

CSS 선택자

전체 선택자 스타일을 모든 요소에 적용할 때 사용한다.
주로 모든 하위 요소에 한꺼번에 스타일을 적용할 때 사용하고
전체 선택자는 asterisk(*) 기호를 사용한다.
태그 선택자 특정 태그가 쓰인 모든 요소에 스타일을 적용한다.
선택자 위치에 태그명을 작성하면 사용된 모든 해당 태그에 동일한 스타일이 적용된다.
클래스 선택자 클래스 선택자는 특정 집단의 여러 요소를 한 번에 선택할 때 사용한다.
같은 클래스 이름(class="")을 가지는 요소들을 모두 선택해주고
스타일 적용 시 선택자에 ".클래스명"을 작성해준다.
아이디 선택자 아이디 선택자는 특정 요소를 선택할 때 사용한다.
스타일을 지정할 때 사용되며, 선택자 부분에 "#아이디명"을 작성한다.
그룹 선택자 여러 선택자에 같은 스타일을 적용할 경우 쉼표로 구분해서 여러 선택자를
나열한 후 스타일은 한 번만 정의한다.

 

 

 

선택자 예시

1. 전체 선택자

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>전체 선택자</title>
    <style>
        /* CSS 문법 사용 가능 */
        * {
            color: red;
        }
    </style>
</head>
<body>
    <h1>전체 선택자</h1>
    <h2>전체 선택자의 기호</h2>
    <p>전체 선택자는 asterisk(*) 기호를 사용한다.</p>
</body>
</html>

 

- 모든 요소에 대해 스타일을 적용합니다. 해당 코드에서는 h1, h2, p 태그의 글자가 빨간색으로 바뀝니다.

그러나 요즘은 최적화 문제로 '*' 대신 'body'를 사용합니다.

 

- 주로 페이지의 웹 사이트의 폰트를 설정할 때 많이 사용합니다.

 

 

2. 태그 선택자

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>태그 선택자</title>
    <style>
        /* h2 태그의 글자색을 파란색으로 설정 */
        h2 {
            color: blue;
        }

        /* p태그의 글자 크기(font-size)를 12px로 설정, 기본 브라우저의 글자 크기는 16px */
        p {
            font-size: 12px;
        }
    </style>
</head>
<body>
    <h1>HTML 태그 선택자</h1>
    <h2>특정 태그를 사용한 요소에 스타일 적용하기</h2>
    <p>
        전체 선택자 다음으로 많은 요소들에 스타일을 적용하는 태그 선택자(tag selector)는<br>
        특정 태그가 쓰인 모든 요소에 스타일을 적용한다.
    </p>
</body>
</html>

 

- 해당 HTML 문서내에 모든 h2 및 p 태그에 각각 스타일이 적용됩니다.

 

 

3. 클래스 선택자

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>클래스 선택자</title>
    <style>
        .blue-text {
            color: blue;
        }

        /* span태그를 빨간색 색상으로 설정 */
        .red-text {
            color: red;
            letter-spacing: 2px; /* 글자 간격 조정 */
        }

        .green-text {
            color: green;
        }
    </style>
</head>
<body>
    <h1>클래스 선택자</h1>
    <h2 class="blue-text">특정 부분에 스타일 적용하기</h2>
    <p class="blue-text">
        태그 선택자를 지정하면 그 태그가 사용된 모든 요소에 적용된다.
    </p>
    <p>
        그런데, 같은 태그라도 서로 다른 스타일을 사용하고 싶다면 어떻게 해야할까?
        <span class="red-text">특정 그룹에만 스타일을 적용할 때 사용하는 것이 클래스 선택자이다.</span>
        클래스 이름은 나중에 기억하기 쉬운 이름으로 지정하고,
        여러 번 중복하여 이름을 설정할 수 있다.
    </p>

    <h2>클래스 선택자</h2>
    <p>
        <span class="red-text">클래스 선택자는</span>
        <strong class="green-text">class=&ldquo;greentext&rdquo;</strong>
        처럼 적용하고, 어느 태그에서나 사용할 수 있다.
    </p>
</body>
</html>

 

- 태그 속성의 'class' 값이 'blue-text' , 'red-text' , 'greem-text' 인 값을 각각의 스타일을 적용시킵니다.

id 선택자와 함께 가장 많이 사용됩니다.

".클래스명"으로 선택할 수 있습니다.

 

4. 아이디 선택자

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>아이디 선택자</title>
    <style>
        #container {
            border: 2px solid black;
            background-color: red;
            width: 400px;
            height: 200px;
        }
    </style>
</head>
<body>
    <div id="container"></div>
</body>
</html>

 

HTML 문서 내에 태그 속성이 'id'값이 'container'인 것에 해당 스타일을 적용합니다.

그러나 ID는 클래스와 달리 하나만 선택이 됩니다.

"#아이디명"으로 선택할 수 있습니다.

 

 

5. 그룹 선택자

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>그룹 선택자</title>
    <style>
        h1, h2 {
            /* 블록요소에 사용가능한 스타일, 내부에 있는 내용 또는 인라인 요소를 정렬한다.*/ 
            text-align: center; 
        }

        h1 {
            color: brown;
        }

        h2 {
            color: coral;
        }

        p.gray, p.red {
            padding: 10px;
        }

        .gray {
            color: gray;
        }

        .red {
            color: red;
        }
    </style>
</head>
<body>
    <h1>그룹(group) 선택자</h1>
    <h2>
        선택자를 이용해서 스타일을 정의하다 보면, 
        여러 선택자에 공통된 스타일이 사용되는 경우가 있다.
    </h2>
    <p class="gray">
        이럴 때에는 쉼표로 구분해서 여러 선택자를 나열한 후 
        스타일을 한 번만 정의하면 소스코드 작성이 간편해진다.
    </p>
    <p class="red">
        예를 들어 h1 태그와 h2 태그를 사용한 내용을 모두 화면 중앙에 정렬하고 싶다면,
        그룹 선택자에 h1, h2 {<strong>text-align: center;</strong>}로
        스타일을 정의할 수 있다.
    </p>
</body>
</html>

 

- 그룹 선택자를 사용하면 같은 스타일이 필요한 요소를 하나의 클래스를 만들어 공통으로 사용하게 할 수 있습니다.

h1, h2 { /* 스타일 내용 */ } 으로 하면 h1, h2 태그가 모두 아래 정의된 스타일 내용이 적용됩니다.

 

 

 

ID 선택자와 Class 선택자의 차이

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>id 속성과 class 속성</title>
    <style>
        #a {
            color: coral;
        }

        .x {
            color: blueviolet;
        }

        .y {
            color: magenta;
        }

        .z {
            color: maroon;
        }
    </style>
</head>
<body>
    <span>클래스와 아이디 속성</span>
    <span id="a" class="x y z">
        아이디는 단 한 개의 값만 작성할 수 있고, 클래스는 여러 개의 값을 작성할 수 있다.
    </span>
</body>
</html>

 

- ID 선택자는 HTML 문서 내에서 같은 이름의 아이디명 하나만 만들고 사용할 수 있고, 한 태그 내에서 여러 개의 아이디를 사용할 수 없습니다.

- 반면 Class 선택자는 여러 개의 클래스명을 쓸 수 있으며 여러 개의 클래스를 적용할 수 있습니다.