GiantStepDEV
article thumbnail

μ•žμ„œ 배운 μ„ νƒμžλ₯Ό μ œλŒ€λ‘œ ν™œμš©ν•˜λ €λ©΄ μ„ μ–ΈλΆ€μ—μ„œ μ‚¬μš©ν•  수 μžˆλŠ” μŠ€νƒ€μΌ κ΄€λ ¨ 속성과 μ†μ„±μ—μ„œ μ‚¬μš©ν•  수 μžˆλŠ” 속성값을 λ°°μ›Œμ•Ό ν•©λ‹ˆλ‹€.

적용 μš°μ„  μˆœμœ„

  1. !important
  2. 인라인 μŠ€νƒ€μΌ κ·œμΉ™
  3. id κ·œμΉ™
  4. class κ·œμΉ™
  5. μš”μ†Œ κ·œμΉ™

상속

λΆ€λͺ¨ μš”μ†Œμ— 적용된 μŠ€νƒ€μΌμ„ μžμ‹ μš”μ†Œκ°€ λ¬Όλ €λ°›λŠ” 것
<!DOCTYPE html>
<html lang="ko">
<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>상속(inherit)</title>
  <style>
    div{
      color:red;
    }
  </style>  
</head>
<body>
  <div>
    <p>inherit</p>
  </div>
</body>
</html>

λ‹¨μœ„

μ ˆλŒ€ λ‹¨μœ„μ™€ μƒλŒ€ λ‹¨μœ„λ‘œ λ‚˜λˆ„μ–΄ μ§‘λ‹ˆλ‹€.
  • μ ˆλŒ€ λ‹¨μœ„ : μ–΄λ–€ ν™˜κ²½μ΄λΌλ„ λ™μΌν•œ 크기둜 λ³΄μ΄λŠ” λ‹¨μœ„ (px)
  • μƒλŒ€ λ‹¨μœ„ : λΆ€λͺ¨ μš”μ†Œ λ˜λŠ” μ›Ή λΈŒλΌμš°μ €μ˜ μ°½ 크기에 따라 μƒλŒ€μ μœΌλ‘œ κ²°μ •λ˜λŠ” λ‹¨μœ„(λ°˜μ‘ν˜•)

β­μƒλŒ€ λ‹¨μœ„

%

λΆ€λͺ¨ μš”μ†Œμ˜ 속성값에 λŒ€ν•œ μƒλŒ€μ μΈ 크기

.parent {
    font-size: 16px;
}
.child {
    font-size: 80%; 
}

.child-to-child {
    font-size: 80%;
}
<!DOCTYPE html>
<html lang="ko">
<head>
	<link rel="stylesheet" href="/css/λ‹¨μœ„.css">
</head>
<body>
  <div class="parent">
	<p>λΆ€λͺ¨μ˜ 폰트 크기 μž…λ‹ˆλ‹€.</p>
	<div class="child">
		<p>μžμ‹μ˜ 폰트 크기 μž…λ‹ˆλ‹€. </p>
		<div class="child-to-child"></div>
	</div>
  </div>
</body>
</html>

em

λΆ€λͺ¨ μš”μ†Œμ˜ ν…μŠ€νŠΈ 크기λ₯Ό κΈ°μ€€μœΌλ‘œ μƒλŒ€μ μΈ 크기

.parent {
    font-size: 16px;
}
.child {
    font-size: 2em; /* 16px λΆ€λͺ¨ 크기의 2λ°°*/
}

.child-to-child {
    font-size: 2em;
}
<!DOCTYPE html>
<html lang="ko">
<head>
	<link rel="stylesheet" href="/css/λ‹¨μœ„.css">
</head>
<body>
  <div class="parent">
	<p>λΆ€λͺ¨μ˜ 폰트 크기 μž…λ‹ˆλ‹€.</p>
	<div class="child">
		<p>μžμ‹μ˜ 폰트 크기 μž…λ‹ˆλ‹€. </p>
		<div class="child-to-child">
			<p>μžμ‹μ˜ μžμ‹ 폰트 크기 μž…λ‹ˆλ‹€.</p>
		</div>
	</div>
  </div>
</body>
</html>

rem

html νƒœκ·Έμ˜ ν…μŠ€νŠΈ 크기에 λŒ€ν•œ μƒλŒ€μ μΈ 크

html {
    font-size: 1rem;
}
.parent {
    font-size: 2rem;
}
.child {
    font-size: 2rem;
}
<!DOCTYPE html>
<html lang="ko">
<head>
	<link rel="stylesheet" href="/css/λ‹¨μœ„2.css">
