【问题标题】:HTML5 Context Menu with Pug带有 Pug 的 HTML5 上下文菜单
【发布时间】:2017-01-12 03:21:37
【问题描述】:

目前 Pug/Jade 中似乎存在一个错误,其中<menuitem> 被视为自动关闭,而实际上它们需要关闭。我已将问题提交到 GitHub 存储库,正在等待回复/修复,但与此同时,是否有可行的替代方案?

这是我的 contextmenu.pug 文件:

menu#main(type="context", label="")
    menu(label="Visit me on...")
        menuitem(label="LinkedIn")
        menuitem(label="Twitter")
        menuitem(label="Github")
        menuitem(label="Stack Overflow")
        menuitem(label="Email")
    menuitem(label="Go Home")

HTML 呈现为:

<menu id="main" type="context" label="">
    <menu label="Visit me on...">
        <menuitem label="LinkedIn">
        <menuitem label="Twitter">
        <menuitem label="Github">
        <menuitem label="Stack Overflow">
        <menuitem label="Email">
    </menu>
    <menuitem label="Go Home">
</menu>

然而,我希望所有 menuitem 标签都以 &lt;/menuitem&gt; 结尾。否则,这将导致LinkedIn成为出现在“访问我...”下的唯一选项我能找到的最接近的例子是this StackOverflow question,它建议使用纯HTML,虽然这可行,但我想知道是否有一个只有哈巴狗的替代品。是否有某个设置可以确定哪些标签是自动关闭的?或者自从那个问题以来,有没有更好的替代方法来强制结束标签?

以防万一,我使用的是 Express.js 框架,并且最近从 Jade 更新(迁移之前存在问题)。

GitHub Issue

【问题讨论】:

    标签: node.js html pug


    【解决方案1】:

    您可以将menuitems 写为明文:

    menu#main(type="context", label="")
      menu(label="Visit me on...").
        <menuitem label="LinkedIn"></menuitem>
        <menuitem label="Twitter"></menuitem>
        <menuitem label="Github"></menuitem>
        <menuitem label="Stack Overflow"></menuitem>
        <menuitem label="Email"></menuitem>
        <menuitem label="Go Home"></menuitem>
    

    https://pugjs.org/language/plain-text.html

    【讨论】:

    • 您好,感谢您的提示,但我特别想避免这种方法。
    猜你喜欢
    • 1970-01-01
    • 2021-08-21
    • 1970-01-01
    • 2013-06-10
    • 1970-01-01
    • 2017-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多