我有一个 MVC 3 项目并启用了 HTML 5 标记。对于 HTML 5 部分,它运行良好。
现在我创建了一个局部视图并将一些代码复制并粘贴到其中
第一行是
<div id="Header">
我想在我的视图中使用这个部分视图,即 html 4 标记。
问题来了,剃须刀引擎自动转换我的
<div id="Header">
进入
<Header>
我不想为此视图使用 HTML 5,而只使用 HTML 4。我该怎么办?
我有一个 MVC 3 项目并启用了 HTML 5 标记。对于 HTML 5 部分,它运行良好。
现在我创建了一个局部视图并将一些代码复制并粘贴到其中
第一行是
<div id="Header">
我想在我的视图中使用这个部分视图,即 html 4 标记。
问题来了,剃须刀引擎自动转换我的
<div id="Header">
进入
<Header>
我不想为此视图使用 HTML 5,而只使用 HTML 4。我该怎么办?
你为什么要变回:
<div id="Header">
未来的路在何方?
如果您担心与旧版浏览器的兼容性,您可以简单地实现modernizr-2.6.2.js。(应随 Visual Studio Web 项目提供)
这将使所有基本的 HTML5 在旧版浏览器中工作。(未在 IE6 之前的浏览器上测试过)
您能否在部分视图页面的顶部使用过渡文档类型。因为 HTML 引擎是根据 doctype 来理解页面的。
给您的问题:您是否在 Html 5 视图中创建了 Html 4 局部视图?; 如果你的回答是肯定的,那么你提到的问题是自然发生的。当 MVC 呈现您的页面时,他首先呈现 Html 5 部分(布局母版页)。因此,将默认选择 Html5 类型的文档类型。之后,当渲染 Html 4 部分视图时,引擎会在对 Html 5 的标记支持下渲染它。
如果我想总结一下我想说的话:
<html>
//Html 4 partial view.
</html>
无论您在该部分视图中编写什么 Html4 代码,这都会生成一个 Html 5 标记视图。如果我错了,请告诉我。我会从我的错误中吸取教训。谢谢。
如果您按如下方式更改 div,它将不会被换出:
<div id="strap">
这可能会解决您眼前的问题。
你总是可以使用一个类而不是一个 id
<div class="header">
这有一个额外的好处,就是不会让你的 css(如果有的话)这个元素非常具体,也意味着 ID 不能被重用。
您仍然可以使用 jQuery 选择器选择您的元素,使用它的类作为选择器
$('.header')