html - 应用变换 :scale to just the background image

标签 html css css-transforms

我正在尝试使用 transform:scale 对具有 background-size:cover 的 div 背景图像实现优雅的放大效果。

我面临的问题是,当背景图像放大时,比例似乎会放大 div。

有没有办法只将效果应用于背景图像?还是我做错了什么?

.despre-noi-image {
  width: 40%;
  height: 500px;
  background: url('https://static.independent.co.uk/s3fs-public/styles/story_large/public/thumbnails/image/2017/04/18/16/wine-evening.jpg') no-repeat center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  text-align: left;
  background-position-x: 50%;
  background-position-y: 0%;
  -webkit-animation: zoomin 10s linear;
  animation: zoomin 10s linear;
  animation-fill-mode: forwards;
}

@-webkit-keyframes zoomin {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  100% {
    -webkit-transform: scale(2);
    transform: scale(2);
  }
}
<div class="despre-noi-image">
  &nbsp;
</div>
<!-- despre-noi-image -->

最佳答案

CSS 非常简单。您可以通过悬停过渡而不是缩放来更改背景大小。

.despre-noi-image {
    width: 40%;
    height: 500px;
    background: url('https://static.independent.co.uk/s3fs-public/styles/story_large/public/thumbnails/image/2017/04/18/16/wine-evening.jpg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
    transition: all .7s;
}
.despre-noi-image:hover {
    transition: all 1s;
    background-size: 110%;
}

关于html - 应用变换 :scale to just the background image,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47215762/

相关文章:

javascript - 滚动时固定边栏的计算

javascript - 多次动态更改div标签的内容

java - 如何在HTML页面中绘制时序图

css - 从父元素旋转子元素 :Hover

html - 为什么在浏览器中缩放时只有字体大小增加?

css - 垂直对齐两个元素

javascript - jquery 下拉菜单不起作用

javascript - 注入(inject)的链接样式表优先于 IE7+ 中的现有样式

CSS 变换比例破坏图像叠加

javascript - 从转换字符串中提取不同的 css 转换?