html - CSS Transforms 给 div 一个轮廓

标签 html css transform gradient isometric

我正在构建一个用 css 创建的立方体的等距网格,但我遇到了轮廓问题。

这是我想要实现的目标: cube design 但这是我到目前为止所得到的:

html cube 我尝试了一些常用的技巧,例如使用一些 translateZ 和背面可见性,但无济于事。

我的 CSS 看起来像这样:

.立方体{

transform: rotateX(55deg) rotateZ(45deg) translateX(50%) translateY(-50%);
transform-origin: 0% 0%;
transform-style: preserve-3d;
position: relative;
pointer-events:all;
transition: background-position ease 7s;
background-size: 400% 400%;


div {
  position: absolute;
  transition: background-position ease 7s;
  backface-visibility: hidden;

  &:first-child {
    transform-origin: center top;
    width: 100%;
    height:100%;
    transform: rotateX(-90deg);
    top: 100%;
  }

  &:nth-child(2) {
    transform-origin: left center;
    width: 100%;
    height: 100%;
    left: 100%;
    transform: rotateY(90deg);
  }
}

任何想法将不胜感激。

codepen link

最佳答案

这里的技巧是让立方体的面重叠,并使用 background-blend-mode CSS 属性让它们相互混合。这会导致立方体相互融合并摆脱奇怪的边界。

此处的工作代码笔链接:https://codepen.io/anon/pen/LXzWjJ

您可能需要稍微尝试一下转换和维度以获得您想要的确切结果。

这不是最好的解决方案,但似乎可行。

希望这对您有所帮助!

关于html - CSS Transforms 给 div 一个轮廓,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53366301/

相关文章:

javascript - Jquery css 选择器如果没有数据则应用样式

javascript - 使用响应式页面内容实现侧边栏

javascript - 拉斐尔JS : Move and scale objects with FreeTransform in limits

javascript - 如何在元素不超出父边界的情况下过渡高度?

javascript - jQuery:隐藏元素

javascript - 带总和的 jQuery 选择器

html - 使用 css 和 html 以及在 HTML 表格中,如何添加一列使其具有阴影?

c++ - 如何在DirectShow中水平镜像视频?

css - 当父 div 具有转换 : translate 时,Bootstrap 模态对话框黑掉

html - 如何一次制作 float 内容?