Matereālu izskats ar baltu fonu kas daļēji nosedz bildi

by Antikrists

HTML

<script src="https://tympanus.net/Tutorials/ShapeHoverEffectSVG/js/snap.svg-min.js"></script>
<section id="grid" class="grid clearfix">
<a href="#" data-path-hover="m 0,0 0,47.7775 c 24.580441,3.12569 55.897012,-8.199417 90,-8.199417 34.10299,0 65.41956,11.325107 90,8.199417 L 180,0 z">
    <figure>
        <img src="http://bildites.lv/images/x88zp2z8/87006/original.jpg"width="200"height="300" />
        <svg viewBox="0 0 180 320" preserveAspectRatio="none">
            <path d="m 0,0 0,171.14385 c 24.580441,15.47138 55.897012,24.75772 90,24.75772 34.10299,0 65.41956,-9.28634 90,-24.75772 L 180,0 0,0 z"/>
        </svg>
        <figcaption><h2>UW 1</h2>
            <p>Policija atsūtīja manu mašīnas foto pārkāpjot ātrumu! 
Es aizsūtīju foto ar soda naudu!</p>
        </figcaption>
    </figure>
</a>
    <a href="#" data-path-hover="m 0,0 0,47.7775 c 24.580441,3.12569 55.897012,-8.199417 90,-8.199417 34.10299,0 65.41956,11.325107 90,8.199417 L 180,0 z">
    <figure>
        <img src="http://bildites.lv/images/4krxns3g/87006/original.jpg" width="200"height="300" /> <svg viewBox="0 0 180 320" preserveAspectRatio="none">
            <path d="m 0,0 0,171.14385 c 24.580441,15.47138 55.897012,24.75772 90,24.75772 34.10299,0 65.41956,-9.28634 90,-24.75772 L 180,0 0,0 z"/>
        </svg>
        <figcaption>
            <h2>UW 2</h2>
            <p>- Vai jums tiešām jālaiza nazis? 
- Es atvainojos, bet cilvēki bieži laiza nažus! 
- Jā, bet ne jau operācijas laikā, dakter.</p>
        </figcaption>
    </figure>
</a>

</section>

CSS

body {
    background:#2f4067;
    margin:0px;
    padding:0px;
}
/* Common style */
 .grid {
    margin: 10px;
    max-width: 1000px;
    width: 90%;
}
.grid a {
    float: left;
    max-width: 250px;
    width: 200px;
    color: #333;
    font-size: 13px;
}
.grid a:nth-child(odd) {
    margin: 0px;
}
.grid figure {
    position: relative;
    overflow: hidden;
    margin: 5px;
    background: #333;
}
.grid figure img {
    position: relative;
    display: block;
    width: 100%;
    opacity: 0.7;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
}
.grid figcaption {
    position: absolute;
    top: 0;
    z-index: 11;
    width: 100%;
    height: 100%;
    text-align: center;
}
.grid figcaption h2 {
    margin: 0 0 20px 0;
    color: #3498db;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: 300;
    font-size: 130%;
    -webkit-transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
}
.grid figcaption p {
    padding: 0 20px;
    color: #aaa;
    font-weight: 300;
    -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
    transition: opacity 0.3s, transform 0.3s;
}
.grid figcaption h2, .grid figcaption p {
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
}
.grid figure button {
    position: absolute;
    padding: 4px 20px;
    border: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: bold;
    -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
    transition: opacity 0.3s, transform 0.3s;
}
.grid figcaption, .grid figcaption h2, .grid figcaption p, .grid figure button {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
/* Style for SVG */
 .grid svg {
    position: absolute;
    top: -1px;
    /* fixes rendering issue in FF */
    z-index: 10;
    width: 100%;
    height: 100%;
}
.grid svg path {
    fill: #fff;
}
/* Hover effects */
 .grid a:hover figure img {
    opacity: 1;
}
.grid a:hover figcaption h2, .grid...

JavaScript

(function () {
    function init() {
        var speed = 330,
            easing = mina.backout;

        [].slice.call(document.querySelectorAll('#grid > a')).forEach(function (el) {
            var s = Snap(el.querySelector('svg')),
                path = s.select('path'),
                pathConfig = {
                    from: path.attr('d'),
                    to: el.getAttribute('data-path-hover')
                };

            el.addEventListener('mouseenter', function () {
                path.animate({
                    'path': pathConfig.to
                }, speed, easing);
            });

            el.addEventListener('mouseleave', function () {
                path.animate({
                    'path': pathConfig.from
                }, speed, easing);
            });
        });
    }
    init();
})();