css - PrimeNG p-menubar 将一个元素右对齐

标签 css angular primeng

我正在使用 PrimeNG 8.1.1,我想将其中一项推到右侧(注销和配置文件的子菜单)。

有什么建议吗?

    this._menuItems = [
          {
            label: 'Dashboard',
            routerLink: '/dashboard'
          },
          {
            icon:'pi pi-fw pi-user',
            items: [
              {
                label: 'Profile',
                icon: 'pi pi-fw pi-user',
                command:()=> this.profile(),
              },
              {
                label: 'Logout',
                icon: 'pi pi-fw pi-sign-out',
                command:()=> this.logout(),
              }
            ]
          }
        ]

最佳答案

完全披露:我是新手,所以这可能不是最好的解决方案。 在 primeng 11.4.2 上测试

菜单栏是一个 flex 容器,因此我们应该能够使用标准的 flex 想法来插入元素 - 参见 Aligning flex items on MDN .与这里的其他答案一样,我们利用菜单项的 style 属性来控制它的显示方式,在这种情况下我们需要使用 margin-left: auto 来将元素推到右边。

我遇到的问题是 p-menubarsub 组件没有占用 100% 的可用宽度,所以单独使用 margin-left 没有效果没有可用的空间来移动元素。

修复后,它似乎对我有用。

组件.css

:host ::ng-deep p-menubarsub {
    width: 100%;
}

组件.html

<p-menubar [model]="mainMenu">
    <ng-template pTemplate="start">
        <h4>Welcome</h4>
    </ng-template>
</p-menubar>

组件.ts

export class .... {
  mainMenu: MenuItem[] = [
    {label: 'Left menu item'},
    {label: 'Right menu item', style: {'margin-left': 'auto'}
  ];

关于css - PrimeNG p-menubar 将一个元素右对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59264663/

相关文章:

css - 如何使我的页脚背景图像拉伸(stretch)并响应?

Angular Material 表单元格 :after element

javascript - 以 Angular 形式修补值

angular - 我正在使用 angular 6.1.0 angular-cli 7 primeng 7 : getting error as "Initializers are not allowed in ambient context"

javascript - 输入一些字符后如何做一个带有建议下拉的输入框

html - 如何在不增加元素填充的情况下增加元素的可点击区域?

angular - 如何停止在自动完成组件中添加重复的芯片?

Angular2 到 REST WebApi CORS 问题

angular - PrimeNG 动态列过滤

jquery - 使用 PrimeNG 日历检测 [(ngmodel) 对所选日期的更改