๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๊ฐœ๋ฐœ/HTML, CSS, JS

autoprefixer

by Jaeguk 2023. 2. 14.

์—ฌ๋Ÿฌ ๊ฐœ๋ฐœ ์„œ๋ฒ„๋“ค์—์„œ ๊ฐœ๋ฐœ์ž ๋„๊ตฌ(F12)๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ ์šฉ๋œ css๋ฅผ ๋ณด๋ฉด ์ค„์ด ๊ทธ์–ด์ ธ ์žˆ๋Š” ์†์„ฑ๋“ค์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

์ฆ‰, ํ˜„์žฌ ๋‚ด๊ฐ€ ๋ณด๊ณ  ์žˆ๋Š” ํ™”๋ฉด์— ํ•ด๋‹น ์†์„ฑ์ด ์ ์šฉ์ด ๋˜์ง€ ์•Š๊ณ  ์žˆ๋‹ค๋Š” ๋œป์ธ๋ฐ, ๊ทธ๋Ÿผ ์™œ ์ž‘์„ฑ์„ ํ•ด๋‘์—ˆ์„๊นŒ??

๊ฐ’์ด -webkit-box์™€ -ms-flexbox ํ•ด๋‹น ์†์„ฑ๋“ค์€ ์ผ์ข…์˜ ์Šคํƒ€์ผ ๋ณดํ—˜์ด๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

์šฐ๋ฆฌ๊ฐ€ ์ž‘์„ฑํ•œ ์Šคํƒ€์ผ์ด ๊ตฌํ˜• ๋ธŒ๋ผ์šฐ์ €์—์„œ๋Š” ์ œ๋Œ€๋กœ ๋™์ž‘ํ•˜์ง€ ์•Š์„ ์ˆ˜๊ฐ€ ์žˆ๋Š”๋ฐ ์ด๋•Œ๋ฅผ ๋Œ€๋น„ํ•ด์„œ ๋ฏธ๋ฆฌ ๋ณดํ—˜์„ ๋“ค์–ด๋‘๋Š” ๊ฒƒ์ด๋‹ค. ๋งŒ์•ฝ ํŠน์ • ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋™์ž‘ํ•  ์ˆ˜ ์—†๋‹ค๋ฉด autoprefixer๊ฐ€ ์ž๋™์œผ๋กœ ๋™์ž‘ํ•  ์ˆ˜ ์žˆ๊ฒŒ๋” ๋ณ€ํ™˜์„ ํ•ด์ค€๋‹ค.

 

์–ด๋–ป๊ฒŒ ์ ์šฉํ• ๊นŒ??

์ผ๋‹จ npm i -D postcss autoprefixer ๋ช…๋ น์„ ํ†ตํ•ด postcss, autoprefixer ํŒจํ‚ค์ง€๋ฅผ ๊ฐœ๋ฐœ ์ „์šฉ์œผ๋กœ ์„ค์น˜ํ•ด์ค€๋‹ค.

1
2
3
4
"browserslist": [
    "> 1%",
    "last 2 versions"
  ]
cs

๊ทธ๋ฆฌ๊ณ  package.json ํŒŒ์ผ์—์„œ "browserslist" ๋ผ๋Š” ์†์„ฑ์„ ์ถ”๊ฐ€ํ•˜์—ฌ ๊ฐ’์œผ๋กœ ๋ฐฐ์—ด์„ ์ถ”๊ฐ€ํ•˜๊ณ 

์•ˆ์— "> 1%" ์™€ "last 2 versions" ๋ผ๊ณ  ์ž‘์„ฑํ•œ๋‹ค.

> 1%๋Š” ์ ์œ ์œจ์ด 1% ์ด์ƒ์ธ ๋ชจ๋“  ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋™์ž‘ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ฒ ๋‹ค๋Š” ๋œป์ด๋‹ค.

 

์ด๋ ‡๊ฒŒ๋งŒ ํ•˜๋ฉด ๋๋‚˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ,

.postcssrc.js ํŒŒ์ผ์„ ๋งŒ๋“ค์–ด์„œ 

๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž‘์„ฑํ•ด์ค€๋‹ค.

์ด์ „์—๋Š” import ๋ช…๋ น์„ ํ†ตํ•ด ํŒจํ‚ค์ง€๋ฅผ javascript ํŒŒ์ผ๋กœ ๋ถˆ๋Ÿฌ์™”์—ˆ๋‹ค. ์ด๋Š” ESM ๋ฐฉ์‹์ด๋‹ค.

.postcssrc.js ํŒŒ์ผ์€ Node JS ํ™˜๊ฒฝ์—์„œ ๋™์ž‘์„ ์‹œํ‚ค๋Š” ๊ฒƒ์ด๋ฏ€๋กœ Node JS๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” CommonJs ๋ฐฉ์‹์œผ๋กœ import์™€ export๋ฅผ ํ•ด์ค˜์•ผ ํ•œ๋‹ค.

Common JS ๋ฐฉ์‹์€ import ๋Œ€์‹  require() ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

๊ทธ๋ฆฌ๊ณ  export ๋Œ€์‹  module.exports๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

 

์ด๋ ‡๊ฒŒ ๋ชจ๋“  ์„ธํŒ…์ด ๋๋‚ฌ๋‹ค๋ฉด npm run dev๋ฅผ ํ†ตํ•ด ๊ฐœ๋ฐœ ์„œ๋ฒ„์—์„œ autoprefixer๊ฐ€ ์ž˜ ์ ์šฉ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•ด๋ณด๋ฉด ๋œ๋‹ค.

728x90

'๊ฐœ๋ฐœ > HTML, CSS, JS' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

์ •์  ํŒŒ์ผ ์—ฐ๊ฒฐ  (0) 2023.02.13
๋ฒˆ๋“ค๋Ÿฌ ๊ฐœ์š”  (0) 2023.02.13
JavaScript Essentials  (0) 2023.02.05
Type annotation  (0) 2023.02.04
BEM  (0) 2023.01.13