웹 사이트(또는 웹앱)가 어느 버전의 브라우저에서나, 어느 디바이스에서도 원하는 결과물이 나오도록 확인하고 수정하는 단계를 말한다.
다르게 구동되는 여러 브라우저에서 동일한 사용자 경험(같은 화면, 같은 동작 등)을 줄 수 있도록 한다.
대부분의 브라우저는 최대한 웹 표준을 준수해서 제작되기 때문에 문제 되는 경우가 적지만 IE(마이크로소프트 인터넷 익스플로어) 브라우저는 여러 의미에서 표준화하기 쉽지 않은 브라우저임으로 IE에서도 동작하게 하는 것을 크로스 브라우징이라고 부름.
CSS 프로퍼티와 자바스크립트가 브라우저의 어느버전까지 지원하는지 확인할 수 있다.
ifconfig
입력 후 IP주소를 확인한다. 폴리필(polyfill)은 말 그대로 구현이 누락된 새로운 기능을 메꿔주는(fill in) 역할을 한다.
IE에서 사용할 수 없는 fetch, async/await 같은 코드를 사용가능하도록 변환하는 과정.
$ npm install react-app-polyfill --save
$ npm run start
설치를 완료하고 프로젝트 파일을 열어 다음 코드를 추가해준다.
Internet Explorer 11
// This must be the first line in src/index.js
import 'react-app-polyfill/ie11';
import 'react-app-polyfill/stable';
코드를 추가했으면 저장한다음 캐쉬를 지워준다.
$ rm -rf node_modules/.cache/
캐쉬를 지워준 다음, package.json에 다음 내용을 추가해준다.
"browserslist": {
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version",
"ie 11"
]
}
그리고 다시 npm run start
로 IE에 띄워지는 지 확인! 그 다음 세부적인 수정을 하도록한다.