이미지 스프라이트
하나의 투명한 png 이미지 파일에 사용할 여러 가지 이미지를 배치해서 사용하는 것이다. 이미지를 사용할 때는 사용할 이미지 영역 위치를 설정하여 사용한다.
☑️ 그렇다면 이미지스프라이트 기법을 사용하는 이유는 무엇일까?
이미지 태그가 줄어들면 HTML 파일 자체가 깔끔해지고, 스크린리더로 웹 페이지를 탐색할 때 탐색 속도도 향상된다. 이미지가 많을수록 웹 페이지를 로딩하는 속도가 오래 걸린다. HTML 파일을 읽다가 <img> 태그를 만나면 <img> 태그를 다운로드하고, 또 렌더링을 하다가 <img> 태그를 만나면 또 다운로드를 한다. 이 과정이 많을수록 페이지 로딩 속도가 오래 걸리게 된다. 이미지스프라이트를 사용하면 하나의 이미지를 사용하기 때문에 렌더링 속도가 훨씬 더 빨라진다.
이미지 사용이 많은 규모가 큰 사이트일수록 이미지스프라이트 기법을 사용하면 리소스를 절약하여 훨씬 속도가 빨라진다.
☑️ 이미지 스프라이트는 언제 사용할까?
크게 의미 없이 꾸며주는 이미지를 사용할 때 사용한다. 의미가 있고, 설명이 필요해서 alt 속성이 들어가야 하는 이미지는 <img> 태그를 사용해야 한다.
📌 사용방법
- 가상요소를 사용해서 이미지를 넣을 위치와 크기를 지정한다.
- backgound 이미지로 넣어 해당 이미지가 있는 좌표값을 입력한다.
ul a[class^="link"]::before {
display: block;
content: "";
width: 30px;
height: 30px;
/* background: black; */
position: absolute;
left: 5px;
top: 10px;
}
.link_instagram::before {
background: url(이미지 파일) 좌표값;
}
✅ 인라인 요소이기 때문에 크기 값을 주려면 display: block or inline-block 속성을 넣어줘야 한다.
'기술 > CSS' 카테고리의 다른 글
| [CSS] CSS 새로운 속성 (0) | 2024.03.25 |
|---|---|
| [CSS] CSS 변수 (2) | 2023.11.27 |
| [CSS] transparent - 마우스 hover 상태 요소 밀림 현상 주의 (0) | 2023.11.21 |
| [CSS] height: % vs vh 의 차이 (0) | 2023.10.24 |
| [CSS] Flex - Margin Auto (0) | 2023.10.24 |