๋ฐ˜์‘ํ˜•
jwss
jw ๋…ธํŠธ
jwss
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (32)
    • ํผ๋ธ”๋ฆฌ์…” ์ผ์ƒ (2)
    • Programming (25)
      • HTML (4)
      • CSS (17)
      • JavaScript (2)
      • jQuery (2)
    • Git (2)
    • Web (0)
    • ๊ฐ•์˜ ์ •๋ฆฌ (3)
      • ํผ๋ธ”๋ฆฌ์‹ฑ ์ˆ˜์—… (3)
      • ๋…ธ๋งˆ๋“œ์ฝ”๋” (0)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ
  • Programming

๊ณต์ง€์‚ฌํ•ญ

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • ์›นํผ๋ธ”๋ฆฌ์…”
  • ๊ธฐ๋ณธ๊ฐœ๋…
  • css
  • HTML
  • SASS
  • GIT
  • js

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
jwss

jw ๋…ธํŠธ

[CSS ๊ธฐ์ดˆ] ์—˜๋ฆฌ๋จผํŠธ ์ˆ˜์ง, ์ˆ˜ํ‰ ์ค‘์•™ ์ •๋ ฌํ•˜๊ธฐ (vertical align, flex, text-align, position...)
Programming/CSS

[CSS ๊ธฐ์ดˆ] ์—˜๋ฆฌ๋จผํŠธ ์ˆ˜์ง, ์ˆ˜ํ‰ ์ค‘์•™ ์ •๋ ฌํ•˜๊ธฐ (vertical align, flex, text-align, position...)

2021. 11. 6. 19:39

 

๐Ÿ”ท ์ˆ˜์ง ์ •๋ ฌ ๋ฐฉ๋ฒ•

( ์ธ๋ผ์ธ ์š”์†Œ, ๋ธ”๋ก ์š”์†Œ ๋™์ผํ•˜๊ฒŒ ์ ์šฉ๋จ )

์ˆ˜์ง์ •๋ ฌ ์‹œํ‚ค๋Š” ์š”์†Œ์˜ ๋ถ€๋ชจ ์š”์†Œ์— ๋†’์ด๋ฅผ ์ค€๋‹ค. (padding ์ค˜๋„ ok)

๐Ÿ”น vertical-allign, display ์ด์šฉ

๋ถ€๋ชจ ์š”์†Œ์— vertical-allign: middle; display: table-cell;

<!--์Šคํƒ€์ผ์ฝ”๋“œ ์ƒ๋žต-->
<html lang="ko">
<head>
  <meta charset="UTF-8">
  <title>์ˆ˜์ง์ˆ˜ํ‰ ์ •๋ ฌ</title>
  <style>
    .parent {
      vertical-align: middle;
      display: table-cell;
    }
  </style>
</head>
<body>
  <div class="parent">
    <div class="child">์ˆ˜์ง ์ค‘์•™ ์ •๋ ฌ</div>
  </div>
</body>
</html>

- ๊ฒฐ๊ณผ

 

 

 

vertical-align์€ ์›๋ž˜ block ์š”์†Œ์— ์ ์šฉํ•  ์ˆ˜ ์—†์œผ๋‚˜,

block ์š”์†Œ์˜ ๋‚ด๋ถ€ ์š”์†Œ๋Š” ์ ์šฉ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

 

 

 

๐Ÿ”น flex ํ™œ์šฉ

(1) align-items: center ์ด์šฉ

์ •๋ ฌ์‹œํ‚ฌ ์š”์†Œ์˜ ๋ถ€๋ชจ ์š”์†Œ์— display: flex; align-items: center;

<!--์Šคํƒ€์ผ์ฝ”๋“œ ์ƒ๋žต-->
<html lang="ko">
<head>
  <meta charset="UTF-8">
  <title>์ˆ˜์ง์ˆ˜ํ‰ ์ •๋ ฌ</title>
  <style>
    .parent {
      display: flex;
      align-items: center;
    }
  </style>
</head>
<body>
  <div class="parent">
    <div class="child">์ˆ˜์ง ์ค‘์•™ ์ •๋ ฌ</div>
    <div class="child">์ˆ˜์ง ์ค‘์•™ ์ •๋ ฌ</div>
  </div>
