我正在使用DataQuadrant的DNN MobiNuke模块(v02.00.03)来创建我创建的网站的移动版本。一切顺利,除了我遇到的Mobile Skins这个奇怪的问题。我有一个简单的Mobile Skin,如下所示:
<div id="mobile_frame">
<div id="mobile_header">
...
...
</div>
<div id="main_wrap">
<div id="mobile_main" class="sub">
<div id="ContentPane" runat="server"></div>
</div>
</div>
<div id="mobile_footer">
...
...
</div>
</div>
出现的问题是ContentPane中具有空div标签的任何内容在移动浏览器中呈现时都会自行更改:
<div class="xxxx"></div>
将自己改为
<div class="xxxx" />
这导致的最大问题是浏览器将标记解释为没有结束标记的开始div标记。因此,它将结束div标签放在它想要的任何地方。它导致该区域之后的所有标记变得非常混乱。
以下是代码的示例,以及它在页面上的呈现方式:
应该是:
<div id="main_wrap">
<div id="mobile_main" class="sub">
... Content Here ...
</div>
</div>
<div id="mobile_footer">
...
</div>
</div>
但它呈现为:
<div id="main_wrap">
<div id="mobile_main" class="sub">
... Content Here ...
</div>
<div id="mobile_footer">
...
</div>
</div>
</div>
我可以通过放置标签内部来控制我已经控制的标记,但是我没有时间/精力来完成可能在ContentPane中显示的每个模块以检查空标签。另外,有些地方我想要一个空标签,以便稍后用javascript填充内容。
最后,我做了大量的研究来查看这个,我找不到任何东西。我发现最接近的是在转换某些XML时在XSLT中发生这种情况,但据我所知,MobiNuke没有这样做。
非常感谢任何帮助。谢谢!
答案 0 :(得分:0)
在与供应商讨论后,我已经找到了问题。模块设置中有一个名为“启用内容适配”的设置。显然,该设置将尝试使HTML符合XHTML,但它绝对不适合我。希望这有助于其他人看到这一点。