[javascript] Isotope에서 이미지들에 대한 오버레이 효과를 적용하는 방법은 무엇인가요?
- HTML 마크업에서 오버레이 템플릿 만들기:
<div class="item"> <img src="image.jpg" alt="Image"> <div class="overlay"> <h3>제목</h3> <p>설명</p> </div> </div>위 예제에서는
.item클래스에 이미지와 오버레이 내용을 감싸고, 오버레이 요소는.overlay클래스로 만들었습니다. - CSS 스타일링을 통해 오버레이 효과를 추가합니다:
.item { position: relative; } .overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.7); color: #fff; display: flex; flex-direction: column; justify-content: center; align-items: center; opacity: 0; transition: opacity 0.3s ease-in-out; } .item:hover .overlay { opacity: 1; }.item클래스에position: relative;을 적용하여 내부의.overlay요소에 대한 (0,0) 위치의 상대적인 좌표가 되도록 합니다..overlay클래스는 절대적인 위치를 가지며, 투명한 검정 배경과 흰색 텍스트를 가지고 있습니다.opacity속성을 사용하여 오버레이의 투명도를 조절하고,transition속성을 사용하여 부드러운 애니메이션 효과를 적용합니다. 마지막으로.item:hover .overlay를 사용하여 마우스 오버 시 오버레이가 나타나도록 설정합니다. - Isotope에 오버레이 효과 적용하기:
$('.grid').isotope({ itemSelector: '.item', layoutMode: 'fitRows' });위 코드는 Isotope 그리드를 초기화합니다.
.grid클래스는 Isotope 그리드의 컨테이너 역할을 하는 요소를 가리킵니다..item클래스는 Isotope 그리드의 각 항목을 나타내는 요소를 가리킵니다.layoutMode옵션은 그리드 레이아웃 모드를 지정하며,'fitRows'는 가로 줄에 최대한 많은 항목을 채우는 모드입니다.
위 단계를 따라 이미지에 오버레이 효과를 적용할 수 있습니다. 이를 통해 Isotope 그리드에서 이미지에 대한 추가 정보를 보여줄 수 있습니다.