자바스크립트와 CSS Grid를 사용하여 웹 애플리케이션의 이미지 뷰어 구현하기
이미지 뷰어는 웹 애플리케이션에서 사용자가 이미지를 볼 수 있도록 도와주는 중요한 기능입니다. 이번에는 자바스크립트와 CSS Grid를 활용하여 웹 애플리케이션의 이미지 뷰어를 구현하는 방법을 알아보겠습니다.
CSS Grid 소개
CSS Grid는 웹 페이지를 그리드 형태로 나누고 배치하는 데 사용되는 CSS 레이아웃 시스템입니다. 이를 통해 유연하고 강력한 레이아웃을 만들 수 있습니다. Grid 컨테이너와 그리드 아이템으로 구성되며, 각 아이템의 위치와 크기를 조절할 수 있습니다.
이미지 뷰어 구현하기
이미지 뷰어를 구현하기 위해 다음과 같은 단계를 따라갈 수 있습니다:
- HTML 구조 생성하기:
<div>
요소를 이용하여 이미지를 감싸고, 이미지 뷰어의 기능을 수행할 버튼을 추가합니다.
<div class="image-viewer">
<img src="image.jpg" alt="Image">
<button class="prev-button">Previous</button>
<button class="next-button">Next</button>
</div>
- CSS Grid 속성 적용하기: Grid 컨테이너에
display: grid
속성을 적용하고, 그리드 아이템을 정렬합니다.
.image-viewer {
display: grid;
grid-template-columns: 1fr;
grid-template-rows: auto 50px;
gap: 10px;
}
.prev-button, .next-button {
grid-row: 2;
}
- 자바스크립트로 버튼 기능 추가하기: 이미지 뷰어의 버튼을 클릭할 때마다 이전 또는 다음 이미지를 표시하는 기능을 추가합니다.
const images = ["image1.jpg", "image2.jpg", "image3.jpg"];
let currentIndex = 0;
const imageView = document.querySelector(".image-viewer");
const prevButton = document.querySelector(".prev-button");
const nextButton = document.querySelector(".next-button");
prevButton.addEventListener("click", () => {
currentIndex = (currentIndex - 1 + images.length) % images.length;
imageView.querySelector("img").src = images[currentIndex];
});
nextButton.addEventListener("click", () => {
currentIndex = (currentIndex + 1) % images.length;
imageView.querySelector("img").src = images[currentIndex];
});
이제 웹 애플리케이션에 이미지 뷰어가 구현되었습니다. CSS Grid를 사용하여 이미지와 버튼을 그리드 형태로 배치하고, 자바스크립트를 이용하여 이전/다음 이미지를 표시하는 기능을 구현했습니다.
이와 같이 자바스크립트와 CSS Grid를 활용하여 웹 애플리케이션의 이미지 뷰어를 구현할 수 있습니다. 이를 통해 사용자들은 웹 페이지에서 편리하게 이미지를 확인할 수 있습니다.
#javascript #CSSGrid