</head>
<body>
  <div class="parent">
	<p>λΆ€λͺ¨μ˜ 폰트 크기 μž…λ‹ˆλ‹€.</p>
	<div class="child">
		<p>μžμ‹μ˜ 폰트 크기 μž…λ‹ˆλ‹€. </p>
	</div>
  </div>
</body>
</html>

vw, vh

vw λ‹¨μœ„λŠ” 뷰포트 λ„ˆλΉ„λ₯Ό κΈ°μ€€μœΌλ‘œ μƒλŒ€μ μΈ 크기

1vw : 뷰포트 λ„ˆλΉ„μ˜ 1/100 크기λ₯Ό 의미, 뷰포트의 κΈ°λ³Έ λ„ˆλΉ„λŠ” 900px

1vh : 뷰포트 λ†’μ΄μ˜ 1/100 크기λ₯Ό 의미, 뷰포트의 κΈ°λ³Έ λ†’μ΄λŠ” 400px

.parent {
    font-size: 1vw;
}
.child {
    font-size: 2vw; 
}
.child-to-child {
    font-size: 3vw;
}
<!DOCTYPE html>
<html lang="ko">
<head>
	<link rel="stylesheet" href="/css/λ‹¨μœ„.css">
</head>
<body>
  <div class="parent">
	<p>λΆ€λͺ¨μ˜ 폰트 크기 μž…λ‹ˆλ‹€.</p>
	<div class="child">
		<p>μžμ‹μ˜ 폰트 크기 μž…λ‹ˆλ‹€. </p>
		<div class="child-to-child">
			<p>μžμ‹μ˜ μžμ‹ 폰트 크기 μž…λ‹ˆλ‹€. </p>
		</div>
	</div>
  </div>
</body>
</html>

μ•Œμ•„λ‘λ©΄ 쒋은 상식!

 

ν’€HD둜 ν‘œν˜„ν•  수 μžˆλŠ” μƒ‰μƒμ˜ μˆ˜λŠ”? 1920(w) * 1080(h) * 3byte

ν…μŠ€νŠΈ 속성

font-family 속성

πŸ‘‰ μ†μ„±κ°’μœΌλ‘œ κΈ€κΌ΄λͺ…을 적고, 콀마(,)둜 κ΅¬λΆ„ν•˜κ³  1개 μ΄μƒμ˜ 글꼴을 λ‚˜μ—΄ν•΄ μ§€μ •ν•©λ‹ˆλ‹€.

    ν•œκΈ€λ‘œ 된 κΈ€κΌ΄μ΄λ‚˜ 곡백이 μžˆλŠ” κΈ€κΌ΄λͺ…은 큰 λ”°μ˜΄ν‘œλ‘œ 감싸 ν‘œμ‹œν•©λ‹ˆλ‹€.

body {
    font-family: "맑은 κ³ λ”•", "Nanum Gothic", sans-serif;
}
  1. serif : 삐침이 μžˆλŠ” λͺ…μ‘° 계열
  2. sans-serif : 삐침이 μ—†κ³  κ΅΅κΈ°κ°€ μΌμ •ν•œ κ³ λ”• 계열
  3. monospace : ν…μŠ€νŠΈ 폭과 간격이 일정
  4. fantasy : 화렀함
  5. cursive : μ†μœΌλ‘œ μ“΄ 필기체 계열

font-size

πŸ‘‰ ν…μŠ€νŠΈ 크기 λ³€κ²½, 일반적으둜 ν…μŠ€νŠΈ ν¬κΈ°λŠ” 16px

font-weight

πŸ‘‰ ν…μŠ€νŠΈ κ΅΅κΈ° μ§€μ •

숫자 ν‘œκΈ°λ²•

πŸ‘‰ 100~ 900 κΉŒμ§€ μ§€μ • κ°€λŠ₯ (100은 μ΅œμ†Œ κ΅΅κΈ°, 400은 κΈ°λ³Έ, 900은 μ΅œλŒ€ κ΅΅κΈ°)

ν‚€μ›Œλ“œ ν‘œκΈ°λ²•

  • normal : 숫자 ν‘œκΈ°λ²•μ—μ„œ 400κ³Ό 같은 κ΅΅κΈ°
  • bold : 700κ³Ό 같은 κ΅΅κΈ°
  • lighter : λΆ€λͺ¨ μš”μ†Œ 보닀 μ–‡κ²Œ μ§€μ •λ˜λŠ” μƒλŒ€μ μΈ κ°’
  • bolder : λΆ€λͺ¨ μš”μ†Œ 보닀 ꡡ게 μ§€μ •λ˜λŠ” μƒλŒ€μ μΈ κ°’

