【问题标题】:calculate transition distance to justify projection size计算过渡距离以证明投影大小
【发布时间】:2015-03-31 10:49:41
【问题描述】:

我有一个图像,通过应用带有一些透视的z translate,视觉上应该变得更大。 我需要计算 z 方向 dist 的平移距离,这将导致初始图像投影的大小增加一些 factor

【问题讨论】:

    标签: css matrix css-transforms webkit-perspective


    【解决方案1】:

    perspective 属性设置观察者到场景的距离;这与从观察者到初始(未转换)元素的距离相同。

    当你应用变换时,会改变这个位置,因此元素的最终距离会减少这个量。

    元素的父级大小将与此变化成正比

    初始距离 = 透视

    最终距离 = 透视 - translate-z

    比率 = 初始 / 最终

    如果perspective是1000px,translateZ是750px,那么最终的距离是250px,比例是4。图片会得到4x的缩放效果

    逆演算是:

    translateZ = 视角 * (1 - 因子)

    以 1000 像素视角和 750 像素平移实现 4 倍的示例

    .base {
      width: 100px;
      height: 100px;
      perspective: 1000px;
      perspective-origin: -3px -2px;
      border: solid 1px red;
    }
    .transform {
      width: 25px;
      height: 25px;
      border: solid 1px blue;
      transform: translateZ(750px);
      left: 34px;
      top: 34px;
    }
    <div class="base">
    <div class="transform"></div>
    </div>

    【讨论】:

    • 你能举个例子吗?
    • @Danield 完成。请注意,边框变大了,但尺寸还可以
    猜你喜欢
    • 2015-02-26
    • 1970-01-01
    • 2019-04-23
    • 2013-02-21
    • 2011-08-13
    • 1970-01-01
    • 1970-01-01
    • 2011-01-06
    • 1970-01-01
    相关资源
    最近更新 更多