WEB/CSS_ concepts

[CSS] box-sizing 속성 / content-box (x) vs ♥border-box(o)♥

bay07 2024. 3. 10. 13:35

https://bayleaf07.tistory.com/102

 

CSS Box Model _ 구성요소

보호되어 있는 글입니다. 내용을 보시려면 비밀번호를 입력하세요.

bayleaf07.tistory.com


box-sizing 속성

content-box (x) vs ♥border-box(o)♥ 비교하기 

  <style>
    .box {
      width: 200px;
      border: 4px solid black;
      padding: 20px;
      margin: 30px;
    }

    .content-box {
      box-sizing: content-box;
      background-color: rgb(241, 102, 52);
    }

    .border-box {
      box-sizing: border-box;
      background-color: rgb(62, 241, 125);
    }
  </style>

 

 

content-box(X) ♥border-box(O)♥
내가 설정한 박스 사이즈는 200px이다.
그런데, 실제로 잡히는 width값은 248px ㅇㅅㅇ !

Q. 왜 그럴까?
content 200px + padding 20px*2 + border4px*2  = 248px
내가 원하는 값과는 다르게 나온다
너무 불편... ㅠㅠ 
내가 설정한 박스 사이즈는 200px이다.
내가 원하는대로 width값이 잘 잡혔다.

 

 

그렇기 때문에, 코드를 적을 때

맨 처음에 전체 선택자를 사용해서 border-box 설정을 해주자. 


▷ 전체 코드 

더보기
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
  <style>
    .box {
      width: 200px;
      border: 4px solid black;
      padding: 20px;
      margin: 30px;
    }

    .content-box {
      box-sizing: content-box;
      background-color: rgb(241, 102, 52);
    }

    .border-box {
      box-sizing: border-box;
      background-color: rgb(62, 241, 125);
    }
  </style>
</head>

<body>
  <div class="box content-box">content-box(X)</div>
  <div class="box border-box">♥border-box(O)♥</div>
</body>

</html>