css - Fluent Design 卡片提升效果

标签 css bootstrap-4 fluent-design fluent-kit

我想为我的 bootstrap cards with fluent design styles 添加卡片提升效果悬停。你可以在microsoft design website上看到我的意思.

这是我尝试过的,但缺少一些东西,我无法完全捕获它。

我试过:

.card {
  box-shadow: -3px 6px 5px 0px rgba(176,164,176,1);
  transition: all .3s ease-in-out;
}

.card:hover {
  box-shadow: -3px 18px 20px 0px rgba(99,89,99,1);
}
<div class="card" style="width:19.5rem">
  <div class="card-body">
   Lorem ipsum dolor sit ameta, card content
  </div>
</div>

非常感谢您的帮助。

最佳答案

transform: translate3d, see translate3d w3cschools docs 使效果看起来像提升的原因.

box-shadow:hover 上发生变化时,元素本身会移动到不同的位置,从而产生效果。

因此,通过提供 transform: translate3d(0px, -1px, 0px); ( translate3d(x,y,z) ),元素移动 1px 向上 和阴影转换向下

.card {
  padding: 15px; /* JUST TO LOOK COOL */
  border: 1px solid #eee;  /* JUST TO LOOK COOL */
  box-shadow: rgba(0, 0, 0, 0.06) 0px 2px 4px;
  transition: all .3s ease-in-out;
}

.card:hover {
  box-shadow: rgba(0, 0, 0, 0.22) 0px 19px 43px;
  transform: translate3d(0px, -1px, 0px);
}
<div class="card" style="width:19.5rem">
  <div class="card-body">
   Lorem ipsum dolor sit ameta, card content
  </div>
</div>

关于css - Fluent Design 卡片提升效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51184792/

相关文章:

javascript - 设置 Dojo 按钮的宽度

html - 如果外部 div 太小,内部 div 滚动?

html - 尝试居中对齐列表项

javascript - 无法从 Bootstrap 4 中的自定义输入文件读取未定义的属性 'path'

c++ - 如何在 Windows 10 上获得模糊的半透明 QML 窗口(类似于 Fluent Design 指南)?

javascript - 创建 jsFiddle/jsbin.com 样式代码编辑器的工具?

css - 图标题与图像边距对齐

javascript - Bootstrap 4轮播循环方法

c# - UWP 在代码隐藏中设置主题资源丙烯酸

xamarin.forms - Xamarin 形式的流畅设计