<div class="items">
  <div class="item item-1">
    <div class="overlay overlay-1">
      <div>
        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor.</p>
      </div>
    </div>
  </div>
  <div class="item item-2">
    <div class="overlay overlay-2">
      <div>View More </div>
    </div>
  </div>
  <div class="item item-3">
    <div class="overlay overlay-3">
      <div>Info about Picture</div>
    </div>
  </div>
</div>
$yellow: #f0e68c;
$blue: #4682b4;

* {
  font-family: sans-serif;
  font-weight: 300;
  letter-spacing: 1px;
}
.items {
  display: grid;
  max-width: 1000px;
  margin: 0 auto;
  grid-template-columns: repeat(auto-fill, 175px);
  grid-auto-rows: 175px;
  grid-gap: 20px;
}
.item {
  display: grid;
  overflow: hidden;
  z-index: 10;
  
  &:hover {
    .overlay {
      display: grid;
    }
  }
}

.item-1 {
  background: url(https://picsum.photos/id/413/300/300) center no-repeat;
  
  &:hover {
    .overlay {
      transform: translateY(0%);
    }
  }
}

.item-2 {
  background: url(https://picsum.photos/id/80/400/400) center no-repeat;
  
  &:hover {
    .overlay {
      transform: rotateX(0);
    }
  }
}

.item-3 {
  background: url(https://picsum.photos/500/500?random) center no-repeat;
  
  &:hover {
    .overlay {
      transform: translate(0%,0%);
    }
  }
}

.overlay {
  background: rgba(0,0,0, 0.6);
  display: grid;
  align-items: center;
  justify-items: center;
  color: white;
  transition: all 0.5s;
  position: relative;
  
  &.overlay-1 {
    transform: scale(1) translateX(-100%);
    
    div {
      padding: 20px;
    }
  }
  
  &.overlay-2 {
    margin: 10px;
    background: rgba($yellow, 0.65);
    transform: rotateX(90deg);
    cursor: pointer;
  }
  
  &.overlay-3 {
    border-radius: 100%;
    margin: 10px 10px 75px 75px;
    background: rgba($blue, 0.8);
    transform: scale(10) translate(-100%,200%);
    
    div {
      text-align: center;
    }
  }
}

img {
  width: 100%;
}
View Compiled

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.