레이아웃을 구성하는 css 박스모델 (1)

2022. 9. 9. 16:52·Front end/CSS

처음에는 웹을 만들 때 웹을 큰 하나의 화면으로 보고 모든 요소를 그 위치에 맞게 조절해야 하는 줄 알았는데 사이드바, 본문 푸터등 큰 틀을 먼저 잡아서 하나의 큰 화면을 만든다는 것을 알았다,

 

이 전에도 헤더 푸터와 같은 내용을 배웠지만 그걸 구현하는 방법을 몰랐었는데 다시 한 번 짚고 넘어가니 쉽게 이해할 수 있었다.

 

또한, 패딩과 마진같은 테두리 안에 있는 용어에 대해서도 다시한번 생각해 볼 수 있었다.


박스모델

- 블록 레벨 요소 : 태그를 사용해 요소를 삽입했을 때 혼자 한 줄을 차지하는 것 (가로로 100%)
- 인라인 레벨 요소: 태그의 콘텐츠만큼만 영역을 차지하며 다른 요소가 올 수 있음 (가로로 해당 크기만큼)

박스 모델의 기본 구성

- 콘텐츠 영역 (content)

- 패딩 (padding)

- 마진 (margin)

- 테두리 (border)

콘텐츠 영역을 지정하는 속성

- width : 가로 길이를 지정하는 속성. 직접 픽셀로 지정할 수 있고 백분율도 가능하다. 

- height : 세로 길이를 지정하는 속성. 직접 픽셀로 지정할 수 있고 백분율도 가능하다. 

→ 백분율로 지정했을 시 페이지 창에 크기에 따라 변한다.

 

박스 모델의 크기를 계산하는 속성

width 속성을 200px을 지정하고 좌우 패딩값 40px 좌우 테주리값 20px 모두 합치면 결국 총 박스의 크기는 260px이 된다.

 

그래서 box-sizing 속성을 이용하여 박스모델의 너비와 높이를 어떻게 결정할지 정한다. 

- box-sizing : 테두리까지 포함해서 너빗값 지정

- content-box : 콘텐츠영역만 너빗값 지정

 

박스모델에 그림자 효과를 주는 속성

- box-shadow: <수평거리> <수직거리> <흐림정도> <번짐정도> <색상> inset

종류 설명
<수평거리> 그림자가 가로로 얼마나 떨어져 있는지 나타냄. 필수 속성
<수직거리>  그림자가 세로로 얼마나 떨어져 있는지 나타냄. 필수 속성
<흐림정도> 값이 작을수록 그림자가 진해짐. 음수값은 사용 불가능 기본값은 0
<번짐정도> 값이 클 수록 모든 방향으로 그림자가 퍼져 크게 표시 기본값은 0
<색상>  한 가지만 지정할 수도 있고, 공백으로 구분해서 여러개의 색상을 지정할 수도 있음 기본값은 검은색
insert 키워드를 삽입했을 시에 그림자가 안쪽으로 생성

 

테두리 스타일을 지정하는 속성

- border-style : 테두리를 만들 때 필요한 속성. 기본값은 none이며 테두리를 그리려면 borser-style의 속성을 지정해야 함.

종류 설명
none 테두리가 없음. 기본값
soild 테두리를 실선으로 표시
dotted 테두리를 점선으로 표시

 

테두리에 관련된 속성

- border-width : 테두리의 두께를 지정하는 속성. 상하좌우 각각 다르게 지정할 수 있으며 한 번에 지정할 수도 있음

- border-color : 테두리의 색상을 지정하는 속성. 4면의 색상을 따로 지정할 수 있으며 한 번에 지정할 수도 있음

- borser-radius : 둥근 테두리를 만드는 속성. 원의 반지름을 이용하여 둥근 정도를 나타낼 수 있음

 

여백을 조절하는 속성

- margin : 요소 주변의 여백을 조정하는 속성. 요소와 요소 사이의 간격을 조절할 수 있다. 

margin 영역

- padding : 콘텐츠와 테두리 사이의 여백을 조정하는 속성. 테두리 안쪽의 여백

padding 영역

 

반응형
저작자표시 (새창열림)

'Front end > CSS' 카테고리의 다른 글

이미지와 그라데이션 효과로 배경 꾸미기  (2) 2022.10.02
레이아웃을 구성하는 css 박스모델 (2)  (1) 2022.09.11
텍스트를 표현하는 다양한 스타일 (2)  (0) 2022.09.01
텍스트를 표현하는 다양한 스타일 (1)  (3) 2022.08.23
웹 문서에 디자인 입히기  (0) 2022.08.20
'Front end/CSS' 카테고리의 다른 글
  • 이미지와 그라데이션 효과로 배경 꾸미기
  • 레이아웃을 구성하는 css 박스모델 (2)
  • 텍스트를 표현하는 다양한 스타일 (2)
  • 텍스트를 표현하는 다양한 스타일 (1)
re-hwi
re-hwi
재휘의 개발일기
    반응형
  • re-hwi
    Dvelopment blog
    re-hwi
  • 전체
    오늘
    어제
    • 재휘의 개발일기 (168)
      • 개발 (1)
        • 소프트웨어 공학 (25)
      • Python (18)
        • numpy (8)
      • OS (23)
        • 쉽게 배우는 운영체제 (23)
      • Front end (1)
        • HTML (6)
        • CSS (9)
        • JavaScript (18)
        • React (2)
        • Vue.js (5)
        • TypeScript (5)
        • Sass (3)
      • Algorithm (1)
        • 파이썬 알고리즘 인터뷰 (2)
        • 자료구조와 함께 배우는 알고리즘 (20)
      • Android (2)
        • 안드로이드 앱 프로그래밍 with 코틀린 (2)
      • Project (15)
      • Network (0)
      • etc (12)
        • 이것저것 (10)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    vue
    프론트엔드
    정처기
    타입스크립트
    자료흐름도
    FE
    REACT
    HTML
    자료구조
    scss
    표
    JavaScript
    티스토리챌린지
    개발
    컴포넌트
    numpy
    알고리즘
    TS
    연결리스트
    js
    뷰
    CSS
    파이썬
    오블완
    정보처리기사
    typeScript
    플레이리스트
    sass
    리액트
    pwa
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
re-hwi
레이아웃을 구성하는 css 박스모델 (1)
상단으로

티스토리툴바