HTML5中的链接标签不应该是自动关闭的,但HAML正在关闭它们

HTML5中的链接标签不应该是自动关闭的,但HAML正在关闭它们,html,haml,link-tag,Html,Haml,Link Tag,我的理解是,HTML5中的标签在默认情况下不应该是自动关闭的(尽管允许使用自动关闭标签)。但是,我正在为我的应用程序使用HAML,使用HTML5 doctype(!!!5),并在application.rb中指定HAML::Template.options[:format]=:HTML5 但是,当我查看生成的标记时,我的链接标记仍然以/>关闭 知道这是怎么回事吗?这是html 5 doctype的HAML的默认行为还是我配置的不正确?如果链接标记是由Rails帮助程序生成的,例如样式表链接标签,

我的理解是,HTML5中的标签在默认情况下不应该是自动关闭的(尽管允许使用自动关闭标签)。但是,我正在为我的应用程序使用HAML,使用HTML5 doctype(
!!!5
),并在application.rb中指定
HAML::Template.options[:format]=:HTML5

但是,当我查看生成的标记时,我的链接标记仍然以/>关闭


知道这是怎么回事吗?这是html 5 doctype的HAML的默认行为还是我配置的不正确?

如果
链接
标记是由Rails帮助程序生成的,例如
样式表链接标签
,那么无论HAML格式设置如何,它们都将具有结束斜杠,因为字符串只是从rails方法返回并按原样包含在输出中,与Haml无关

例如,这个Haml:

!!!
%html
  %head
    = stylesheet_link_tag "foo"
    %link{:rel=>"stylesheet"}
以设置为html5的格式(Rails 3的默认格式)生成以下输出:

由Haml控制的
元素(即Haml源中的
%link
)遵守格式,并酌情包括或省略结束斜杠。Rails助手生成的链接在这两种情况下都只包含结束斜杠

什么
生成取决于设置的格式,但从:

当:format选项设置为
:html5
总是


所以你应该得到
你放在
后面的任何东西

这是一个使用帮助程序的rails应用程序,例如
样式表\链接\标签
?啊!这就是问题所在。谢谢-和切换之间!!!还有!!!5不起作用,我想我一定是累了,当我想我把它修好了:)
<!DOCTYPE html> 
<html> 
  <head> 
    <link href="/stylesheets/foo.css" media="screen" rel="stylesheet" type="text/css" /> 
    <link rel='stylesheet'>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html> 
  <head> 
    <link href="/stylesheets/foo.css" media="screen" rel="stylesheet" type="text/css" /> 
    <link rel='stylesheet' />