CSS(2)

오늘 배운 것

1. CSS (Cascading Style Sheets) 2

display

  • 웹페이지의 레이아웃을 결정하는 핵심 속성이다.
  • 주요 속성 값:
    • block: 항상 새 줄에서 시작하며, 너비와 높이를 가질 수 있다. 지정하지 않으면 너비는 100%가 된다. div, p, h1~h6 태그 등이 기본값이다.
    • inline: 줄바꿈 없이 다른 요소와 같은 줄에 배치된다. 너비와 높이를 적용할 수 없으며, 콘텐츠의 크기만큼만 공간을 차지한다. span, a 태그 등이 기본값이다.
    • inline-block: inline처럼 줄바꿈이 없지만, block처럼 너비와 높이를 지정할 수 있다. button, input 태그 등이 기본값이다.
    • none: 요소를 렌더링하지 않아 화면에서 완전히 사라지게 한다. 차지하던 공간도 없어진다.
      • visibility: hidden과의 차이점: visibility: hidden은 요소를 보이지 않게만 할 뿐, 원래 차지하던 공간은 그대로 유지한다.
  • Flexbox: 1차원 레이아웃을 위한 모델로, 요소들을 효율적으로 배치, 정렬, 분산시킬 수 있다.
    • 부모 요소에 display: flex;를 적용하여 자식 아이템들을 정렬한다.
    • 주요 축(Main Axis)교차 축(Cross Axis) 의 개념이 중요하다.
    • Flex Container 속성 (부모에게 적용):
      • flex-direction: 아이템이 배치될 주축의 방향을 설정한다 (row, column 등).
      • justify-content: 주축 방향의 정렬 방식을 설정한다 (flex-start, center, space-between 등).
      • align-items: 교차 축 방향의 정렬 방식을 설정한다 (stretch, center 등).
      • flex-wrap: 아이템들이 한 줄에 맞지 않을 때 줄바꿈 여부를 설정한다.
      • align-content: 여러 줄로 배치되었을 때의 교차 축 정렬을 다룬다.
      • gap: 아이템 사이의 간격을 설정한다.
    • Flex Item 속성 (자식에게 적용):
      • align-self: 개별 아이템의 교차 축 정렬을 따로 설정한다.
      • flex-grow: 컨테이너에 여백이 있을 때 아이템이 늘어나는 비율을 설정한다.
      • flex-shrink: 컨테이너 공간이 부족할 때 아이템이 줄어드는 비율을 설정한다.
      • order: 아이템의 배치 순서를 지정한다.

float & clear

  • 본래 이미지를 띄워 주변에 텍스트를 배치하기 위한 속성이었으나, 과거에는 레이아웃 구성에도 사용되었다.
  • float 속성은 요소를 일반적인 문서 흐름에서 벗어나게 하여 좌우로 띄운다.
  • clear 속성은 float의 영향을 받지 않고, 띄워진 요소 아래로 배치되도록 한다.
  • 최근에는 레이아웃 구성 시 flexgrid를 사용하는 것이 권장된다.

position

  • 요소를 문서 내에 어떻게 배치할지 지정하는 속성이다.
  • 주요 속성 값:
    • static: 기본값으로, 일반적인 문서 흐름에 따라 배치된다. top, left 등의 속성이 적용되지 않는다.
    • relative: 자신의 원래 위치(static 위치)를 기준으로 top, left 등을 사용해 상대적으로 이동한다. 이동 후에도 원래 있던 공간은 그대로 차지한다.
    • absolute: static이 아닌 가장 가까운 조상 요소를 기준으로 위치가 결정된다. 만약 조상이 없으면 body 태그를 기준으로 한다. 문서 흐름에서 제거되어 다른 요소에 영향을 주지 않는다.
    • fixed: 뷰포트(viewport)를 기준으로 위치가 고정되어 스크롤을 해도 움직이지 않는다.
  • z-index: position 속성이 있는 요소들의 쌓임 순서를 결정한다. 숫자가 높을수록 위에 배치된다.

반응형 웹 (Responsive Web)

  • 웹에 접속하는 디바이스의 종류(화면 크기)에 따라 페이지의 레이아웃이 자동으로 재조정되는 웹 디자인 기법이다.
  • 미디어 쿼리(Media Query):
    • @media 규칙을 사용하여 특정 조건(예: 화면 너비)에 따라 다른 CSS 스타일을 적용할 수 있다.
    • min-width, max-width 등의 조건을 사용하여 중단점(breakpoint)을 설정하고, 각 중단점마다 다른 레이아웃을 구성한다.
    • 모바일 우선(Mobile-first) 접근법: 작은 화면(모바일)의 스타일을 기본으로 작성하고, 미디어 쿼리를 사용해 화면이 커짐에 따라 스타일을 추가하거나 재정의하는 방식이 일반적이다.

내일 할 일

  1. 알고리즘, 정처기 필기 공부

results matching ""

    No results matching ""