본문 바로가기
기본개념

CSS(내가 정리한 내용)

by 김수갱 2021. 12. 27.

CSS에 대해 알아보자


 

CSS는 HTML이란 뼈대 위에 덮는 살이라고 생각하면 된다

 

CSS는 HTML과 연동되어 HTML디자인, 이미지 삽입 등으로 꾸며줄 수 있다

 

HTML 문서 안 <head>에서 <style> 태그로 내부 스타일시트를 통한 디자인도 가능하지만

 

일정 단계로 올라가면 CSS파일을 따로 만들어 외부 스타일시트로 HTML과 연결시킨다

 

그 형태는

 

<head>
    <meta charset="utf-8">
    <title>나의 CSS 실험</title>
    <link rel="stylesheet" href="styles.css">
  </head>

 

이렇게 <head>안에 <link>안 href에 css를 연결 시킨다

 

가장 안좋은 방법은 인라인 스타일시트로 절대 써서는 안된다

 

<body>
    <h1 style="color: blue;background-color: yellow;border: 1px solid black;">헬로우 월드!</h1>
    <p style="color:red;">이것은 나의 첫 번째 CSS 예제입니다</p>
  </body>

(인라인 스타일시트의 예시)

 


 

 

CSS의 구조


 

CSS를 생성하면 HTML과 다르게 기본적인 내용이 들어가 있지 않다

 

CSS의 구조는 다음과 같다

 

h1 {
    color: red;
    font-size: 5em;
}

 

h1이라는 태그 뒤에 {    중괄호 열기가 이어지고

 

{    }안에 color라는 속성: 콜론이 이어지고

 

red라는 속성 값; 세미콜론이 이어지고 } 중괄호 닫기로 끝이난다

 

 


 

CSS의 특징과 선택자


 

 

주석

CSS 의 주석은 ' /* ' 로 시작하고  ' */ ' 끝난다

 

 

클래스 선택자

<head>
    <style>
        .blue {
            color: blue;
        }
    </style>
</head>
<body>
    <h2 class="blue">blue, .클래스 선택자</h2>
</body>

위와 같이 예시로 <h2 라는 태그 안에 class = " " 의 형태로 클래스를 지정한다

 

그리고 <style>태그 안에 .클래스이름 형태로 . 을 찍고 클래스의 이름을 적으면 클래스 선택자 할당이 끝난다

 

 

아이디 선택자

<head>
    <style>
        #green {
            color: green;
        }
    </style>
</head>
<body>
    <h3 id="green">green, #아이디 선택자</h3>
</body>

 

위와 같이 예시로 <h3 라는 태그 안에 id = " " 의 형태로 아이디를 지정한다

 

그리고 <style>태그 안에 #아이디이름 형태로  #을 찍고 아이디의 이름을 적으면 아이디 선택자 할당이 끝난다

 

 

클래스와 아이디의 차이

 

id 아이디 선택자는 스타일을 지정할 떄 한 가지만 지정해서 쓰는 이름이고
 
하나의 문서에 고유한 id하나만 쓸수 있다

 

class 클래스 선택자는 그룹으로 묶어서 스타일을 지정할 때 쓰는 이름이다.

 

하나의 문서에 여러번 쓸수 있다. 고유값이 아니다

 

 

복합 선택자

 

자손 선택자

 

모든 자손들이 선택됨.

아래의 경우, section 태그 안에 있는 모든 ul 태그에 속성이 적용됨.

section ul {
    margin: 10px 0;}

 

자식 선택자

 

 지정된 자식에게만 속성이 적용됨

section > ul > li {
    font-size: 20px;
    font-weight: bold;
}

 

형제 선택자

 

 a + ul : 같은 부모 내, a의 형제 요소 중 바로 뒤 (다음)의 ul에 적용

 a ~ ul : a의 형제 요소 중, a 뒤에 오는 모든 ul에 적용

a + ul {
    background-color: gold;}
a ~ ul {
    border: 1px solid darkgray;}

 

속성 선택자

 

class 속성을 가진 ul 태그 중, li 라는 자손 모두에 적용

target 속성을 가지며, 그 값이 _self인 a태그에 적용

ul[class] li {
    width: 24%;
    height: 50px;
    display: inline-block;
}

a[target="_self"] {
    border: 1px solid darkgray;
    border-radius: 5px;
    background-color: white;
    padding: 5px;
}

 


CSS 디자인 종류


 

크기

 

콘텐츠 영역

width, height 콘텐츠 영역의 크기를 다루는 속성
단위 : px, em, %(가변), auto(기본값)

 

박스 전체

box-sizing
box-sizing: border-box를 추가하면 된다.
border-box 테두리까지 포함
content-box 기본값

 

여백

 

가장 많이 쓰는 요소가 아닐까 싶다

 

margin은 요소 간

padding은 테두리와 콘첸츠 사이

 

테두리의 지정 순서도 있는데 top - right - bottom - left 순서이다

 


 

기타 많이 있는데 내 능력상 여기가 한계인듯 싶고

 

그래서 다른 우수한 코딩 고수님들의 사이트를 참조해야 한다고 본다

 

 

CSS 알기 쉽게 설명 해주시는 고수님 추천


https://studiomeal.com/archives/197 <- 영상이 아닌 글로 쓰기에 이정도로 잘 정리할 수 있나 싶다

 

그럼 코린이는 이만 .. 

'기본개념' 카테고리의 다른 글

DOM  (0) 2021.12.30
jQuery  (0) 2021.12.30
JSON  (0) 2021.12.30
AJAX  (0) 2021.12.30
HTML(내가 정리한 내용)  (0) 2021.12.27