본문 바로가기

스터디/web

[노마드코더] 바닐라 JS로 크롬 앱 만들기 #1 INTRODUCTION | CSS3 독학백서, 이도해

반응형

앞의 HTML 글에 이어 CSS 관련 스터디 한 내용을 이어 적어보고자 한다.

밀리의 서재 - "CSS3 독학백서, 이도해" 를 참고했다.

 

HTML - 폼을 어떻게 작성하는지, 인풋, 버튼, body, head 
CSS - class와 id의 차이점, selector

 

CSS

 class 와 id는 HTML 태그를 특정하기 위해 사용되는 속성으로, 태그에 정의된 클래스 및 아이디는 CSS, Javascript 등에서 선택자로 사용된다.

 

  • class

  id 보다 유연한 속성으로, 한 번 선언되고 사용된 클래스를 다른 태그에도 중복하여 사용할 수 있다. 또한 class는 하나의 태그에 띄어쓰기로 구분한 여러개의 클래스를  적용할 수도 있다.

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" />
        <style>
            .background {
                background-color: pink;
            }
            .name {
                color: blue;
                font-weight: bold;
            }
        </style>
    </head>
    <body>
        <div>
            <h2 class="background">HTML의 역사</h2>
            <p>
                HTML 최초의 일반 공개 설명은 1991년 말에 <span class="background name">버너스리</span>가 처음으로 인터넷에서 문서를 <span class="background name">"HTML 태그"(HTML tag)</span>로 부르면서 시작되었다.
            </p>
        </div>
    </body>
</html>

 

class 테스트

 

  • id

 class와 달리, 문서 전체에서 단 한번만 선언되고 사용될 수 있으며, 이미 사용하고 있는 id는 다른 태그에 중복으로 사용할 수 없고, 태그 당 하나의 아이디만 적용할 수 있다. 단, 각각의 규칙을 위반하지 않는 선에서 하나의 태그에 id와 class를 모두 적용할 수 있다.

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" />
        <style>
            #background {
                background-color: silver;
            }
            .content {
                font-family: Times, serif;
                line-height: 180%;
            }
            .name {
                color: blue;
                font-weight: bold;
            }
        </style>
    </head>
    <body>
        <div id="background" class="content">
            <h2 class="name">HTML의 역사</h2>
            <p>
                HTML 최초의 일반 공개 설명은 1991년 말에 <span class="name">버너스리</span>가 처음으로 인터넷에서 문서를 <span class="name">"HTML 태그"(HTML tag)</span>로 부르면서 시작되었다.
            </p>
        </div>
    </body>
</html>

id 테스트

 

  • Selector

Selector란 스타일을 적용할 대상을 선택하기 위한 식별자를 의미하며, 다음과 같은 네 가지 기본 선택자가 존재한다.

  1. 전체 선택자 : * 기호를 사용하며, HTML 문서 내 모든 요소들을 선택
  2. 태그 요소 선택자 : HTML 문서 내 해당 태그 요소들을 선택
  3. 아이디 선택자 : HTML 요소에 id 속성의 값으로 지정된 문자 앞에 # 기호를 붙여 사용하며, 해당 id를 사용하는 요소를 선택
  4. 클래스 선택자 : HTML 요소에 class 속성의 값으로 지정된 문자 앞에 . 기호를 붙여 사용하며, 해당 클래스를 사용하는 요소들을 선택

예제를 보는 것이 나중에도 더 이해에 좋을 것 같아 작가님 github 코드를 가져왔다.

 

- index.html

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <link rel="stylesheet" href="./style.css" />
        <title>Document</title>
    </head>
    <body>
        <h1>Hello World!</h1>

        <div>hello</div>
        <p>hello</p>
        <span>hello</span>

        <p>Hello World!</p>
        <p>Hello World!</p>
        <p id="title">Hello World!</p>

        <div class="first">First Group</div>
        <div class="first">First Group</div>
        <div class="second">Second Group</div>
        <div class="second">Second Group</div>

        <div>
            <p>자손 선택자</p>
        </div>

        <div class="parent">
            <p>자식 선택자</p>
        </div>
    </body>
</html>

- style.css

/* 전체 선택자 */
* {
    color: grey;
}

/* 태그 요소 선택자 */
h1 {
    color: red;
}

/* id 선택자 */
#title {
    color: red;
}

/* class 선택자 */
.first {
    background-color: green;
}

.second {
    background-color: yellow;
}

/* 다중 선택자 */
h1,
#title,
.first,
.second {
    font-weight: bold;
    font-style: italic;
}

/* 결합 선택자 */
div p {
    color: blue;
}

.parent > p {
    color: green;
}

Selector 테스트

 

 

* 참고도서

CSS3 독학백서, 이도해

https://github.com/dalmoori/basic-css3-2021

반응형