html의 img태그는 크기, 위치 조절이 번거롭다. 그래서 보통 중요도가 떨어지는 이미지의 경우에 한해서는 css background-image로 처리해주는데, 중요한 이미지까지 background-image 처리하면 웹접근성을 준수하지 못한다.
이런 경우에 이미지를 css background-image 속성으로 크기,위치 조절을 하면서 웹접근성을 위반하지 않는 트릭이 있다.
<ul class="thumb-info-list"> <li class="thumb-info-item"> <figure class="author-photo a11y-hidden-bg" style="background-image: url('images/profile_sq.png'"> <img src="images/profile_sq.png" alt="Tina Coloso" class="a11y-hidden"> </figure> <p class="thumb-info-content"> Lorem ipsum dolor sit.. </li> <li class="thumb-info-item"> <figure class="author-photo a11y-hidden-bg" style="background-image: url('images/profile_sq.png'"> <img src="images/profile_sq.png" alt="Tina Coloso" class="a11y-hidden"> </figure> <p class="thumb-info-content"> Lorem ipsum dolor sit.. </li> <li class="thumb-info-item"> <figure class="author-photo a11y-hidden-bg" style="background-image: url('images/profile_sq.png'"> <img src="images/profile_sq.png" alt="Tina Coloso" class="a11y-hidden"> </figure> <p class="thumb-info-content"> Lorem ipsum dolor sit.. </li> </ul>
- 우선, img를 담고 있는 figure 태그에 inline-style로 background-image를 불러온다.
- .a11y-hidden-bg/ .a11y-hidden
.a11y-hidden-bg { overflow: hidden; background-repeat: no-repeat; background-position: center; background-size: cover; } // bg이미지를 숨기는 속성 .a11y-hidden { position:absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip-path: polygon(0 0, 0 0, 0 0) } // img태그 숨기는 속성
Uploaded by
N2T