HTML5.2에 추가된 기능과 변경된 것들
HTML5.2 권고안이 2017년 12월 14일 발표되었습니다.
HTML5.1 이후 변경 사항을 간략하게 확인해보고 개발할 때 참고해야겠습니다.
2016년 1월 12일 이후 모든 변경 사항에 대한 자세한 내용은 다양한 편집 및 링크 수정을 포함하여 w3c/html Github 저장소 의 commit log를 통해 제공됩니다.
새로운 기능(New features)
- <dialog> 요소
- [ECMA-262]의 JavaScript 모듈 시스템과 통합
- [REFERRERPOLICY] 레퍼러 정책
- 접근성 향상을 위한 새로운 기능을 소개하는 [Wave-arial-1.2.2] ARIA 참조 업데이트
- 컨텐츠 보안 정책 [CSP3]에서 사용되는 <link> 의 nonce 속성
- iframe 요소의 allowpaymentrequest 속성이 Payment Request API 와 통합 [PAYMENT-REQUEST]
- <iframe> 요소의 sandbox 속성에서 allow-presentation 값이 Presentation API 호 통합 [PRESENTATION-API]
- <link> 요소의 rel 속성이 기본 값이 됨
- <link> 요소에 noreferrer 링크 타입 추가 [SECURE-CONTEXTS]
- rel 속성에 apple-touch-icon 값으로, link 요소에서 크기 특성을 사용 가능
- registerContentHandler(), isContentHandlerRegistered(), isProtocolHandlerRegistered() 메소드 추가
- HTMLElement 에 innerText IDL 속성 추가
- MP4 미디어 트랙 통합을 위한 about:html-kind URL 정의
- [CSS3]에 콘텐츠 보안 정책에 따라 요소를 통합할 수 있어야 합니까? 내용 통합
삭제된 기능(Features removed)
- keygen, menu, menuitem 요소
- <input> 요소의 텍스트 타입에서 inputmode 와 dropzone 속성
- showModalDialog 메소드
- Plugin API
버그 수정 및 개선(Fixing bugs and matching reality better)
- load 이벤트 지연 방지를 위해 네트워크 이외의 소스에서 미디어 리소스 요청 중지
- 새로고침 빈도에 대한 임의의 상한 값을 제거
- isMap 에서 image border 값을 계산 안함
- accesskey 정의를 출력 가능한 글자가 필요하도록 업데이트
- <summary> 활성화 알고리즘 개선
- <table> 에 대한 행(row)과 열(column) 머리 글을 결정하는 알고리즘 수정
- <summary> 렌더링 업데이트
- 손상된 URL은 파싱되지 않은 값을 반환
- currentScript 는 SVGScriptElement 를 반환 가능
- <textarea> 요소를 재설정하면 dirty value flag 도 재설정
- document.open() 와 document.close() 는 XML 문서 확인
- HashChangeEvent URL은 DOMString 대신 USVString 사용
- selection 의 member 타입에 null 사용 가능
- data: URL은 별도의 출처로 취급
- tabindex 이벤트로 포커스가 발생하는 요소에는 포인터가 아닌 장치일때 click 이벤트가 발생 안함
- 샌드박스 컨텍스트에 대한 네비게이션
- [html-aria] 에 허용 role 업데이트
지금부터 유효한 HTML 구문:
- <body> 안에 <style> 사용 가능
- DOM에 <main>요소가 1개만 표시된다면 <main> 요소를 여러개 사용 가능
- img 요소에 presentation role 사용 가능
- dl 의 자식 요소로 div 요소 사용 가능
- li 의 자식 요소로 dfn 요소 사용 가능
- fieldset 요소 안의 legend 요소 안서 Headings(h1-h6) 요소 사용 가능
- datalist 요소의 자식 요소 option 에서 빈 값 사용 가능
- 주석에서 2개의 연속된 하이픈 혹은 1개의 하이픈으로 끝나는 구문 사용 가능
- BiDi 알고리즘 섹션의 제한 제거
지금부터 유효하지 않은 HTML 구문:
- <caption> 요소의 role 속성 사용 불가
- <p> 요소 하위의 Inline blocks, inline tables, floated, positioned block-level 요소 사용 불가
- 문서 형식 선언(<!DOCTYPE>)에 HTML4 또는 XHTML1 strict 사용 불가
새로운 개념(New concepts)
- serialized state 와 creator context security 추가
- Document 객체에서 browsing context의 사용 여부를 확인하는 알고리즘 추가
- WindowOrWorkerGlobalScope API에 mixin 추가
편집 설명(Editorial clarifications)
- Browsers should represent punycode addresses as natural unicode text for the email input type.
- 브라우저는 <input> 요소의 email 타입에 punycode 주소를 유니 코드 문자로 나타내야 한다.
- seekable IDL 속성에 대한 마지막 프레임 시간 개념을 명확히 한다.
- suggestions source element 를 사용하여 제안을 필터링하는 브라우저는 label 속성에 부분 문자열 일치를 구현해야 한다.
- 사용자는 포인팅 장치 사용 여부와 상관 없이 <area> 요소와 상호 작용할 수 있어야 한다.