css 기초 정리 - 1

CHan·2022년 11월 7일
0

css

선택자 - 특정 태그를 사용하여, 해당 태그의 속성을 변경하는 목적으로 사용된다.
선택자 안에 스타일 속성과 속성값을 넣으면 된다.


tag 선택자

특정 태그를 선택하여 css 속성을 적용할 수 있다. (li, p, hn, div 등)

* 선택자

전체라는 의미의 * 선택자를 사용하면 문서 전체를 선택하는 의미이다.
주로 전체 속성을 지정하고 후에 태그 선택자를 사용한다.
css 초기화 할 때 사용한다.

id(#)와 class(.)

태그의 id와 class를 이용하여 css 속성을 설정 할 수 있다.
<div id=“wrap”>이면 css에서 #wrap { }으로 사용하면 된다.
<div class=“content”>이면 css에서 .content { }로 사용하면 된다.

속성 선택자

태그의 속성을 선택하여 css의 속성을 설정할 수 있다.
ex) input[type=“text”], img[src]

후손 및 자손 선택자

태그의 속성을 선택하여 css의 속성을 설정할 수 있다. 
후손이 더 큰 개념
후손 – div p { }, div li { }
자손 – div > h1 { }

동위 선택자(+, ~)

태그의 동등한 위치를 판단하여 css의 속성을 설정할 수 있다.  
~는 동등한 위치의 태그를 모두 선택, +는 동등한 위치의 태그 중 바로 밑을 선택

반응 선택자

마우스의 반응에 따른 속성을 설정할 수 있다.
:hover { }

상태 선택자

상태에 따라서 css속성이 변하는 설정을 할 수 있다.
:focus { }, input:enabled { }, input:disabled { }

구조 선택자

구조에 따라서 css 속성이 변하는 설정을 할 수 있다.
:first-child { }, :last-child { }
:nth-child { 2n+1 }
:first-of-type { }, :last-of-type { }

문자 선택자

특정 문자 또는 문자열을 선택하여 css 속성을 설정할 수 있다.
::first-letter { }, ::first-line { } 
::selection { } - selection은 드래그 했을 때 

링크 선택자

문서에서 링크로 되어 있는 문자를 선택하여 css 속성을 설정할 수 있다.
a::after { content: ‘ - ’ attr(href); }
-> 구글 – http://www.google.com 이런식으로 출력 됨

부정 선택자

나를 제외한 모든 태그에 css 속성을 적용할 수 있다.
::not(.클래스이름) { } - 선택한 클래스를 제외한 것에 스타일 적용

CSS 구체성 단위

여러가지 형태로 조합된 css 셀렉터는 태그, class, id 형식의 요소가
몇 번 지정되었는가에 따라 각각 점수를 부여 받는다.

부여된 점수가 높은 형식이 우선적으로 적용된다.

	태그								       1점
	클래스 	  						      10점
	ID		   						     100점
	HTML태그의 style 속성 사용			1000점

사용 예제

<style>
      * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
        list-style: none;
      }
      header,
      footer {
        background-color: paleturquoise;
      }
      body {
        border: 1px solid black;
        width: 400px;
        margin: 0 auto;
        text-align: center;
      }
      #wrap {
        border: 1px solid #999999;
      }
      .container {
        background-color: skyblue;
      }
      .container ul li:first-child {
        color: white;
      }

      .container ul li:nth-child(2n) {
        color: cornflowerblue;
        background-color: powderblue;
      }

      .container ul li:last-child {
        color: whitesmoke;
      }

      .container ul li::first-letter {
        color: cornflowerblue;
      }
    </style>
  </head>
  <body>
    <header>header</header>
    <main>
      <div id="wrap">
        <div class="container">
          <ul>
            <li>리스트 1</li>
            <li>리스트 2</li>
            <li>리스트 3</li>
            <li>리스트 4</li>
            <li>리스트 5</li>
            <li>리스트 6</li>
          </ul>
        </div>
      </div>
    </main>
    <footer>footer</footer>
  </body>

profile
Hello World!

0개의 댓글