font-style 속성

πŸ‘‰ κΈ€κΌ΄ μŠ€νƒ€μΌ μ§€μ •

  • normal
  • italic
  • oblique
italicκ³Ό obliqueλŠ” 차이가 거의 μ—†μ§€λ§Œ..
italic은 λ³„κ°œμ˜ 글씨체고, obliqueλŠ” italic이 없을 κ²½μš°μ— normal을 기울인 것

font-variant 속성

πŸ‘‰ 영문 ν…μŠ€νŠΈλ₯Ό 크기가 μž‘μ€ λŒ€λ¬Έμžλ‘œ λ³€κ²½

  • normal
  • small-caps : ν…μŠ€νŠΈλ₯Ό 크기가 μž‘μ€ λŒ€λ¬Έμžλ‘œ λ³€ν™˜
<!DOCTYPE html>
<html lang="ko">
  <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>font-variant</title>
    <style>
      .variant {
        font-variant: small-caps;
      }
    </style>
  </head>
  <body>
    <p>Lorem ipsum dolor sit.</p>
    <p class="variant">Lorem ipsum dolor sit.</p>
  </body>
</html>

text-align 속성

πŸ‘‰ ν…μŠ€νŠΈ μ •λ ¬

  • left : μ™Όμͺ½ μ •λ ¬
  • right : 였λ₯Έμͺ½ μ •λ ¬
  • center : κ°€μš΄λ° μ •λ ¬
  • justify : μ–‘μͺ½ μ •λ ¬

인라인으둜 ν•œ κ²½μš°μ—λŠ” μ •λ ¬ 적용 μ•ˆ 됨!!!(span ...)

 

text-decoration 속성

πŸ‘‰ ν…μŠ€νŠΈλ₯Ό κΎΈλ©°μ£ΌκΈ° μœ„ν•΄ μ‚¬μš© (μ„ μœΌλ‘œ ν‘œμ‹œ)

  • none : μž₯식 제거
  • line-through : μ·¨μ†Œμ„ 
  • overline : μœ—μ€„
  • underline : 밑쀄

letter-spacing 속성

πŸ‘‰ μžκ°„ 쑰절..μžκ°„μ€ κΈ€μž 사이 간격

<!DOCTYPE html>
<html lang="ko">
<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>letter-spacing</title>
  <style>
    p{
      letter-spacing:15px;
    }
  </style>
</head>
<body>
  <p>ν–‰λ³΅μ˜ ν•œ μͺ½ 문이 λ‹«νžˆλ©΄ λ‹€λ₯Έ μͺ½ 문이 μ—΄λ¦°λ‹€. 
     κ·ΈλŸ¬λ‚˜ ν”νžˆ μš°λ¦¬λŠ” λ‹«ν˜€μ§„ 문을 μ˜€λž«λ™μ•ˆ 보기 λ•Œλ¬Έμ— 우리λ₯Ό μœ„ν•΄ 
     μ—΄λ € μžˆλŠ” 문을 보지 λͺ»ν•œλ‹€.</p>
</body>
</html>

line-height 속성

πŸ‘‰ ν…μŠ€νŠΈ ν•œ μ€„μ˜ 높이 μ§€μ •

p {
  line-height: 1.5;
	line-height: 200%;
	line-height: 16px;
}

text-shadow 속성

πŸ‘‰ 그림자 효과

text-shadow: κ°€λ‘œκ±°λ¦¬ μ„Έλ‘œκ±°λ¦¬ λ²ˆμ§μ •λ„ 색상;

<!DOCTYPE html>
<html lang="ko">
<head>
  <meta charset="UTF-8">
  <title>text-shadow</title>
  <style>    
    h1 { 
      font-size:60px;
    } 
    .shadow1 {
      color:red;
      text-shadow:1px 1px black;
    }
    .shadow2 {
      text-shadow:5px 5px 3px #ffa500;
    }
    .shadow3 {
      color:#fff;
      text-shadow:7px -7px 20px #000;
    }
  </style>
</head>
<body>
  <h1 class="shadow1">HTML</h1> 
  <h1 class="shadow2">CSS</h1>
  <h1 class="shadow3">μžλ°”μŠ€ν¬λ¦½νŠΈ</h1>
