๋งˆํฌ์—…/Html & Css

[CSS] CSS Variable --

Rainbow๐ŸŒˆCoder 2022. 6. 5. 15:20
728x90

https://developer.mozilla.org/en-US/docs/Web/CSS/--* 

 

ํ™ˆํŽ˜์ด์ง€ ๋งŒ๋“ค๋ฉด์„œ ๊ฒน์น˜๋Š” css style์†์„ฑ๋“ค์„ ํ•˜๋“œ์ฝ”๋”ฉํ•˜์ง€ ๋ง๊ณ  ์ƒ์ˆ˜๋กœ ์ž˜ ์ •์˜ํ•ด์ฃผ๋„๋ก ํ•˜์ž!

๋˜ํ•œ css ๋ณ€์ˆ˜๋ช…์€ ์นด๋ฉœ์ผ€์ด์Šค๋กœ ์“ฐ๊ธฐ ์•Š๊ณ  ๋ฐ์‹œ (-)๋กœ ๋‹จ์–ด๋“ค์„ ์—ฐ๊ฒฐํ•œ๋‹ค.

 

ex) redBar (x)

ex) red-bar (O)

 

์ž์ฃผ ์“ฐ๋Š” font-middle-size๋ฅผ 32px๋กœ ํ•˜์—ฌ ์ด๊ฑธ ์ƒ์ˆ˜ํ™” ์‹œ์ผœ์„œ ํ•„์š”ํ•  ๋•Œ ๋งˆ๋‹ค ๊ฐ€์ ธ๋‹ค ์“ฐ๊ณ  ์‹ถ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜์ž,

๊ทธ๋ ค๋ฉด var ์ด๋ผ๋Š” css์—์„œ ์ œ๊ณตํ•ด์ฃผ๋Š” ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด์•ผ ํ•œ๋‹ค.

 

.red-viewer {

  --font-size : 32px;

  font-size : var(--font-size);

}

.red-viewer {

  --font-size : 32px;

  font-size : var(--font-size);

}

๋˜ํ•œ..

.red-viewer {

  --font-size : 32px; //๋ถ€๋ชจ์— ์žˆ๋Š” ๋ณ€์ˆ˜ ์ •์˜๋Š” ์ž์‹์ด ๋ฐ›์•„ ์“ธ ์ˆ˜ ์žˆ๋‹ค! (๋‹จ, ํ˜•์ œ๊ฐ„์€ ์•ˆ๋จ)

}

 

.red-viewer li {

  font-size : var(--font-size);

}

 

ํ•˜์ง€๋งŒ css์˜ ์ƒ์ˆ˜๋“ค์€ ์œ„์™€ ๊ฐ™์ด ์ง€์—ญ์ ์œผ๋กœ ์“ฐ์ง€ ์•Š๊ณ  ์ตœ์ƒ root์— ์ •์˜ํ•ด๋‘”๋‹ค.

:root {

  --font-size : 32px;
  --background-color : thistle;
  --base-space : 8px;

}

์ปฌ๋Ÿฌ ์œ„์ฃผ๋กœ ๋งŽ์ด ํ™œ์šฉํ•˜๊ฒŒ ๋œ๋‹ค. ์ด๋ ‡๊ฒŒ ํ–ˆ์„ ๋•Œ์˜ ์žฅ์ ์€ ์ตœ์ƒ๋‹จ ๋ฃจํŠธ์—์„œ css ์ƒ์ˆ˜๊ฐ’์„ ๋ฐ”๊ฟ”์ฃผ๋ฉด ๋˜๋‹ˆ๊นŒ ๋งˆ์šฐ์Šคํœ  ์™”๋‹ค๊ฐ”๋‹ค + ํ‚ค๋ณด๋“œ ๊ณ„์† ๋‘๋“œ๋ ค์ค„ ํ•„์š”๊ฐ€ ์—†๋‹ค๋Š” ๊ฒƒ!

 

calc์€ css๊ฐ€ ์ œ๊ณตํ•˜๋Š” ํ•จ์ˆ˜๋กœ, var() ํ•จ์ˆ˜ ๋“ฑ์„ ๊ฐ€์ง€๊ณ  ์—ฐ์‚ฐ์ด ๊ฐ€๋Šฅํ•ด์„œ ์‰ฝ๊ณ  ํŽธ๋ฆฌํ•˜๋‹ค! :)

ํ™”๋ฉด์ด ์ž‘์•„์งˆ ๋•Œ ์ƒ์ˆ˜ ๊ฐ’์„ ๋ฐ”๊ฟ”์ฃผ๊ณ  ์‹ถ๋‹ค๋ฉด ๋ฏธ๋””์–ด ์ฟผ๋ฆฌ์—๋‹ค๊ฐ€

๋‹ค๋ฅธ ์ƒ์ˆ˜ ๊ฐ’์„ ๋ณต๋ถ™ํ•ด์„œ ๋„ฃ์–ด์ฃผ๋ฉด ์™€๋”ฐ๊ฐ€ ๋œ๋‹ค.

 

 

 

Custom properties (--*): CSS variables - CSS: Cascading Style Sheets | MDN

Property names that are prefixed with --, like --example-name, represent custom properties that contain a value that can be used in other declarations using the var() function.

developer.mozilla.org

:root {
  --first-color: #16f;
  --second-color: #ff7;
}

#firstParagraph {
  background-color: var(--first-color);
  color: var(--second-color);
}

#secondParagraph {
  background-color: var(--second-color);
  color: var(--first-color);
}

#container {
  --first-color: #290;
}

#thirdParagraph {
  background-color: var(--first-color);
  color: var(--second-color);
}

์˜ˆ์ œ

 

 

https://developer.mozilla.org/en-US/docs/Web/CSS/calc

 

calc() - CSS: Cascading Style Sheets | MDN

The calc() CSS function lets you perform calculations when specifying CSS property values. It can be used anywhere a <length>, <frequency>, <angle>, <time>, <percentage>, <number>, or <integer> is allowed.

developer.mozilla.org

.foo {
  --widthA: 100px;
  --widthB: calc(var(--widthA) / 2);
  --widthC: calc(var(--widthB) / 2);
  width: var(--widthC);
}
728x90