</body>
</html>

- ๊ฒฐ๊ณผ

 

(2) flex-direction, justify-content ์ด์šฉ

์ •๋ ฌ์‹œํ‚ฌ ์š”์†Œ์˜ ๋ถ€๋ชจ์š”์†Œ์— display: flex; flex-direction: column; justify-content: center;

<!--์Šคํƒ€์ผ์ฝ”๋“œ ์ƒ๋žต-->
<html lang="ko">
<head>
  <title>์ˆ˜์ง์ˆ˜ํ‰ ์ •๋ ฌ</title>
  <style>
    .parent {
      display: flex;
      flex-direction: column;
      justify-content: center;
    }
  </style>
</head>
<body>
  <div class="parent">
    <div class="child">์ˆ˜์ง ์ค‘์•™ ์ •๋ ฌ</div>
    <div class="child">์ˆ˜์ง ์ค‘์•™ ์ •๋ ฌ</div>
  </div>
</body>
</html>

- ๊ฒฐ๊ณผ

 

 

align-items์™€ ๋‹ค๋ฅธ ์ ์€ ์ฃผ์ถ•์ด y์ถ•์œผ๋กœ ๋ฐ”๋€๋‹ˆ๋‹ค.

flex์™€ ์ž์„ธํžˆ ๋‹ค๋ฃจ๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

 

 

 


๐Ÿ”ท ์ˆ˜ํ‰ ์ •๋ ฌ ๋ฐฉ๋ฒ•

๐Ÿ”น block ์š”์†Œ ์ˆ˜ํ‰ ์ •๋ ฌ

margin: 0 auto;

๋ธ”๋ก ์š”์†Œ๋ฅผ ์ˆ˜ํ‰ ๊ฐ€์šด๋ฐ๋กœ ์ •๋ ฌ.

์ •๋ ฌ ํ•ด์ค˜์•ผํ•˜๋Š” ์š”์†Œ์— ์ž‘์„ฑ.

<!--์Šคํƒ€์ผ์ฝ”๋“œ ์ƒ๋žต-->
<html lang="ko">
<head>
  <meta charset="UTF-8">
  <title>์ˆ˜์ง์ˆ˜ํ‰ ์ •๋ ฌ</title>
  <style>
    .child {
      margin: 0 auto;
    }
  </style>
</head>
<body>
  <div class="parent">
    <div class="child">์ˆ˜์ง ์ค‘์•™ ์ •๋ ฌ</div>
  </div>
</body>
</html>

- ๊ฒฐ๊ณผ

 

 

์ƒํ•˜๋‹จ margin์€ 0, ์ขŒ์šฐ margin์€ auto๊ฐ€ ๋œ๋‹ค๋Š” ์˜๋ฏธ.

์ขŒ์šฐ ๋งˆ์ง„๊ฐ’์ด auto๊ฐ€ ๋˜๋ฉด์„œ ์ขŒ์šฐ ๋งˆ์ง„ ๊ฐ’์„ ๋˜‘๊ฐ™์ด ๋งž์ถฐ์ง€๊ณ  ์ค‘์•™ ์ •๋ ฌ์ด ๋œ๋‹ค.

 

 

 

 

 

๐Ÿ”น inline ์š”์†Œ ์ˆ˜ํ‰ ์ •๋ ฌ

text-align: center;

์ธ๋ผ์ธ ์š”์†Œ๋ฅผ ๊ฐ€์šด๋ฐ๋กœ ์ •๋ ฌ

์ •๋ ฌํ•ด์ค˜์•ผํ•˜๋Š” ์š”์†Œ์˜ ๋ถ€๋ชจ ์š”์†Œ์— ์ž‘์„ฑ.

<!--์Šคํƒ€์ผ์ฝ”๋“œ ์ƒ๋žต-->
<html lang="ko">
<head>
  <meta charset="UTF-8">
  <title>์ˆ˜์ง์ˆ˜ํ‰ ์ •๋ ฌ</title>
  <style>
    .parent {
      width: 200px;
      height:200px;
      border: 1px solid red;
      text-align: center;
    }
  </style>
