【问题标题】:Twitter Bootstrap Dropdown in Jade Not Rendering CorrectlyJade 中的 Twitter Bootstrap 下拉菜单无法正确呈现
【发布时间】:2016-02-12 01:20:26
【问题描述】:

我不知道如何在 Jade 的 Bootstrap 导航栏中呈现简单的下拉菜单。尝试呈现此 HTML:

<li class="dropdown">
      <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a>
      <ul class="dropdown-menu">
        <li><a href="#">Action</a></li>
        <li><a href="#">Another action</a></li>
      </ul>
</li>

像这样在翡翠中:

li.dropdown
a.dropdown-toggle(data-toggle="dropdown", role="button", aria-haspopup="true", aria-expanded="false"): span.caret Tools
    li
        a(href="#") action
    li 
        a(href="#") another action

根据http://jade-lang.com/reference/tags/,您应该可以嵌套如下标签:

 a: span

但是当我尝试为这些标签添加类时,它看起来很奇怪http://codepen.io/thehumanscience/pen/qbLepW

任何人都知道如何以正确的方式做到这一点?

【问题讨论】:

    标签: html node.js twitter-bootstrap pug


    【解决方案1】:

    您不能同时使用 : 速记和嵌套。您需要:

    li.dropdown
      a.dropdown-toggle(data-toggle="dropdown")
        | Dropdown
        span.caret
      ul.dropdown-menu
        li
          a(href="#") action
        li 
          a(href="#") another action
    

    【讨论】:

    • 谢谢!这很好用。我的问题是我仍然不明白它为什么有效。根据jade-lang.com/reference/tags :shortand 和嵌套似乎是一回事。 “为了节省空间,jade 为嵌套标签提供了内联语法。'a: img 是你嵌套 的方式。我在jade-lang.com/reference/plain-text 看到了使用 |(管道符号)的解释,但是我不认为他们解释得很清楚......对于像我这样的 Jade 新手来说不是。
    • 我认为您看到的问题是由于 span.caret Tools 而不是嵌套 - 请注意,这导致 &lt;span class="caret"&gt;Tools&lt;/span&gt; 而不是 &lt;span class="caret"&gt;&lt;/span&gt; Tools。 AFAIK 无法使用 : 简写将 .caret 和 Tools 分成单独的标签
    猜你喜欢
    • 1970-01-01
    • 2016-06-28
    • 1970-01-01
    • 2018-02-10
    • 2012-07-29
    • 2013-07-26
    • 2012-02-21
    • 2012-08-14
    相关资源
    最近更新 更多