2016-04-16 5 views
0

Ich möchte diesen Effekt erstellen:Zoom-Effekt css3 dehne mein Bild

Bild auf Schweben wird dunkler und zoomt es ein wenig. Ich habe den Effekt, aber mein Ausgangsbild ist gestreckt. Ich kenne die Hintergrundbildgröße nicht, nur möchte das Bild ein wenig zoomen, wenn der Benutzer schwebt.

.highlight{ 
    background-size: 100% 100%; 
    -moz-transition: background-size 3s ease, background-color 3s ease; 
    -webkit-transition: background-size 3s ease, background-color 3s ease; 
    transition: background-size 3s ease, background-color 3s ease; 
} 

.highlight:hover{ 
    background-size: 120% 120%; 
    background-color:rgba(0,0,0,0); 
    -moz-transition: background-size 3s ease, background-color 3s ease; 
    -webkit-transition: background-size 3s ease, background-color 3s ease; 
    transition: background-size 3s ease, background-color 3s ease; 
} 

.highlight:hover:before{ 
    content: ""; 
    display: inline; 
    width: 100%; 
    height: 100%; 
    background-color:rgba(0,0,0,0.7); 
    -moz-transition: background-size 3s ease, background-color 3s ease; 
    -webkit-transition: background-size 3s ease, background-color 3s ease; 
    transition: background-size 3s ease, background-color 3s ease; 
} 

<div class="col-xs-12 col-sm-12 col-md-6"> 
<div class="highlight" style="background-image:url(image-url)"> 
    <div class="content"> 
     <h3>Text</h3> 
     <p class="large">More text text text</a> 
    </div> 
</div> 
</div> 
<div class="col-xs-12 col-sm-12 col-md-6"> 
<div class="highlight" style="background-image:url(image-url2)"> 
    <div class="content"> 
     <h3>Text2</h3> 
     <p class="large">More text text text2</a> 
    </div> 
</div> 
</div> 

enter image description here

Antwort

1

Ist das, was Sie suchen?

.highlight{ 
 
    position: relative; 
 
    height: 300px; 
 
    background-size: 100%; 
 
    background-position: center top; 
 
    -moz-transition: background-size 3s ease; 
 
    -webkit-transition: background-size 3s ease; 
 
    transition: background-size 3s ease; 
 
} 
 
.highlight:hover{ 
 
    background-size: 120%; 
 
    background-color:rgba(0,0,0,0); 
 
    -moz-transition: background-size 3s ease; 
 
    -webkit-transition: background-size 3s ease; 
 
    transition: background-size 3s ease; 
 
} 
 

 
.highlight:before{ 
 
    content: ' '; 
 
    position: absolute; 
 
    left: 0; top: 0; 
 
    right: 0; bottom: 0; 
 
    background-color:rgba(0,0,0,0); 
 
    -moz-transition: background-color 3s ease; 
 
    -webkit-transition: background-color 3s ease; 
 
    transition: background-color 3s ease; 
 
} 
 
.highlight:hover:before{ 
 
    background-color:rgba(0,0,0,0.7); 
 
    -moz-transition: background-color 3s ease; 
 
    -webkit-transition: background-color 3s ease; 
 
    transition: background-color 3s ease; 
 
}
<div class="highlight" style="background-image:url(http://lorempixel.com/1100/700/nature/2/)"> 
 
    <div class="content"> 
 
     <h3>Text</h3> 
 
     <p class="large">More text text text</p> 
 
    </div> 
 
</div>

+0

Fast perfekt! Ich habe diesen Effekt in zwei Bildern zusammen, Sharing eine 50% der Seitenbreite. Jetzt erscheint ein "Rand" oben und unten. Ich werde meinem Beitrag ein Bild hinzufügen, damit Sie das Beispiel sehen können. Ich denke das Problem ist, dass hightligh div von einem "col-xs-12 col-sm-12 col-md-6" div umschlossen wird. – Genaut

+0

@ user1422434 Dieser Rand gehört am ehesten zum 'h3', also wenn Sie' h3 {margin: 0} 'zu Ihrem CSS hinzufügen, sollte es verschwinden. Wenn nicht, musst du ein Code-Snippet posten, wo dies geschieht, damit ich sehen kann, was es noch sein könnte. – LGSon

+0

Ok, das Problem ist, dass das Bild, das ich benutze, 2200x1400 ist und dein Bild 600 * 400 ist, wenn das Bild höher ist sieht vielleicht hübsch aus – Genaut