【问题标题】:Primefaces menubar right align submenuPrimefaces 菜单栏右对齐子菜单
【发布时间】:2014-07-09 02:48:22
【问题描述】:

我发现我可以在选项方面(菜单栏的右侧)播放命令按钮,但是我似乎无法以相同的方式添加子菜单。我想要一个向右对齐的实际菜单下拉菜单,而不是按钮。

有什么想法吗?

<html lang="en" xmlns="http://www.w3.org/1999/xhtml"
   xmlns:h="http://java.sun.com/jsf/html"
   xmlns:f="http://java.sun.com/jsf/core"
   xmlns:p="http://primefaces.org/ui"
   xmlns:ui="http://java.sun.com/jsf/facelets">

<h:head title="Primefaces Test">
   <style>
.ui-layout-north {
   z-index: 20 !important;
   overflow: visible !important;
}

.ui-layout-north .ui-layout-unit-content {
   overflow: visible !important;
}
</style>
</h:head>

<h:body>
   <h:form>
      <p:layout fullPage="true">
         <p:layoutUnit position="north">
            <p:menubar>
               <p:submenu label="Mail">
                  <p:menuitem value="Gmail" url="http://www.google.com" />
                  <p:menuitem value="Hotmail" url="http://www.hotmail.com" />
                  <p:menuitem value="Yahoo Mail" url="http://mail.yahoo.com" />
               </p:submenu>
               <p:submenu label="Videos">
                  <p:menuitem value="Youtube" url="http://www.youtube.com" />
                  <p:menuitem value="Break" url="http://www.break.com" />
               </p:submenu>
               <f:facet name="options">
                  <p:commandButton value="logout" />
                  <p:submenu label="Videos">
                     <p:menuitem value="Youtube" url="http://www.youtube.com" />
                     <p:menuitem value="Break" url="http://www.break.com" />
                  </p:submenu>
               </f:facet>
            </p:menubar>
         </p:layoutUnit>
         <p:layoutUnit position="center">
            <h:outputText value="Hello, world." />
         </p:layoutUnit>
      </p:layout>
   </h:form>
</h:body>
</html>

-- 谢恩

【问题讨论】:

    标签: html css layout primefaces menubar


    【解决方案1】:

    我用这样的方法解决它:

    style="位置:绝对;右:6px;"

    试试吧。

    【讨论】:

      【解决方案2】:

      我最终忘记了整个“选项”方面,而是使用了 css float,我希望这对某人有所帮助:

      <h:body>
         <h:form>
            <p:layout fullPage="true">
               <p:layoutUnit position="north">
                  <p:menubar>
                     <p:submenu label="Mail">
                        <p:menuitem value="Gmail" url="http://www.google.com" />
                        <p:menuitem value="Hotmail" url="http://www.hotmail.com" />
                        <p:menuitem value="Yahoo Mail" url="http://mail.yahoo.com" />
                     </p:submenu>
                     <p:submenu label="Videos">
                        <p:menuitem value="Youtube" url="http://www.youtube.com" />
                        <p:menuitem value="Break" url="http://www.break.com" />
                     </p:submenu>
                     <p:submenu label="Videos2" style="float:right">
                        <p:menuitem value="Youtube" url="http://www.youtube.com" />
                        <p:menuitem value="Break" url="http://www.break.com" />
                     </p:submenu>
                  </p:menubar>
               </p:layoutUnit>
               <p:layoutUnit position="center">
                  <h:outputText value="Hello, world." />
               </p:layoutUnit>
            </p:layout>
         </h:form>
      </h:body>
      

      --谢恩

      【讨论】:

      • 这在您需要嵌套子菜单之前非常有效。嵌套的子菜单将在屏幕外显示。
      【解决方案3】:

      如果您使用的是引导程序,则可以使用内置的 flexbox 类

      注意:这是一个primeng(角度)示例,将正确对齐所有项。

      <p-menubar [model]="items" styleClass="d-flex justify-content-end"></p-menubar>
      

      【讨论】:

      • 我只想要右边的一项 -> 注销按钮。
      猜你喜欢
      • 1970-01-01
      • 2017-01-09
      • 1970-01-01
      • 2021-01-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-19
      • 2019-06-20
      相关资源
      最近更新 更多