- PROGRAMMING

[CSS] CSS 선택자, CSS 속성, 반응형 웹 디자인





CSS 선택자(Selector)

  • 선택자는 CSS에서 스타일을 적용할 요소를 지정하는 역할을 합니다.



1. 기본 선택자

선택자설명예제
*모든 요소 선택* { margin: 0; }
태그명특정 태그 선택p { color: red; }
.클래스명클래스 선택.text { font-size: 20px; }
#아이디명ID 선택#main { background-color: gray; }


h1 { color: blue; }      /* 태그 선택자 */
.text { color: green; }  /* 클래스 선택자 */
#main { font-size: 24px; } /* ID 선택자 */


<h1>제목</h1>
<p class="text">이것은 클래스 스타일이 적용된 문장입니다.</p>
<p id="main">이것은 ID 스타일이 적용된 문장입니다.</p>



2. 복합 선택자

선택자설명예제
A BA 안에 있는 B 선택div p { color: red; }
A > BA의 직계 자식 B 선택div > p { font-weight: bold; }
A + BA 바로 다음 형제 B 선택h1 + p { color: blue; }


div p { color: red; }   /* div 내부의 모든 p 태그 */
div > p { font-size: 18px; } /* div의 직계 자식 p */
h1 + p { font-style: italic; } /* h1 바로 다음 p */


<div>
    <p>이것은 빨간색입니다.</p> <!-- div 내부 -->
</div>
<h1>제목</h1>
<p>이것은 기울임 글씨입니다.</p> <!-- h1 바로 다음 p -->



CSS 속성 (Property)

  • CSS는 다양한 속성을 제공하며, 대표적인 속성은 다음과 같습니다.


1. 글꼴 및 텍스트 스타일

속성설명예제
color글자 색상color: red;
font-size글자 크기font-size: 20px;
font-weight글자 굵기font-weight: bold;
text-align정렬text-align: center;
line-height줄 간격line-height: 1.5;


p {
    color: blue;
    font-size: 16px;
    text-align: center;
}



2. 박스 모델 (Box Model)

  • CSS에서 모든 요소는 박스 모델을 따릅니다.
  • 박스 모델은 margin, border, padding, width, height로 구성됩니다.
    1. width (너비)
    2. height (높이)
    3. padding (안쪽 여백)
    4. border (테두리)
    5. margin (바깥 여백)


┌─────────────────────────────┐
│           margin            │
│  ┌───────────────────────┐  │
│  │        border         │  │
│  │  ┌─────────────────┐  │  │
│  │  │     padding     │  │  │
│  │  │  ┌───────────┐  │  │  │
│  │  │  │  content  │  │  │  │
│  │  │  └───────────┘  │  │  │
│  │  └─────────────────┘  │  │
│  └───────────────────────┘  │
└─────────────────────────────┘


.box {
    width: 200px;
    height: 100px;
    padding: 10px;
    border: 2px solid black;
    margin: 20px;
}


<div class="box">박스 모델 예제</div>



3. 배경 및 테두리

속성설명예제
background-color배경 색상background-color: yellow;
border테두리 설정border: 2px solid black;
border-radius모서리 둥글게border-radius: 10px;


.container {
    background-color: lightgray;
    border: 2px dashed red;
    border-radius: 10px;
}



4. 레이아웃

속성설명예제
display요소 표시 방식display: flex;
position위치 지정position: absolute;
float요소 띄우기float: right;


.container {
    display: flex;
    justify-content: center;
    align-items: center;
}



반응형 웹 디자인 (Responsive Web)



1. 미디어 쿼리(Media Query)

  • 미디어 쿼리를 사용하면 화면 크기에 따라 스타일을 다르게 적용할 수 있습니다.


/* 브라우저 너비가 600px 이하일 때 배경색이 바뀜 */

@media (max-width: 600px) {
    body {
        background-color: lightblue;
    }
}



seuheu

최근 게시물

[Linux] Rocky Linux 9.5 NFS 구성 및 테스트 가이드 (rw/ro + root_squash 비교)

https://youtu.be/n8-wlkZiqio 1. 개요 NFS(Network File System)를 설치하고, rw/ro 및 root_squash 옵션에 따른 접근 제어와 성능을 테스트하는 방법을 정리한 가이드입니다.…

%일 전

[Linux] Rocky Linux 9.5 Cron 설정 및 테스트 방법

https://youtu.be/4MVxzmepY3s 1. 개요 리눅스에서 정기적으로 실행되는 작업(백업, 로그 정리, 모니터링 등)은 cron 서비스를 통해 자동화할 수 있습니다.…

%일 전

[Linux] Rocky Linux 9.5 계정 관리 (생성 · 권한 · 잠금 · 삭제) 정리

https://youtu.be/vPfxWFBE1yc 1. 개요 리눅스 서버를 운영할 때 사용자 계정 생성, 비밀번호 설정, 권한 부여, 계정…

%일 전

[Linux] Rocky Linux 9.5 Chrony로 시간 동기화 설정하기

https://youtu.be/Gvp2XwBfoKw 1. 개요 리눅스 서버에서는 시스템 시간(OS 시간) 과 하드웨어 시간(RTC, Real-Time Clock) 을 동기화하는 것이 매우 중요합니다. 클러스터…

%일 전

[Linux] Rocky Linux 9.5 리눅스 시간 관리 입문: 하드웨어(RTC)와 시스템(OS) 시간 개념부터 동기화까지

https://youtu.be/pt9qhawl8LY 1. 개요 리눅스 서버에서는 시스템 시간(OS 시간) 과 하드웨어 시간(RTC, Real-Time Clock) 을 모두 관리할 수 있습니다. 운영체제의…

%일 전

[Linux] Rocky Linux 9.5 타임존(Timezone)이 뭐예요? 리눅스 시간 확인과 변경 방법

https://youtu.be/iPdHGXh7DUg 1. 개요 서버 운영 시 시스템 시간이 올바르게 설정되어 있지 않으면 로그 분석, 모니터링,…

%일 전