</head>
<body>
  <div class="parent">
    <div class="child">์ˆ˜์ง ์ค‘์•™ ์ •๋ ฌ</div>
    <span>์ธ๋ผ์ธ์š”์†Œ</span>
  </div>   
</body>
</html>

- ๊ฒฐ๊ณผ

 

 

๋ธ”๋ก์š”์†Œ์ธ div์—๋Š” ์ ์šฉ๋˜์ง€์•Š๊ณ 

์ธ๋ผ์ธ์š”์†Œ span์—๋งŒ ์ค‘์•™ ์ •๋ ฌ์ด ์ ์šฉ๋œ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

 

 

 

 


๐Ÿ”ท ์ •์ค‘์•™ ์œ„์น˜์‹œํ‚ค๊ธฐ

๐Ÿ”น position, transform ์ด์šฉ

position: absolute; left: 0; top: 0; transforom: translate(-50%, -50%);

<!--์Šคํƒ€์ผ์ฝ”๋“œ ์ƒ๋žต-->
<html lang="ko">
<head>
  <title>์ˆ˜์ง์ˆ˜ํ‰ ์ •๋ ฌ</title>
  <style>
    .parent {
      position: relative;
    }
    
    .child {
      position: absolute; 
      left: 50%; 
      top: 50%; 
      transform: translate(-50%, -50%);
    }
  </style>
</head>
<body>
  <div class="parent">
    <div class="child">์ค‘์•™ ์ •๋ ฌ</div>
  </div>   
</body>
</html>

- ๊ฒฐ๊ณผ

 

 

 

๋ถ€๋ชจ ์š”์†Œ์—๋Š” position: relative ์„ค์ • ํ•ด์ค˜์•ผํ•จ.

๋ฐ˜์‘ํ˜•

'Programming > CSS' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[CSS ๊ธฐ์ดˆ] ํฌ์ง€์…”๋‹ : position (position: relative vs position: absolute / position: fixed vs position: sticky)  (0) 2021.11.08
[CSS ๊ธฐ์ดˆ] ์—˜๋ฆฌ๋จผํŠธ ๋ฐฐ์น˜: float + clear: both, overflow: hidden  (0) 2021.11.07
[CSS ๊ธฐ์ดˆ] ๋ฐ•์Šค๋ชจ๋ธ Box Model (margin, padding, border)  (0) 2021.11.02
[CSS ๊ธฐ์ดˆ] ๋ธ”๋ก ์š”์†Œ(block element) vs ์ธ๋ผ์ธ ์š”์†Œ(inline element) vs ์ธ๋ผ์ธ ๋ธ”๋ก ์š”์†Œ (inline-block element)  (0) 2021.11.02
[CSS ๊ธฐ์ดˆ] CSS background ๋ฐฐ๊ฒฝ์„ ์ œ์–ดํ•˜๋Š” ์†์„ฑ  (0) 2021.11.01
    'Programming/CSS' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [CSS ๊ธฐ์ดˆ] ํฌ์ง€์…”๋‹ : position (position: relative vs position: absolute / position: fixed vs position: sticky)
    • [CSS ๊ธฐ์ดˆ] ์—˜๋ฆฌ๋จผํŠธ ๋ฐฐ์น˜: float + clear: both, overflow: hidden
    • [CSS ๊ธฐ์ดˆ] ๋ฐ•์Šค๋ชจ๋ธ Box Model (margin, padding, border)
    • [CSS ๊ธฐ์ดˆ] ๋ธ”๋ก ์š”์†Œ(block element) vs ์ธ๋ผ์ธ ์š”์†Œ(inline element) vs ์ธ๋ผ์ธ ๋ธ”๋ก ์š”์†Œ (inline-block element)
    jwss
    jwss
    ์•ˆ๋…•ํ•˜์„ธ์š”. ์›นํผ๋ธ”๋ฆฌ์…” ๊ณต๋ถ€ ๋ธ”๋กœ๊ทธ์ž…๋‹ˆ๋‹ค.

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”