简体   繁体   English

背景图像边框半径 - 白角

[英]Background image border radius - white corners

I was trying to create Tilt effect on Hover with CSS and JS.我试图用 CSS 和 JS 在 Hover 上创建倾斜效果。 I have used Vanilla Tilt JS Library and that works well.我使用过 Vanilla Tilt JS 库,效果很好。

After I wanted to add bottom shadow to images that needs to be tilted on hover, but I have problem with white corners.在我想为需要在悬停时倾斜的图像添加底部阴影之后,但我遇到了白角问题。 Images are rounded with border-radius and when I hover bottom corner white color is between image and shadow.图像用border-radius四舍五入,当我将鼠标悬停在底角时,白色介于图像和阴影之间。

Problem:问题:
在此处输入图片说明

My Code我的代码

 .card-container { width: 260px; height: 380px; background-position: 50% center; background-size: cover; border-radius: 15px; } .card-container:hover:after { content: ''; position: absolute; top: 0; left: 0; height: 100%; width: 100%; box-shadow: 0 20px 70px -30px rgba(51, 51, 51, 0.7), 0 50px 100px 0 rgba(51, 51, 51, 0.2); z-index: 10; -webkit-transform: translateZ(-50px); transform: translateZ(-50px); -webkit-transition: .3s; transition: .3s; }
 <link rel="stylesheet" type="text/css" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.1/css/bootstrap.min.css"> <div class="container"> <div class="row"> <div class="col-md-4 text-center"> <!-- One Card Code --> <div class="card-container" style="background-image:url(https://cdn2.unrealengine.com/Unreal+Engine%2FTeaser-Image-3-944x720-54a0ac93e369fd0ee577012df4f1dcd5da67c281.jpg);" data-tilt="" data-tilt-glare="true" data-tilt-max-glare="0.5" data-tilt-speed="400" data-tilt-scale="1.08" data-tilt-max="40" data-tilt-perspective="500" style="will-change: transform; transform: perspective(500px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1); "></div> <!-- One Card Code END --> </div> <div class="col-md-4 text-center"> <div class="card-container" style="background-image:url(https://cdn2.unrealengine.com/Unreal+Engine%2FTeaser-Image-2-944x720-e9951a49084478d378346e46bdb026c0b989a479.jpg);" data-tilt="" data-tilt-glare="true" data-tilt-max-glare="0.5" data-tilt-speed="400" data-tilt-scale="1.08" data-tilt-max="40" data-tilt-perspective="500" style="will-change: transform; transform: perspective(500px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1); "></div> </div> <div class="col-md-4 text-center"> <div class="card-container" style="background-image:url(https://cdn2.unrealengine.com/Unreal+Engine%2FTeaser-Image-944x720-d7a738407387149cc4e941dd18e9486a0c89bb51.jpg);" data-tilt="" data-tilt-glare="true" data-tilt-max-glare="0.5" data-tilt-speed="400" data-tilt-scale="1.08" data-tilt-max="40" data-tilt-perspective="500" style="will-change: transform; transform: perspective(500px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1); "></div> </div> </div> </div> <script src="https://cdnjs.cloudflare.com/ajax/libs/vanilla-tilt/1.4.1/vanilla-tilt.min.js"></script>

Can someone give me a hint how to fix this?有人可以给我一个提示如何解决这个问题吗?

I have tried to set overflow to none , but it removes shadow.我试图将overflow设置为none ,但它删除了阴影。 Also I have tried to "resize" shadow, but it also doesn't helps.我也试图“调整”阴影的大小,但这也无济于事。

make the shadow on .card-container and you can apply overflow:hidden :.card-container上制作阴影,您可以应用overflow:hidden

 .card-container { width: 260px; height: 380px; background-position: 50% center; background-size: cover; border-radius: 15px; overflow:hidden; } .card-container:hover { box-shadow: 0 20px 70px -30px rgba(51, 51, 51, 0.7), 0 50px 100px 0 rgba(51, 51, 51, 0.2); transition: .3s; }
 <div class="container"> <div class="row"> <div class="col-md-4 text-center"> <!-- One Card Code --> <div class="card-container" style="background-image:url(https://cdn2.unrealengine.com/Unreal+Engine%2FTeaser-Image-3-944x720-54a0ac93e369fd0ee577012df4f1dcd5da67c281.jpg);" data-tilt="" data-tilt-glare="true" data-tilt-max-glare="0.5" data-tilt-speed="400" data-tilt-scale="1.08" data-tilt-max="40" data-tilt-perspective="500" style="will-change: transform; transform: perspective(500px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1); "></div> <!-- One Card Code END --> </div> <div class="col-md-4 text-center"> <div class="card-container" style="background-image:url(https://cdn2.unrealengine.com/Unreal+Engine%2FTeaser-Image-2-944x720-e9951a49084478d378346e46bdb026c0b989a479.jpg);" data-tilt="" data-tilt-glare="true" data-tilt-max-glare="0.5" data-tilt-speed="400" data-tilt-scale="1.08" data-tilt-max="40" data-tilt-perspective="500" style="will-change: transform; transform: perspective(500px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1); "></div> </div> <div class="col-md-4 text-center"> <div class="card-container" style="background-image:url(https://cdn2.unrealengine.com/Unreal+Engine%2FTeaser-Image-944x720-d7a738407387149cc4e941dd18e9486a0c89bb51.jpg);" data-tilt="" data-tilt-glare="true" data-tilt-max-glare="0.5" data-tilt-speed="400" data-tilt-scale="1.08" data-tilt-max="40" data-tilt-perspective="500" style="will-change: transform; transform: perspective(500px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1); "></div> </div> </div> </div> <script src="https://cdnjs.cloudflare.com/ajax/libs/vanilla-tilt/1.4.1/vanilla-tilt.min.js"></script>

 .card-container { width: 260px; height: 380px; background-position: 50% center; background-size: cover; border-radius: 15px; overflow: hidden; } .card-container:hover { box-shadow: 0 20px 70px -30px rgba(51, 51, 51, 0.7), 0 50px 100px 0 rgba(51, 51, 51, 0.2); z-index: 10; -webkit-transform: translateZ(-50px); transform: translateZ(-50px); -webkit-transition: .3s; transition: .3s; } .card-container:hover:after { content: ''; position: absolute; top: 0; left: 0; height: 100%; width: 100%; }
 <div class="container"> <div class="row"> <div class="col-md-4 text-center"> <!-- One Card Code --> <div class="card-container" style="background-image:url(https://cdn2.unrealengine.com/Unreal+Engine%2FTeaser-Image-3-944x720-54a0ac93e369fd0ee577012df4f1dcd5da67c281.jpg);" data-tilt="" data-tilt-glare="true" data-tilt-max-glare="0.5" data-tilt-speed="400" data-tilt-scale="1.08" data-tilt-max="40" data-tilt-perspective="500" style="will-change: transform; transform: perspective(500px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1); "></div> <!-- One Card Code END --> </div> <div class="col-md-4 text-center"> <div class="card-container" style="background-image:url(https://cdn2.unrealengine.com/Unreal+Engine%2FTeaser-Image-2-944x720-e9951a49084478d378346e46bdb026c0b989a479.jpg);" data-tilt="" data-tilt-glare="true" data-tilt-max-glare="0.5" data-tilt-speed="400" data-tilt-scale="1.08" data-tilt-max="40" data-tilt-perspective="500" style="will-change: transform; transform: perspective(500px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1); "></div> </div> <div class="col-md-4 text-center"> <div class="card-container" style="background-image:url(https://cdn2.unrealengine.com/Unreal+Engine%2FTeaser-Image-944x720-d7a738407387149cc4e941dd18e9486a0c89bb51.jpg);" data-tilt="" data-tilt-glare="true" data-tilt-max-glare="0.5" data-tilt-speed="400" data-tilt-scale="1.08" data-tilt-max="40" data-tilt-perspective="500" style="will-change: transform; transform: perspective(500px) rotateX(0deg) rotateY(0deg) scale3d(1, 1, 1); "></div> </div> </div> </div> <script src="https://cdnjs.cloudflare.com/ajax/libs/vanilla-tilt/1.4.1/vanilla-tilt.min.js"></script>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM