【问题标题】:Transform scale "Zoom" on hover with max width?在悬停时以最大宽度变换比例“缩放”?
【发布时间】:2017-01-03 03:44:37
【问题描述】:

编辑:: 已解决,而不是使用变换,更改背景大小有效,谢谢大家。

我正在尝试转换其中一个 div 的比例,同时保持最大宽度,例如缩放效果,但是它忽略了最大宽度?

.Img2 {
  position: relative;
  height: 300px;
  display: inline-block;
  width: 400px;
  float: left;
  padding: 0;
  cursor: pointer;
}
.box2 {
  height: 300px;
  max-width: 400px;
  width: 400px;
  display: inline-block;
  background-size: contain;
  background-position: center;
  background-color: black;
}
.box2:hover {
  transform: scale(1.03);
}
<li class="Img2">
  <div class="box2"></div>
</li>

【问题讨论】:

  • 感谢您修复格式,我不知道如何创建 sn-ps。

标签: html css


【解决方案1】:

来自MDN article on CSS transforms

通过修改坐标空间,CSS 变换可以改变受影响内容的形状和位置,而不会中断正常的文档流。

这就是您的transform: scale() 不受max-width 约束影响的原因。相反,您需要scale 高度(Y 维度),同时保持宽度(X 维度)相同(read more)。请参阅下面的更新示例:

.Img2 {
    position: relative;
    height: 300px;
    display: inline-block;
    width: 400px;
    float: left;
    padding: 0;
    cursor: pointer;
}
.box2 {
    height: 300px;
    max-width: 400px;
    width: 400px;
    display: inline-block;
    background-size: contain;
    background-position: center;
    background-color: black;
}
.box2:hover {
    transform: scale(1, 1.03);
}
<li class="Img2">
    <div class="box2"></div>
</li>

【讨论】:

  • 我怎样才能保持高度不变呢?所以它有一种缩放效果?
  • 如果您保持宽度和高度相同,那么您希望改变什么? “缩放”效果是什么意思?您是在谈论为您的比例设置动画吗?
  • 如果有背景图片会更好,我正在寻找可以在约束范围内“缩放”或缩放图像的代码。
  • 我的坏人用另一种方法“背景大小”弄明白了
猜你喜欢
  • 2018-08-30
  • 1970-01-01
  • 2018-03-11
  • 1970-01-01
  • 1970-01-01
  • 2021-05-13
  • 1970-01-01
  • 2021-03-01
  • 2019-02-03
相关资源
最近更新 更多