[CSS] 'autoprefixer: Replace color-adjust to print-color-adjust. The color-adjust shorthand is currently deprecated.' 해결방법 : autoprefixer란 무엇인가

2022. 8. 22. 11:52·Learning-Log/Computer Science
728x90
320x100

autoprefixer: Replace color-adjust to print-color-adjust. The color-adjust shorthand is currently deprecated.

1. 발단

NextJS에서 npm run dev 명령어를 입력했더니 갑자기 에러가 떴다.

에러가 뜨기 전과 비교했을 때, 내가 한 행동은 package들을 싹 최신 버전으로 갈아 엎어줬다는 정도?
패키지 버전업은 함부로 하는게 아니라는걸 다시 한 번 되새기면서 이 에러에 대해 찾아보았다.

 

2. 해결방법

구글링 결과 원인 및 해결책은 매우 간단했다.

autoprefixer의 버전을 10.4.5로 할 것

따라서 이 문제를 해결하기 위해서는 다음 명령어를 통해 다운그레이드 시켜주면 된다.
참고로 에러가 발생한 버전은 10.4.8

$ npm install autoprefixer@10.4.5 --save-exact

--save-exact flag를 붙여주면 pakage.json에 ^가 붙지 않는다. 즉, 정확히 이 버전을 써라고 지정해주는 셈

 


 

Autoprefixer 는 무엇인가?

여기서 포스팅을 끝내긴 아쉬우니, autoprefixer에 관한 얘기가 나온 김에 autoprefixer에 대해 조금 더 알아보자.
autoprefixer에 대해 알기 위해서는 먼저 vender prefix에 대해 알아야한다.

Vendor Prefix란?

말 그대로 Vendor(공급업체)의 Prefix(접두사)를 의미하는데, 이 때 공급업체란 웹브라우저 공급업체를 의미한다.

크롬, 파이어폭스, 사파리, 오페라 등의 모던 웹브라우저들은 CSS 표준에 아직 등재되진 않았지만, 쓸만하다고 판단되는 실험적 기능이나 조만간 표준에 등재될 것이 예상되는 기능들을 먼저 선제적으로 지원한다.

하지만 이런 기능들은 앞서 말한 것처럼 CSS 표준이 아니기 때문에, 브라우저마다 지원되는 기능의 종류가 조금씩 다르다. 따라서 개발단계에서는 CSS 코드 작성시 해당 코드가 특정 브라우저에서만 작동할 실험적 기능과 관련된 코드라는 것을 명시해줄 필요가 있는데 그 역할을 하는 것이 바로 Vendor Prefix라고 보면 된다.

구 버전 브라우저와 같이 해당 기능을 지원하지 않는 브라우저는 Vendor Prefix 덕택에 그냥 해당 코드를 무시하고 지나칠 수 있게 되는 것.

대표적인 Vendor Prefix는 다음과 같다.

chrome safari  firefox  explorer  opera 
-webkit- -webkit- -moz- -ms- -o-

 

Autoprefixer란?

autoprefixer는 개발자가 작성한 코드에서 prefix를 자동으로 추가해주는 툴이다. 주로 postcss에서 많이 쓰이며, postcss를 쓴다면 거의 필수적으로 함께 쓰는 툴이라고 봐도 무방하다. (결국 tailwindcss를 쓰려면 postcss를 써야하고 postcss를 쓴다면 autoprefixer를 쓰게 된다)

PostCSS의 소개글에 함께 소개되고 있는 Autoprefixer

 

Autoprefixer 소개 페이지

위 사진에서 볼 수 있듯, Autoprefixer는 PostCSS 플러그인으로서, CSS를 구문 분석하여 Can I Use 에 따른 Vendor Prefix를 추가해준다. CSS 코드를 작성할 때 Vendor Prefix에 대한 생각을 전혀 하지 않아도 되게끔 해주는 고마운 녀석인 셈. 많은 사람이 쓰는 데에는 다 이유가 있는 법이다.

728x90
반응형
저작자표시 비영리 변경금지 (새창열림)

'Learning-Log > Computer Science' 카테고리의 다른 글

[WSL] WSL 강제 종료하기  (2) 2022.10.04
Authentication(인증)과 Authorization(인가,권한 부여)에 대하여  (0) 2022.08.24
[Windows] Zone.Identifier 란 무엇이고, 어떻게 지울 수 있나?  (0) 2022.08.22
[아키텍쳐] ARM vs AMD... 어라 그럼 Intel은 어디로..?  (2) 2022.08.22
[ReactJS] React hook form, 모던 Form을 위한 치트키  (0) 2022.08.17
'Learning-Log/Computer Science' 카테고리의 다른 글
  • [WSL] WSL 강제 종료하기
  • Authentication(인증)과 Authorization(인가,권한 부여)에 대하여
  • [Windows] Zone.Identifier 란 무엇이고, 어떻게 지울 수 있나?
  • [아키텍쳐] ARM vs AMD... 어라 그럼 Intel은 어디로..?
Xpectation
Xpectation
理
    반응형
    250x250
  • Xpectation
    자기실현적 기대
    Xpectation
  • 전체
    오늘
    어제
    • 전체보기 (214)
      • Thinking-Log (42)
        • 인간에 관한 생각 (22)
        • 사회현상에 관한 생각 (9)
        • 말씀에 관한 생각 (4)
        • 기타 잡념 (7)
      • Trading-Log (8)
        • 주식 잡념 (9)
      • Learning-Log (104)
        • Computer Science (70)
        • Economics (21)
        • Law (1)
        • ETC (12)
      • Review-Log (43)
        • 食思味 (13)
        • 聽思聰 (6)
        • 視思明 (12)
        • IT 제품, 전자기기 (7)
        • 게임 (0)
        • 기타 (5)
      • Creating-Log (5)
        • 주방 (0)
        • 서재 (5)
        • 기타 (0)
      • Photo-Log (3)
        • 사진 일기 (3)
      • 미분류 (0)
  • 블로그 메뉴

    • 홈
    • 방명록
    • 태그
  • 링크

    • 티스토리 홈
  • 공지사항

  • 인기 글

  • 태그

    마인드위즈Pro
    ASMR
    티스토리챌린지
    딥러닝
    수면유도
    매매일지
    오블완
    주식
    클래식음악
    경제학
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
Xpectation
[CSS] 'autoprefixer: Replace color-adjust to print-color-adjust. The color-adjust shorthand is currently deprecated.' 해결방법 : autoprefixer란 무엇인가
상단으로

티스토리툴바