javascript - 你如何向 Angular Material 添加搜索栏?

标签 javascript css angularjs material-design angularjs-material

我正在尝试将搜索输入添加到 <md-toolbar>但似乎没有任何样式。添加搜索栏似乎是一个常见的标题元素,所以我可能遗漏了一些东西。

<md-toolbar md-theme="input">
    <md-input-container flex>
    <md-icon class="material-icons">&#xE8B6;</md-icon>
    <input ng-model="search.notes" placeholder="Search here">
    </md-input-container>
</md-toolbar>

然后在JS中:

app.config(['$mdThemingProvider', function($mdThemingProvider) {
    $mdThemingProvider.theme('input')
        .primaryPalette('blue')
        .accentPalette('pink')
        .warnPalette('red')
        .backgroundPalette('grey');
}]);

然而,虽然元素确实出现了 - 很明显这不是它应该使用的预期方式,因为间距、字体颜色或对齐方式都不匹配。

http://codepen.io/Xeoncross/pen/rLxEqv

最佳答案

虽然这并不能解决尝试使用 md-input 的问题在工具栏/标题内。您可以制作 md-content通过使内容区域变暗,看起来像一个工具栏,使其从常规中脱颖而出 md-content块。如果您不介意黑色,可以解决这个问题。

<md-content md-theme="input" layout="column" layout-padding>
  <md-input-container style="padding-bottom: 0; margin-bottom: 0">
     <md-icon class="material-icons">&#xE8B6;</md-icon>
     <input ng-model="search.notes" placeholder="Search here">
  </md-input-container>
</md-content>

和主题js:
app.config(['$mdThemingProvider', function($mdThemingProvider) {
    $mdThemingProvider.theme('input')
      .primaryPalette('blue')
      .dark();                 // <----- Note
  }
]);

此处示例:http://codepen.io/Xeoncross/pen/jrWgqY

关于javascript - 你如何向 Angular Material 添加搜索栏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37767251/

相关文章:

javascript - 使用 Angular 显示 json 响应中的特定值

php - 元发送与 reload() |服务器执行与客户端执行

javascript - JS - 仅发送路径名时的 baseURL 字符串

jquery - 小于选择器

css - 我无法让我的 Bootstrap 列以相同的高度展开

javascript - 使用 Angularjs 循环范围

javascript - React js重定向不重定向

javascript - 可触摸的不透明度功能在应用程序启动时立即调用

javascript - 如何自动放映幻灯片

JavaScript 焦点不工作