728x90
반응형
질문 : 공백이 아닌 태그가 HTML5에서 유효한가요?
W3C 유효성 검사기 는 무효가 아닌 요소 />
"로 끝나는 태그)를 좋아하지 않습니다. (Void 요소는 콘텐츠를 포함 할 수없는 요소입니다.) HTML5에서도 여전히 유효합니까?
허용되는 void 요소의 몇 가지 예 :
<br />
<img src="" />
<input type="text" name="username" />
무효가 아닌 거부 된 요소의 몇 가지 예 :
<div id="myDiv" />
<span id="mySpan" />
<textarea id="someTextMessage" />
노트 :
W3C의 유효성 검사기가 실제로 무효 자동 폐쇄 태그를 허용합니다 저자가 원래 때문에 단순한 오타의 문제가 있었다 ( \>
대신 />
); 그러나 자동 종료 태그는 일반적으로 HTML5에서 100 % 유효하지 않으며 다양한 HTML 버전에서 자동 종료 태그 문제에 대한 답변이 자세히 설명되어 있습니다.
답변
- (이론적으로) HTML 4 에서
<foo /
(예, 아니요>
는 전혀 없음)는<foo>
(<br />
의미<br>>
(즉<br>>
>))와<title/hello/
의미<title>hello</title>
). 저는 "이론적으로"라는 용어를 사용합니다. 왜냐하면 이것은 브라우저가 지원하는 데 매우 열악한 작업을 수행 한 SGML 규칙이기 때문입니다. 사양은 작성자에게 구문을 피하라고 조언 하는 지원이 거의 없었습니다 (emacs-w3m 에서만 작동하는 것을 본 적이 있습니다). - XHTML 에서
<foo />
는<foo></foo>
합니다. 이것은 모든 XML 문서에 적용되는 XML 규칙입니다.application/xhtml+xml
로 제공되는 문서와 다른 파서를 사용하여 브라우저에서 처리되는text/html
로 제공되는 경우가 많습니다. W3C는 XHTML에 대해 따라야 할 호환성 지침text/html
합니다. (본질적으로 : 요소가 EMPTY로 정의되고 HTML 사양에서 종료 태그가 금지 된 경우에만 자동 닫는 태그 구문을 사용합니다). - HTML5
<foo />
의 의미 는 요소 유형에 따라 다릅니다 .- void 요소 로 지정된 HTML 요소 (본질적으로 "HTML5 이전에 존재하고 콘텐츠를 가질 수없는 요소")에서는 종료 태그가 금지됩니다. 시작 태그 끝에 슬래시가 허용되지만 의미는 없습니다. XML에 중독 된 사람 (및 구문 강조 표시기)을위한 구문 설탕 일뿐입니다.
- 다른 HTML 요소에서 슬래시는 오류 이지만 오류 복구로 인해 브라우저가이를 무시하고 태그를 일반 시작 태그로 취급합니다. 일반적으로 누락 된 종료 태그로 인해 후속 요소가 형제 대신 자식이됩니다.
- SVG와 같은 XML 응용 프로그램에서 가져온 외부 요소는이를 자체 닫는 구문으로 처리합니다.
출처 : https://stackoverflow.com/questions/3558119/are-non-void-self-closing-tags-valid-in-html5
728x90
반응형
'프로그래밍 언어 > HTML,CSS,JS' 카테고리의 다른 글
CSS3 그라데이션 배경을 늘리는 방법 (0) | 2021.08.11 |
---|---|
두 개의 클래스가있는 요소에 적용되는 CSS 선택기 (0) | 2021.08.10 |
문자열에서 HTML 태그 제거 (0) | 2021.08.10 |
내장 DOM 메소드 또는 프로토 타입을 사용하여 HTML 문자열에서 새 DOM 요소 생성 (0) | 2021.08.09 |
'$ (this)'와 'this'의 차이점 (0) | 2021.08.09 |