Skip to content
Snippets Groups Projects
gallery.sass 3.9 KiB
Newer Older
Olivia206's avatar
Olivia206 committed
.block-gallery
    @include in-page-without-sidebar
        .top
            @include grid(2, md)
            align-items: baseline
Olivia206's avatar
Olivia206 committed
    figure
sebousan's avatar
sebousan committed
        display: block
Olivia206's avatar
Olivia206 committed
        margin-bottom: 0
        > a,
sebousan's avatar
sebousan committed
        img,
        picture
Olivia206's avatar
Olivia206 committed
            display: block
            margin-bottom: $spacing0
Olivia206's avatar
Olivia206 committed
        > a
            transition: filter .3s ease
Olivia206's avatar
Olivia206 committed
            &:hover
                // if low opacity means not selected, selected needs to be darker
                filter: brightness(95%)
alexisben's avatar
alexisben committed

Olivia206's avatar
Olivia206 committed
        img
            height: auto
            width: 100%
alexisben's avatar
alexisben committed

Olivia206's avatar
Olivia206 committed
        figcaption
            position: relative
            p
                margin-bottom: 0
        .credit
            *
                @extend .meta
alexisben's avatar
alexisben committed

Olivia206's avatar
Olivia206 committed
    &--grid
        .gallery
            align-items: baseline
            @include in-page-with-sidebar
                @include grid(3, md, calc(#{$grid-gutter} / 2), calc(#{$grid-gutter} / 2))
alexisben's avatar
alexisben committed
            @include in-page-without-sidebar
                @include grid(4, md)
            @include media-breakpoint-down(md)
                @include grid(2)
                grid-gap: calc(#{$grid-gutter-sm} / 2) !important
            figure
                &:after
                    content: ' ' // This is used to allow align baseline without figcaption
alexisben's avatar
alexisben committed

Olivia206's avatar
Olivia206 committed
    &--carousel
        padding-bottom: $grid-gutter
        padding-top: $grid-gutter
        @include in-page-without-sidebar
            background: $block-gallery-carousel-background
        .block-gallery + &,
        .block-pages--cards + &
            margin-top: 0
Olivia206's avatar
Olivia206 committed
        .container
            .top
                padding-right: calc(#{$grid-gutter-sm} / 2)
                @include media-breakpoint-up(md)
                    padding-right: calc(#{$grid-gutter} / 2)
Olivia206's avatar
Olivia206 committed
        .splide
alexisben's avatar
alexisben committed
            display: flex
Olivia206's avatar
Olivia206 committed
            flex-direction: column
alexisben's avatar
alexisben committed
            &__track
alexisben's avatar
alexisben committed
                margin-right: -calc(#{$grid-gutter-sm} / 2)
                .splide__slide
                    transition: opacity  .3s ease
                    &[aria-hidden=true]
                        opacity: 0.2
alexisben's avatar
alexisben committed
                @include media-breakpoint-up(md)
                    margin-right: -calc(#{$grid-gutter} / 2)
Olivia206's avatar
Olivia206 committed
            &__slide
                flex-shrink: initial
                &:last-child
                    min-width: 100%
                    padding-right: 20%
                    img
alexisben's avatar
alexisben committed
                        max-width: 100%
            figure 
                margin-right: calc(#{$grid-gutter} / 2)
Olivia206's avatar
Olivia206 committed
                picture
                    img
                        max-height: 70vh
                        width: auto
Olivia206's avatar
Olivia206 committed
                        height: auto
                        max-width: calc(100vw - #{$grid-gutter-sm} * 2)
                @include media-breakpoint-up(md)
                    picture
                        img
                            height: 70vh
Olivia206's avatar
Olivia206 committed
                            width: auto
                            height: auto
                            max-width: none
                            @include in-page-without-sidebar
                                height: 70vh
                                max-width: none

Olivia206's avatar
Olivia206 committed
            &__arrows
                margin-left: -18px
Olivia206's avatar
Olivia206 committed
                order: 2
                @media (min-height: 800px)
                    padding-top: px2rem(40)
            &__arrow
                &--prev,
                &--next
Olivia206's avatar
Olivia206 committed
                    @include button-reset
                    @include icon("arrow-left", before)
Olivia206's avatar
Olivia206 committed
                    height: 48px
                    padding: 0
                    position: static
                    width: 48px
Olivia206's avatar
Olivia206 committed
                    svg
                        display: none
                &--next
                    @include icon("arrow-right", before)
        @include in-page-without-sidebar
            .splide
                &__slide
                    &:first-child
                        margin-left: $grid-gutter
                &__track
                    margin-left: -$grid-gutter