Web Cafe의 새소식 영역을 <section>과 <article>을 이용해 Markup 했다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
<!-- news section HTML Code --> <sectionclass="news"> <h2class="news-heading">새소식</h2> <articleclass="news-item"> <ahref="#"> <h3class="news-item-subject">W3C 사이트가 리뉴얼 되었습니다.</h3> <timeclass="news-item-date"datetime="2019-04-11T11:19:37">2019.04.11</time> <pclass="news-item-brief"> 디자인 및 다양한 view 환경을 고려하여 구성되어 있으며, 기존보다 최신 정보 및 개발자를 위한 기술 가이드도 찾기 쉽도록 구성되어 있습니다. </p> <figureclass="news-item-thumbnail"> <imgsrc="images/news.gif"alt=""> <figcaption>W3C 리뉴얼</figcaption> </figure> </a> </article> <ahref="#"class="news-more icon-plus"target="_blank">더보기</a> </section>
: 처음으로 <article>과 <figure> tag를 써봤다.
<section> 내에 <article>을 nesting하는 것은 신문의 스포츠 섹션에 단일 기사를 싣는 것과 같다는 글을 읽어 이해가 쉬웠다.
Semantic HTML을 접하고 처음 <div> 범벅이던 코드를 만났을 때보다 훨씬 이해가 쉽고 직관적으로 구조를 짤 수 있게 된 기분이 든다.
HTML5부터 inline인 <a> 안에 block 요소등을 넣을 수 있게 됐다. 그러나 focus를 받을 때 다음과 같은 문제가 생길 수 있다.
이는 <a>의 display를 block으로 바꿔주면 해결할 수 있다.
Image Replacing and Sprite
웹 기초 수업 때 instagram 등 Social Media의 로고로 실습을 했던 Image Sprite 기법을 다시 한 번 적용해 Web Cafe 예제를 진행했다.
Image Replacement
: image가 들어갈 영역의 크기를 지정해놓고, 해당 높이나 너비만큼 padding을 주고 overflow: hidden 처리를 한 후 image를 sprite로 처리한다.
Image Sprite
: server가 제공하는 image 최소화하기위해 한 image만 준비하고 background 위치 조정해서 보여주는 것
: 단점으로 <button>에 focus시 outline이 안 보이는 문제가 있었는데, ARIA를 사용해 role을 주고 button의 textnode를 삭제해 해결했다.