В Вашем примере прослеживаются 3 ряда по 3 блока в каждом. Что-то такое:
Чтобы сделать длинный и высокий блоки надо использовать:
grid-column-start, grid-column-end, grid-row-start...
Дальше для каждой фотографии создаем контейнер(последующие манипуляции будут только с ними).
И мы имеем три пути:
- Мы обрезаем фото под нужные размеры с помощью clip-path(я бы использовал clip потому, что поддержка с IE4)
- Изменяем размер контейнеров на нужные нам через transform
- Изменяем размер контейнеров на нужные нам через position: absolute и width height