MVC Razor视图抱怨时
里面@if
问题描述:
图片说话胜于言:MVC Razor视图抱怨时<img>里面@if
这是我的Razor视图,有和没有@if
声明。
如果我将/
添加到<img>
标签,如<img/>
,错误消失。
任何想法为什么这样做?
悬停在里的错误是Unexpected Token
答
在img
的末尾添加闭合/
因为这是那么有效自闭合标签
例如
<image alt="..." src="" />
该严格性仅适用于代码块内,因为解析器查找完整(闭合)元素。代码块之外它允许任何HTML(无效或其他)。
为了公平地使用Microsoft/Razor,HTML浏览器确实允许使用很多无效的HTML,这些HTML在快速解析器中很难复制。我说关闭您的图片! :)
虽然根据w3c,“
”不需要结束标签。 –
NibblyPig
2014-10-09 13:53:19
根据MS/Razor它确实:)(如果你将它们排除在外,它也会让JSFiddles感到不安)。解析符合XML的元素更容易。 – 2014-10-09 13:53:38
如果这是真的,你肯定会遇到同样的错误,但没有'@ if'? – NibblyPig 2014-10-09 13:54:25