[목차] == 개요 == 월드 와이드 웹의 측면을 서술하고 정의하는 공식 [[표준]]이나 다른 기술 규격을 가리키는 용어. 어떤 브라우저를 사용하든 웹페이지가 똑같이 보이고 정상적으로 작동해야 웹 표준을 잘 지킨 것이다. ##개요를 너무 늘리지 말아주세요. == 엄밀한 정의 == 이러한 것들 모두 "웹 표준"이라고 부르지만 웹 표준으로 이동하는 것을 찬성하는 사람들은 사용성과 접근성에 직접 영향을 미치는 더 높은 수준의 표준에 초점을 두는 경향이 있다. 더 넓은 뜻의 웹 표준은 아래를 이른다. * WHATWG (Web Hypertext Application Technology Working Group) - 대표적으로 [[HTML]]과 웹 API의 표준을 정한다. * [[W3C]] (World Wide Web Consortium) - 대표적으로 [[CSS]]의 표준을 정한다. * 국제 인터넷 표준화 기구 (IETF)가 출판한 인터넷 표준 (STD) 문서 * 국제 인터넷 표준화 기구 (IETF)가 출판한 RFC (Request for Comments) 문서 * [[국제표준화기구]](ISO)가 출판한 표준들 * Ecma 인터내셔널 (이전 이름은 ECMA)이 출판한 표준들 - [[JavaScript]] 표준이 여기서 정해진다. * [[유니코드]] 컨소시엄이 출판한 유니코드 표준과 다양한 유니코드 기술 보고서 (UTR) - [[UTF-8]]이 여기에 기반한다. * 인터넷 할당 번호 기관 (IANA)이 운영하는 이름과 번호 [[레지스트리]] == 웹 표준이 중요한 이유 == 산업표준이 왜 존재하는지, [[도량형]]이 왜 존재하는지 생각해 보면 이유가 명확해진다. 산업현장에서 부품들의 표준화가 돼 있지 않으면 업체마다 서로 호환이 되지 않고, 같은 업체에서 생산하는 부품도 품질보장이 되질 않을 것이다. 웹 환경은 본질적으로 '통신'이기 때문에 더욱 더 표준화가 중요해진다. 비표준 '부품'이야 [[독자규격|자기네 제품에만 독점적으로 사용할 거라면]] 크게 상관없지만 웹은 누가 어떤 장치를 어떤 방식으로 사용할지를 제공자가 통제할 수 없기 때문이다. 인터넷 그 자체가 [[크로스 플랫폼]]인 이유. 2016년 현재 인터넷 사용 인구는 30억명을 훌쩍 넘긴다. 사실상 전인류의 절반이 인터넷을 사용하고 있고 인터넷 트래픽의 거의 전부를 차지하는 게 웹 트래픽이다. 사용하는 사람이 많아지면 표준화는 반드시 해결해야 할 과제가 된다. 그것이 일개 개인의 프로젝트에서 시작되었든([[월드 와이드 웹]]), 국제 연합 수준의 극대규모 프로젝트([[국제단위계|미터법]])였던 말이다. 웹 표준이 없던 1990년대 말 ~ 2000년대 초반에는 웹 사이트 개발자는 사실상 두 개의 사이트를 만들어야 했다. [[Internet Explorer]]용과 [[넷스케이프 내비게이터|넷스케이프]]용의 두 개. 실질적으로는 각종 핵과 브라우저 판별 코드를 삽입해야 해서 3배의 노동이 들었다. 표준이 없으면 이렇게 더 많은 노동력과 시간이 든다. 사회 전체적인 비용이 증가하는 것이다. 시간과 예산이 빠듯한 상황에서 웹 개발자는 결국 하나만을 선택하고 나머지를 버릴 수밖에 없다. 이는 정보 제공에 차별을 발생시킨다. 인터넷에 정보는 --[[Internet Explorer|웹 표준을 무시하는 브라우저]]를 사용하는 유저를 제외하고-- 차별없이 제공되어야 한다. "이 사이트는 [[Internet Explorer/버전#s-1.6|인터넷 익스플로러 6]], 1024x768 해상도에서만 이용하실 수 있습니다." 따위의 말은 그저 횡포일 뿐이다. 본인이 [[갑]]이 아닌데도 불구하고 이런 횡포를 부린다면, 그건 장사하기 싫단 소리밖엔 안 된다. [[민원24]]같은 전자정부 사이트는 [[갑]]의 요건을 일부 충족하기 때문에 아직도 배째라 영업(?)이 가능한 면이 있지만 시대를 역행하는 것임에는 변함이 없다. 웹 사이트를 작성하는 데 중요도가 높아지고 있으며 웹 [[디자인]], 개발과 관계가 있다. 수많은 상호 의존성이 있는 표준들과 규격들 가운데 일부는 단지 월드 와이드 웹으로만 끝나는 것이 아니라, 인터넷의 관리 측면이기도 하며 이러한 표준들은 직간접적으로 웹 사이트, 웹 서비스 개발과 관리에 영향을 주고 있다. 웹 표준을 완벽하게 지키려면 특정 브라우저에 의존하는 플러그인이나 코드를 완벽하게 제거해야 하는 것이 보통인데, 일반적인 브라우저에 공통적으로 제공되는 플러그인은 이 기준에서 예외가 되는 경우가 많다. * 만화: [[http://www.thisisgame.com/webzine/nboard/213/?n=56672|웹 표준이 중요한 이유]] == 웹 [[접근성]] == W3C의 정의에 의하면 웹 표준성은 접근성, 사생활 보호, 보안, 국제화의 측면을 고려해야 한다. 이 중에 접근성을 흔히 '웹 접근성'이라고 하고 웹 표준성과 함께 많이 언급되는 개념이다. 명칭은 '웹' 접근성이지만 [[https://www.w3.org/WAI/standards-guidelines/ko#wcag|WCAG 원문]]에 따르면 WCAG는 웹이 아닌 정보 통신 기술(ICT), 멀티미디어, “모바일”, 어플리케이션 등에도 모두 적용되는 지침이다. 즉 소소한 차이는 있을지언정 모바일 앱이나 게임의 인터페이스에도 적용이 된다는 뜻이다. 웹 접근성은 누구나 원활하게 웹 페이지를 이용할 수 있어야 한다는 것을 의미한다. 예를 들어 시각장애인의 경우 화면을 눈으로 볼 수 없기 때문에 그렇지 않은 사람과 같은 방식으로는 웹페이지를 이용할 수 없다. 그래서 '스크린 리더'라는 별도의 소프트웨어를 [[컴퓨터]]에 설치해서 인터넷을 이용한다. 스크린 리더는 [[모니터]]에 비춰지는 내용을 인식해서 음성, 점자로 출력해주는 역할을 한다. 예를 들어 화면에 '메뉴'라는 텍스트가 있으면 이를 인식해서 '메뉴'라는 음성이 나오는 방식이다. 시각장애인은 이를 이용해 눈으로 보는 대신 소리로 들으면서 웹페이지에 담긴 정보를 이해할 수 있다. 하지만 스크린 리더는 소프트웨어에 불과하므로 스스로 웹페이지의 내용을 분석해서 이건 무슨 내용이고 저건 무슨 내용이다라는 걸 이해할 수 없다. 특히 이미지의 경우가 그렇다. '메뉴'라고 텍스트로 집어 넣지 않고 메뉴라고 그려진 이미지를 사용하면 비 시각 장애인의 눈에는 똑같이 메뉴라고 보이지만 소프트웨어 입장에서는 그저 이미지일 뿐이다. 그 이미지 안에 그려진 내용을 인식하는 것은 불가능하다. 그래서 되도록이면 이미지를 사용하지 말고 소스 코드에 내용을 그대로 담는 것이 권장되며, 부득이하게 이미지를 사용할 경우 반드시 이 이미지가 어떤 내용인지 설명을 추가해야 한다. {{{#!syntax html 1. 2. 메뉴 버튼 }}} 위와 같이 메뉴 버튼을 두 가지 방식으로 구현할 수 있다. 윗줄은 {{{