【问题标题】:How to use CSS 3D to display child elements perpendicular to parent element?如何使用 CSS 3D 显示垂直于父元素的子元素?
【发布时间】:2013-03-29 22:47:04
【问题描述】:

想要的效果是有 2 个垂直的 dom 元素,就像一本“弹出式”书。但是,子元素似乎被展平/投影到父平面上。

如果 2 个元素是同级元素,它似乎可以工作。但是,我正在寻找一种方法来为父/子元素实现这一目标。

<div class="container">
    <div class="parent" style="height:300px; width:300px;">
      <div class="child" style="height:100px; width:10px;">

      </div>
    </div>
</div>

.container {
  perspective: 1000;
  -moz-perspective: 1000;
  -webkit-perspective: 1000;
}

.parent {
  transform:rotateX(60deg);
  -moz-transform:rotateX(60deg);
  -webkit-transform:rotateX(60deg);
  background:grey;
}

.child {
  transform:rotateX(-30deg);
  -moz-transform:rotateX(-30deg);
  -webkit-transform:rotateX(-30deg);
  background:red;
  margin: 100px;
}

【问题讨论】:

  • -webkit-transform-style:preserve-3d;似乎是答案。但我仍在努力让它发挥作用

标签: css dom css-transforms


【解决方案1】:

我找到了解决办法。

.parent {
    overflow: visible !important;
    transform-style: preserve-3d;
    -webkit-transform-style: preserve-3d;
}

解决了所有问题

【讨论】:

    【解决方案2】:

    我对父子元素做了一些修改

    .parent:before,
    .parent:after {
     content: ".";    
     display: block;    
     height: 0;    
     overflow: hidden; 
    }
    .parent:after {clear: both;}
    
    .child {
     transform:rotate(-7deg);
    -moz-transform:rotate(-7deg);
    -webkit-transform:rotate(-7deg);
    background:red;
    margin: -60px 100px 100px 100px;
    }
    

    在这里你可以看到小提琴click here

    【讨论】:

      猜你喜欢
      • 2020-07-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-14
      • 1970-01-01
      • 2019-04-27
      相关资源
      最近更新 更多