如何设计具有角度材料布局的布局,例如:
描述:一个 md 内容框,阴影悬停在 md 工具栏上。
我不认为你可以纯粹在 Angular Material 中做到这一点,但你可以主要在 Material 中做到这一点,然后添加一个简单的 css 类。假设您拥有所有必需的脚本和 css 依赖项,您的 html 将如下所示:
<body ng-app="materialDesignApp" ng-controller="MainCtrl" layout="column">
<md-toolbar flex="33">
</md-toolbar>
<div layout-align="center start" layout="row">
<md-content class="md-whiteframe-z2 move-up" flex="66">
<p layout-margin>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer quis varius nibh, eget fringilla massa. Phasellus sollicitudin, tellus vel hendrerit commodo, eros purus placerat mi, a tristique orci lacus egestas lectus. Aenean congue rutrum suscipit. Aliquam erat volutpat. Sed sollicitudin dui sit amet sapien luctus tincidunt. In eu ipsum lectus. Duis bibendum auctor lorem hendrerit tempor. Aenean rhoncus, dui in mattis interdum, ex erat ultricies libero, ut tincidunt lectus ex finibus lacus. Integer iaculis, nunc tempus finibus cursus, elit eros dictum dolor, et dapibus lectus sapien at risus. Quisque ac metus in turpis malesuada rutrum sed quis quam. Mauris pulvinar dignissim nunc a laoreet. Nam a arcu at sem imperdiet iaculis.
</p>
</md-content>
</div>
</body>
你的 CSS 看起来像:
.move-up {
position: relative;
top: -60px;
z-index: 99;
}
这是一个有效的方法:
http://plnkr.co/edit/6lHVbV?p=preview
这里的键是 using layout-align="center start"
,它将 div 在页面上水平居中(使用flexbox)并将其放在 md-toolbar 下方。这layout="row"
也是确保我们在 div 的内容上使用 flexbox 布局的必要条件。
从那里,flex="66"
给盒子一个 66% 的宽度,.md-whiteframe-z2
添加背景,然后我们的.move-up
类使用 将它向上移动 60 个像素,position: relative; top: -60px
并使用 将它放在工具栏上方z-index
。