들어가며
평소에 브라우저란 말을 많이 들어보셨을겁니다. 브라우저, 웹브라우저, 검색엔진, IE6 ~ IE11, 크롬, 파이어폭스 등등 브라우저란 HTML 문서와 그림, 멀티미디어 파일등을 WWW을 기반으로 한 인터넷 컨텐츠를 검색 및 열람하는 응용 프로그램으로써 그 종류는 수십가지가 됩니다. 해당 브라우저를 통해 사용자들은 메일을 주고 받거나 다양한 자료를 업로드, 다운로드를 하는 활동을 합니다. 브라우저는 '렌더링 엔진'이라는 것이 존재합니다. 오늘은 렌더링의 종류와 파생된 브라우저를 알아 보겠습니다.
웹브라우저의 역사
엔진
- 게코(Gecko)
- 서보(Servo)
- 웹키트(WebKit)
- 블링크(Blink)
- 프레스토(Presto)
- EdgeHTML
- 트라이던드(Trident)
- 태즈먼(Tasman)
자바스크립트를 이용한 브라우저 버전 확인
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | var agent = navigator.userAgent, match; var app, version; if((match = agent.match(/MSIE ([0-9]+)/)) || (match = agent.match(/Trident.*rv:([0-9]+)/))) app = 'Internet Explorer'; else if(match = agent.match(/Chrome\/([0-9]+)/)) app = 'Chrome'; else if(match = agent.match(/Firefox\/([0-9]+)/)) app = 'Firefox'; else if(match = agent.match(/Safari\/([0-9]+)/)) app = 'Safari'; else if((match = agent.match(/OPR\/([0-9]+)/)) || (match = agent.match(/Opera\/([0-9]+)/))) app = 'Opera'; else app = 'Unknown'; if(app !== 'Unknown') version = match[1]; console.log('Browser: ' + app); console.log('Version: ' + version); | cs |
자바스크립트 naviagtor 객체
1 2 3 4 5 6 7 8 9 10 11 | //웹브라우저의 이름. IE는 Microsoft Internet Explorer, 파이어폭스, 크롬등은 Nescape로 표시합니다. navigator.appN //브라우저의 버전을 의미합니다. navigator.appVersion //브라우저가 서버측으로 전송하는 USER-AGENT HTTP 헤더의 내용입니다. navigator.userAgent //브라우저가 동작하고 있는 운영체제에 대한 정보입니다. navigator.platform | cs |
※USER-AGENT란 사용자를 대신하여 일을 수행하는 소프트웨어 에이전트로 대게 웹 브라우저를 뜻합니다.
브라우저별 CSS 태그 추가 방법
-webkit- |
사파리나 크롬에서 사용하는 Webkit 엔진 기반의 웹 브라우저에서 사용 |
-moz- |
파이어폭스 웹 브라우저에서 사용 |
-o- |
오페라 웹 브라우저에서 사용 |
-ms- |
인터넷 익스플로러에서 사용 |
8,9,10번째 줄에 브라우저마다 적용 되는 border-radius 값을 따로 작성한 예제 입니다.
1 2 3 4 5 6 7 8 9 10 11 12 | .accordion_menu .menu_item{ position:relative; height:28px; overflow:hidden; background-color:#e3e3e3; border:1px solid #aaa; margin:5px; -webkit-border-radius:5px; -moz-border-radius:5px; -o-border-radius:5px; border-radius:5px; } | cs |
마치며
현재 다양한 브라우저 종류가 있습니다. 일반인에게 많이 알려진 브라우저, 개발자들이 좋아하는 브라우저, 각자 취향에 따라 브라우저를 선택해서 사용하고 있습니다. 많은 브라우저가 뜨고 지며 많은 변화가 브라우저 업계에 불어닥치고 있습니다. 개발자들은 이런 브라우저의 변화에 반응 할 수 있도록 관심이 많이 필요할것 같습니다.
참고사이트
https://ko.wikipedia.org/wiki/%EB%A0%88%EC%9D%B4%EC%95%84%EC%9B%83_%EC%97%94%EC%A7%84
'현대리가 생각하는 IT' 카테고리의 다른 글
IE 버전 종류 및 css지원 여부 (0) | 2018.06.07 |
---|---|
PHP 기본 문법 (0) | 2018.06.03 |
PHP (0) | 2018.05.31 |
H-MAC SHA-1 (0) | 2018.05.24 |