</body>
</html>

λ°•μŠ€ λͺ¨λΈ ꡬ성

HTML λ¬Έμ„œμ—μ„œ μ‚¬μš©λœ 각각의 μš”μ†Œκ°€ μ–΄λ–€ μ›λ¦¬λ‘œ μ›Ή λΈŒλΌμš°μ €μ— λ°°μΉ˜λ˜μ–΄ ν‘œμ‹œλ˜λŠ”μ§€ μ΄ν•΄ν•˜λ €λ©΄ λ°•μŠ€ λͺ¨λΈμ„ μ•Œμ•„μ•Ό ν•©λ‹ˆλ‹€.

  • margin : μš”μ†Œμ˜ μ™ΈλΆ€ μ—¬λ°±
  • border : μš”μ†Œμ˜ ν…Œλ‘λ¦¬(경계선)
  • padding : μš”μ†Œμ˜ μ•ˆμͺ½ μ—¬λ°±
  • content : μš”μ†Œμ˜ λ‚΄μš©

margin

μš”μ†Œ μ£Όμœ„μ˜ 곡간.. λ§ˆμ§„μ€ μš”μ†Œμ™€ μš”μ†Œ 사이에도 적용될 수 있으며, λ‹€λ₯Έ μš”μ†Œμ™€μ˜ 간격을 μ‘°μ ˆν•˜λŠ” 데 μ‚¬μš©ν•©λ‹ˆλ‹€.

μž…λ ₯ κ°―μˆ˜μ— λ”°λ₯Έ κ·œμΉ™!!
- 4개λ₯Ό 적으면 μ‹œκ³„ λ°©ν–₯ 순(top, right, bottom, left)
- 3개λ₯Ό 적으면 top, right, bottom이고, μƒλž΅λœ leftλŠ” right와 같은 κ°’
- 2개λ₯Ό 적으면 top, bottom 그리고 left, rightκ°€ λ¬Άμž„
- 1개 적으면 λͺ¨λ“  λ°©ν–₯ 적용

border

margin보닀 μ•ˆμͺ½μ— 있으며, μš”μ†Œμ˜ ν…Œλ‘λ¦¬(경계선)λ₯Ό λ‹΄λ‹Ή

border:[border κ°€λ‘œ] [border style] [색상];

<!DOCTYPE html>
<html lang="ko">
<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>border</title>
  <style>
    h1{
      border:1px solid #f00;
    }
    h2{
      border-bottom:2px dotted black;
    }
  </style>
</head>
<body>
  <h1>h1</h1>
  <h2>h2</h2>
</body>
</html>

border-style 속성

πŸ‘‰ ν…Œλ‘λ¦¬μ˜ λͺ¨μ–‘

  • none : ν…Œλ‘λ¦¬ x
  • hidden : ν™”λ©΄μ—μ„œ 감좀
  • solid : μ‹€μ„ 
  • double : 이쀑 μ‹€μ„ 
  • dotted : 점선
  • dashed : dotted 보닀 κΈ΄ 점선
  • groove : 파인 것 같은
  • ridge : νŠ€μ–΄λ‚˜μ˜¨ 것 같은
  • inset : ν…Œλ‘λ¦¬λ₯Ό μš”μ†Œκ°€ 파인 것 처럼
  • outset : ν…Œλ‘λ¦¬λ₯Ό μš”μ†Œκ°€ νŠ€μ–΄λ‚˜μ˜¨ 것 처럼

padding μ˜μ—­

margin, border μ˜μ—­λ³΄λ‹€ μ•ˆμͺ½μ— 있으며, μš”μ†Œμ˜ λ‚΄λΆ€ μ˜μ—­ λ‹΄

<!DOCTYPE html>
<html lang="ko">
<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>padding</title>
  <style>
    p{
      border:1px solid black;
      padding:10px;
    }
  </style>
</head>
<body>
  <p>padding</p>
</body>
</html>

box-sizing 속성

πŸ‘‰ ν…Œλ‘λ¦¬ μ˜μ—­μ˜ 크기 κ²°μ •

<!DOCTYPE html>
<html lang="ko">
<head>
  <meta charset="UTF-8">
  <title>Box Model</title>
  <style>
	p {
		border: 2px dashed red;
		width: 100px;
		height: 100px;
		padding: 10px;
		border: 1px solid black;
		margin: 10px;
	}
  </style>
