오늘 아침에 html과 haml을 작성하면서 div가 사용되는 방식이 어리 석다는 생각이 들었습니다. div가 암시되지 않는 이유는 무엇입니까? 이 경우를 상상해보십시오.
<div class="hero-img">
<img src="http://whatever.com/this.jpg">
</div>
이것이었다 :
<hero-img>
<img src="http://whatever.com/this.jpg">
</hero-img>
요소의 "div class"부분이 가정되면 HTML은 더 의미적이고 일치하는 닫는 태그로 훨씬 더 읽기 쉽습니다!
이것은 다음과 같은 HAML과 유사합니다.
.content Hello, World!
다음이된다 :
<div class='content'>Hello, World!</div>
이것이 브라우저에서 작동하기 위해 발생해야 할 유일한 것은 브라우저가 기존 html 요소 정의가 암시하는 것처럼 모든 요소를 해석하기 시작할 수 있다는 것 <div class="<element name>">
입니다.
이것은 이전 버전과 완전히 호환 될 수 있습니다. CSS 및 jQuery 선택기 등의 경우 "div.hero-img"가 여전히 작동 할 수 있으며 요소를 선택하는 데 필요한 구문이됩니다.
새로운 웹 구성 요소 사양에 대해 알고 있지만 여기에 제안 된 것보다 훨씬 더 복잡합니다. 웹 사이트의 소스를보고 html을 보는 것이 얼마나 즐거운 지 상상할 수 있습니까?!
그렇다면 왜 div를 사용해야합니까?
당신이 보면 모질라의 HTML5 요소 목록 , 모든 요소는 의미 론적 의미를 가지고 있으며, 우리는에 도착 <div>
하고는 말합니다 :
"특별한 의미가없는 일반 컨테이너를 나타냅니다."
.. 그리고 그들은 html5에 추가하는 임의의 요소를 나열합니다 <details>
.
물론 이러한 암시 적 div 개념이 HTML 사양에 추가 된 경우 표준이 되려면 10 년이 걸리며 이는 웹 시간이 백만 년입니다.
그래서 나는 이것이 아직 일어나지 않은 좋은 이유가 있어야한다고 생각합니다. 제발, 설명해주세요!