찾다

 >  Q&A  >  본문

css3 - transform的顺序不同为何会使元素的形状不同。

两个形状完全一样的p 设置了transform的三个值 但是三个值的顺序不同。所以产生的两个p的形状也不相同,原因是什么。
贴一个在线地址
http://sandbox.runjs.cn/show/r9sqhw5y

p {
    position: absolute;
    top: 40px;
    left: 40px;
    width: 100px;
    height: 100px;
    background-color: blue;
    border: 1px solid red;
    transform: translate(10px) rotate(50deg) skew(20deg);
}
p.test {
    transform: skew(20deg) rotate(50deg) translate(10px);    
    left: 240px;
}

PS: 与 transform-origin 无关

阿神阿神2784일 전503

모든 응답(2)나는 대답할 것이다

  • 黄舟

    黄舟2017-04-17 11:39:56

    因為矩陣不滿足交換率,即 [A] [B] != [B] [A]比如你的手機正面向上
    經過
    1:向內反轉,再向左翻轉之後
    屏幕朝向左。
    2.向左翻轉,再向內翻轉之後
    屏幕朝向你。

    회신하다
    0
  • PHPz

    PHPz2017-04-17 11:39:56

    因为 transform 属性如果有多个值,是依次执行变换的。

    就这么简单。

    회신하다
    0
  • 취소회신하다