💡고민(게시물 작성 이유)
- 웹 페이지 만들기 과제를 하며 div를 남발하는 나를 발견했다
- 웹 페이지 구현을 해도 과제 주의사항을 보니 고쳐야 할 부분이 많았다
- 다른 개발자, 스크린 리더를 고려해서 만들어야 한다
글자를 키울 때
<h1>Top level heading</h1> ///추천 <b>Top level heading</b> ```
1) SEO(Search Engine Optimazation): 검색 최적화
2) Accessibility: 웹페이지를 읽을 때 키보드만 쓰거나 스크린 리더를 쓸 때도
적절하게 작동할 수 있어야한다
3) Maintainability: 다른 개발자들도 알기 편하고 유지보수가 용이하다

위처럼 div만 적는다면 나와 다른 개발자 모두를 헷갈리게 할 것이다!

<header>: 웹사이트의 브랜드를 나타내거나, 사용자를 위한 메뉴 아이템이 들어있는 경우
<nav>:<header>안에 여러 메뉴가 모여있는 경우
<main>: 중요한 내용이 들어가는 주 부분
<aside>: 컨텐츠와 직접적으로 상관이 없는 부가적인 부분
<article>: 기사, 포스트 하나를 묶음. 독립적으로 고유한 정보를 나타냄
<section>:<article>안이나 밖에서 서로 연관있는 내용을 묶어줌
<footer>: 부가 정보, 링크, 저작권 정보, 연락처 등을 넣는 경우
✨<i> vs <em>
<i>: 시각적으로만 이탤릭체
<em>: 강조하는 이탤릭체
✨<b> vs <strong>
<b>: 시각적으로만 볼드체
<strong>: 정말 중요한 볼드체
✨<ul> vs <ol> vs <dl>
<ul>: 순서가 없는 목록 나타냄
<ol>: 순서가 중요할 때
<dl>: 한 문장, 단어의 정의와 설명 목록을 만들 때
✨<img> vs background
<img>: 이미지가 웹페이지 내 하나의 중요 요소일 때 문서 내 자체적으로 포함되게
(css)background-image: 문서의 배경 이미지로 표현되거나 문서 일부분 아닐 때
✨<button> vs <a>
<button>: login, review, quiz버튼처럼 특정 액션이 일어나는 경우
<a>: home버튼처럼 어딘가로 이동하는 링크가 걸린 경우
✨<table> vs css
<table> : 정말 행과 열로 이루어진 데이터가 필요할 때
css : flex,grid등 스타일링
✨ <div>는 언제?
아무 목적 없이 단순한 그룹화. 시맨틱 태그를 최대한 적용하고 남은 영역에 쓴다
참고
https://youtu.be/T7h8O7dpJIg: 유튜브 드림코딩
https://www.daleseo.com/html-semantic-markup/
https://developer.mozilla.org/en-US/docs/Web/HTML/Element