</head>
<body>
  <p>νƒœκ·Έ λ‚΄μš© 확인</p>
</body>
</html>
  • content-box : μ§€μ •ν•œ CSS width 및 heightλ₯Ό 컨텐츠 μ˜μ—­μ—λ§Œ 적용, border, padding, margin은 λ”°λ‘œ κ³„μ‚°λ˜μ–΄ 전체 μ˜μ—­μ΄ 섀정값보닀 컀질 수 있음

  • border-box : μ§€μ •ν•œ CSS width 및 heightλ₯Ό 전체 μ˜μ—­μ— 적용, border, padding, margin을 λͺ¨λ‘ ν•©μ‚°ν•˜κΈ° λ•Œλ¬Έμ— 컨텐츠 μ˜μ—­μ΄ 섀정값보닀 μž‘μ•„μ§ˆ 수 있음

border-radius 속성

μš”μ†Œμ˜ ν…Œλ‘λ¦¬λ₯Ό λ‘₯κΈ€κ²Œ λ§Œλ“€μ–΄μ€Œ. pxλ‹¨μœ„μ™€ %λ‹¨μœ„ μ‚¬μš©

λ°•μŠ€ λͺ¨λΈμ˜ 성격과 display 속성

  • 블둝 성격
    πŸ‘‰ p, div νƒœκ·Έλ₯Ό μ‚¬μš©ν–ˆμ„ λ•Œ μš”μ†Œμ˜ λ„ˆλΉ„κ°€ 컨텐츠 μœ λ¬΄μ™€ 상관없이 항상 κ°€λ‘œ ν•œμ€„μ„ λ‹€ μ°¨μ§€ν•˜λŠ” 것
  • 인라인 성격
    πŸ‘‰ a, span, stron νƒœκ·Έ 등을 μ‚¬μš©ν–ˆμ„ λ•Œ μš”μ†Œμ˜ λ„ˆλΉ„λ₯Ό 컨텐츠 크기 만큼'만' μ°¨μ§€ν•˜λŠ” 성격
  • display 속성
    πŸ‘‰ HTML νƒœκ·Έκ°€ 기본으둜 κ°€μ§€κ³  μžˆλŠ” λ°•μŠ€ λͺ¨λΈμ˜ 성격은 display 속성을 μ‚¬μš©ν•˜λ©΄ λ³€κ²½ κ°€λŠ₯
      블둝 성격인 νƒœκ·Έλ₯Ό 인라인 μ„±κ²©μœΌλ‘œ λ°”κΎΈκ³  μ‹Άλ‹€λ©΄ display:inline;으둜 μ§€μ •ν•˜λ©΄ λ©λ‹ˆλ‹€.

λ°°κ²½ μ†μ„±μœΌλ‘œ μš”μ†Œμ˜ λ°°κ²½ μ„€μ •

background-color 속성

background-color: 색상;

background-image 속성

background-image:url('이미지 경둜');

background-repeat 속성

background-size 속성

  • cover : 이미지 잘릴 수 있음
  • contain : μš”μ†Œ 내뢀에 곡백이 생길 수 있음

background-positon 속성

πŸ‘‰ 이미지 μœ„μΉ˜ μ§€μ •

background-attachment 속성

πŸ‘‰ μš”μ†Œμ— μ‚½μž…λœ 이미지λ₯Ό 슀크둀 ν•  λ•Œ, μ΄λ―Έμ§€μ˜ μž‘λ™ 방식 κ²°μ •

  • scroll : λ°°κ²½ 이미지가 μš”μ†Œμ™€ ν•¨κ»˜ 슀크둀
  • fixed : λ°°κ²½ 이미지가 화면에 κ³ μ •, μš”μ†Œμ™€ ν•¨κ»˜ 슀크둀 λ˜μ§€ μ•ŠμŒ
  • local : λ°°κ²½ 이미지가 μš”μ†Œμ™€ ν•¨κ»˜ 슀크둀 λ˜μ§€λ§Œ, μš”μ†Œμ˜ λ‚΄λΆ€ μ½˜ν…μΈ μ™€λŠ” λ…λ¦½μ μœΌλ‘œ 슀크
profile

GiantStepDEV

@kongmi

ν¬μŠ€νŒ…μ΄ μ’‹μ•˜λ‹€λ©΄ "μ’‹μ•„μš”β€οΈ" λ˜λŠ” "κ΅¬λ…πŸ‘πŸ»" ν•΄μ£Όμ„Έμš”!