【问题标题】:Attach class to :markdown paragraph in Haml?在Haml中将类附加到:markdown段落?
【发布时间】:2012-11-14 16:59:11
【问题描述】:

我不想要以下提供的额外包装 div:

.note
  :markdown
    Please, [don't use Haml for markup][x], for your sake!
    [x]: http://chriseppstein.github.com/blog/2010/02/08/haml-sucks-for-content/

但我不想写这个:

%p.note
  Please,
  = link_to("don't use Haml for markup", "http://chriseppstein.github.com/blog/2010/02/08/haml-sucks-for-content/") + ", for your sake!"

有没有办法在使用:markdown 的同时将 CSS 类附加到生成的段落标签上?

见:http://chriseppstein.github.com/blog/2010/02/08/haml-sucks-for-content/

【问题讨论】:

    标签: ruby-on-rails haml markdown


    【解决方案1】:

    简短的回答似乎是:no。这是 Markdown 问题,不是 HAML 问题。

    您可以通过在markdown 块中直接使用 HTML 来做到这一点:

    :markdown
      <p class="note">
        some more HTML
      </p>
    

    但是你不能在标签内粘贴 markdown,因为那里的所有内容都被解释为 HTML 而不是 Markdown。可能有一些扩展允许您添加这样的类,但显然在本机上是不可能的。

    【讨论】:

    • 这实际上不会达到预期的效果,因为:markdown 过滤器会创建一个额外的&lt;p&gt; 包装器。
    【解决方案2】:

    我发现这样做的最佳方法是使用 Maruku 过滤器(您可能需要 haml-contrib gem),因为 Maruku 实现了标准 Markdown 的 PHP Markdown Extra 扩展。这使得很多简洁的东西成为可能,包括在带有 markdown='1' 的封闭块元素中指定 Markdown 解析,所以你可以这样做

    :maruku
      <p class='note' markdown='1'>
        Please, [don't use Haml for markup][x], for your sake!
      </p>  
      [x]: http://chriseppstein.github.com/blog/2010/02/08/haml-sucks-for-content/
    

    变成了

    <p class='note'>Please, <a href='http://chriseppstein.github.com/blog/2010/02/08/haml-sucks-for-content/'>don&#8217;t use Haml for markup</a>, for your sake!</p>
    

    (是的,在这种情况下,链接引用需要在&lt;/p&gt; 之后。)

    请注意,在这种情况下,Maruku 不会插入额外的包装元素。

    使用这种语法将类放在其他元素上更加容易:

    :maruku
      # Cool stuff {#cool_stuff}
    
      You can put classes and IDs on [links](links.html){.links} too.
    

    变成

    <h1 id='cool_stuff'>Cool stuff</h1>
    
    <p>You can put classes and IDs on <a class='links' href='links.html'>links</a> too.</p>
    

    【讨论】:

      猜你喜欢
      • 2015-04-22
      • 1970-01-01
      • 1970-01-01
      • 2021-08-14
      • 2011-03-28
      • 1970-01-01
      • 2015-02-15
      • 2011-11-14
      • 1970-01-01
      相关资源
      最近更新 更多