如何解决使用HAML在Ruby on Rails中是否可以生成50个嵌套的DIV?
| 要测试嵌套DIV中CSS边框的内容,需要生成50个DIV。 换句话说,产生<div>
<div>
<div>
... total 50 of them nested
</div>
</div>
</div>
因为
- 50.times do
%div
不会,因为它们都是并行的,而不是嵌套的。
解决方法
简单化,但似乎可行。
- 50.times do
<div>
- 50.times do
</div>
v2-仍然很简单,但是提供了更多选择。
- 50.times do |i|
!= \"<div style=\'border-style:#{cycle(\'dotted\',\'dashed\')}\'>\".rjust(i+35)
= i
- 50.downto(1) do |i|
!= \"</div>\".rjust(i+35)
,您可以尝试以下方法:
module ApplicationHelper
def recursive_divs(number)
if number > 0
number -= 1
content_tag :div do
recursive_divs(number)
end
end
end
end
并在您的视图上使用它:
= recursive_divs(50)
希望这可以帮助
,你近了您要做的就是为循环的每次迭代添加2个空格。
- 50.times do |i|
=\"#{\' \' * (i*2)}\"%div
\' \' * (i*2)
部分利用了可以乘以字符串的事实。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。