【问题标题】:ng-bootstrap -> Typeahead Stylingng-bootstrap -> 预输入样式
【发布时间】:2018-12-17 01:03:29
【问题描述】:

我似乎无法为 ng bootstrap typeahead 的下拉菜单设置样式。

输入本身的样式很好(该组件只包含一个输入/预输入),但没有任何东西适用于下拉菜单(尝试使用插入的 ngb-typeahead-window 以及 .dropdown-menu 类。

【问题讨论】:

    标签: angular typeahead ng-bootstrap


    【解决方案1】:

    这里有一个很好的答案:https://stackoverflow.com/a/51417049/4248983

    tl;dr

    • Typeahead 窗口是一个动态添加的组件
    • 实现 Typeahead 的组件的样式仅封装到自身
    • @Component 装饰器中设置 encapsulation: ViewEncapsulation.None 以允许全局访问您的组件样式

    警告
    设置ViewEncapsulation.None 意味着您的组件样式在全球范围内可用。 确保您的 css 选择器足够具体,以防止影响应用程序中的其他元素!

    【讨论】:

      【解决方案2】:

      ng-bootstrap 在更改其组件时非常有限。我会说尝试使用template,这是您可以进行的最接近定制的方式。 ng-bootstrap 和 ngx-bootstrap 等插件是自定义组件,通常不支持其他插件提供的扩展的可定制性。

      【讨论】:

      • 模板可以让我们做任何你想做的事,你为什么说是“相当有限”?
      • 很好奇。我的意思是css就是css,选择器就是选择器?还在研究 Angular(来自 EmberJs),所以也许我错过了一些东西。这些组件特定的 styleUrl 的?
      • 不确定。我只能从逻辑上猜测他们使用自己的静态 styleUrls,因为否则样式是不可更改的。
      • 无意冒犯,但听起来您回答这些小部件的知识有限。
      猜你喜欢
      • 1970-01-01
      • 2017-10-26
      • 2017-09-25
      • 2018-11-13
      • 1970-01-01
      • 2021-04-24
      • 2018-08-25
      • 2012-10-26
      • 1970-01-01
      相关资源
      最近更新 更多