<!DOCTYPE html> 的声明不适用于 IBM MobileFirst 中 Ionic 的 ion-nav-view

Posted

技术标签:

【中文标题】<!DOCTYPE html> 的声明不适用于 IBM MobileFirst 中 Ionic 的 ion-nav-view【英文标题】:Declaration of <!DOCTYPE html> does not work with Ionic's ion-nav-view in IBM MobileFirst 【发布时间】:2015-03-24 07:39:07 【问题描述】:

我是使用 IBM MobileFirst 和 Ionic 构建混合移动应用程序的初学者。目前,我能够在 MobileFirst Console 模拟器、模拟器以及 android 移动设备中构建和运行我的应用程序。但是,只有当我删除&lt;!DOCTYPE html&gt; 的声明时,所有这些才能正常工作。如果包含&lt;!DOCTYPE html&gt;,则 ion-nav-view 不起作用。

我参考了基于 Ionic 的 IBM MobileFirst Starter Application 示例。在示例中,使用 ng-view 代替 ion-nav-view,因此声明 &lt;!DOCTYPE html&gt; 不会导致任何问题。

示例应用程序 (Android):https://github.com/user4706148/MobileFirstProject 有人知道这个问题吗?

【问题讨论】:

【参考方案1】:

看起来是自动生成和自动插入的 worklight.css(可以在生成的 Android 项目 > assets\default\www\worklight\worklight.css 中找到)触发了这个问题。

我猜其中的 CSS 规则会根据使用的 doctype 以不同的方式呈现。具体来说,这是由于以下规则而发生的:

body 
    position: relative;

您不得编辑此文件(因为它会在 MFP Studio 中的每次构建中重新生成),因此您可以做的是在您自己的应用的自定义 .css 文件中覆盖它。

这似乎工作正常:

body 
    position: none !important;

【讨论】:

以上是关于<!DOCTYPE html> 的声明不适用于 IBM MobileFirst 中 Ionic 的 ion-nav-view的主要内容,如果未能解决你的问题,请参考以下文章

前端知识总结--html

DOCTYPE的重要性

Doctype

Doctype

<!DOCTYPE html>很重要

Html5知识