垂直 md 工具栏

Vertical md-toolbar

垂直工具栏是 material 兼容元素吗?它在 Angular Material 可用吗?

我正在寻找一种方法来在边栏中排列多个带有图标的按钮。我想要 md-toolbar 大小的东西,但它的行为类似于 md-sidebarmd-sidebar 似乎有一个固定的宽度,对于我想固定在那里的图标来说太宽了。

有没有简单的解决方法?我试过使用类似

的东西
<section layout="row">
  <!-- Sidebar (this should be thin) -->
  <md-sidenav class="md-sidenav-left" md-is-locked-open="true" md-whiteframe="4">
    <md-button><i class="material-icons">home</i></md-button>
  </md-sidenav>

  <!-- Main app area -->
  <div id="content-main"></div>

</section>

但是,对于我在其中显示的简单图标而言,边栏显得太粗了。

有没有办法获得垂直 md-toolbar 或更薄 md-sidebar,或者我应该重新考虑我的设计?

您是否调查过 md-fab-speed-dial?我想象将触发器放在页面的左上角并将 md-direction 属性设置为 "down" 会给你类似于你想要的结果。

垂直工具栏相对容易 Angular Material - CodePen

  • 使用layout="column"对齐图标
  • 使用<span flex></span>将顶部图标与底部图标分开
  • 用CSS控制宽度
  • 也许使用md-whiteframe来增加凸起效果

标记

<div ng-controller="AppCtrl" ng-cloak="" ng-app="MyApp" layout-fill layout="column">
  <md-content flex layout="column">
    <md-whiteframe id="vericalToolBar" class="md-whiteframe-8dp" layout="column" layout-align="start center" flex>
      <md-button class="md-icon-button" aria-label="More">
        <md-icon md-svg-icon="img/icons/more_vert.svg"></md-icon>
      </md-button>
      <md-button class="md-icon-button" aria-label="Favorite">
        <md-icon md-svg-icon="img/icons/favorite.svg"></md-icon>
      </md-button>
      <p id="toolBarTitle" class="md-title">My vertical toolbar</p>
      <span flex></span>
      <md-button class="md-icon-button" aria-label="Favorite">
        <md-icon md-svg-icon="img/icons/cake.svg"></md-icon>
      </md-button>
    </md-whiteframe>
  </md-content>
</div>

CSS

#vericalToolBar {
  background-color: rgb(1,74,182);
  width: 50px;
}

#vericalToolBar md-icon {
  color: rgba(255,255,255,0.87);
}

#toolBarTitle {
  writing-mode: tb-rl;
  color: rgba(255,255,255,0.87);
}