html – HAML在没有换行符的情况下使用文本中的链接

前端之家收集整理的这篇文章主要介绍了html – HAML在没有换行符的情况下使用文本中的链接前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开发一个小小的Sinatra Ruby应用程序。对于表示层,我使用的HAML,这很好。

但是我有一个FAQ页面,它有更长的文本段落,这不是问题。但在一些段落中,我想包括链接。使用纯HTML,这是非常容易实现的,并且仍然可读。

<p>
I'm talking about <a href="http://ruby-lang.org">Ruby</a> in this text.
</p>

有了HAML,我被这个新的段落所困扰,它们看起来像这样:

%p
 I'm talking about 
 %a {:href => 'http://ruby-lang.org'}>Ruby 
 in this text.

我认为这真的打破了工作流程。

在HAML中有没有办法只插入一个链接而不使用换行符?

解决方法

我假设你“要求在源Haml中添加没有换行符的链接。这不是真的可以做你想要的。从 haml FAQ

Expressing the structure of a document and expressing inline formatting are two very different problems. Haml is mostly designed for structure,so the best way to deal with formatting is to leave it to other languages that are designed for it.

哈姆尔使用空格和缩进来确定要做什么,没有任何换行符没有任何缩进,所以哈姆不能确定添加页面中的元素。

如果您只想要静态文本块,可以像常见问题一样使用markdown filter

:markdown
  I'm talking about [Ruby](http://ruby-lang.org) in this text.

正如其他答案已经指出的,如果你想从生成的HTML中删除换行符,那么你可以查看使用whitespace removal operators,但是请注意,它们将会删除所有的空格,以便例如

I'm talking about 
%a{:href => 'http://ruby-lang.org'}>Ruby 
in this text.

其使用>去除外部空白会产生:

I'm talking about<a href='http://ruby-lang.org'>Ruby</a>in this text.

这将显示

I’m talking about07003in this text.

即在“Ruby”周围没有空格,这可能不是你想要的。

猜你在找的HTML相关文章