可能是以下问题之一:
- 您的 jQuery.Mobile 的 CSS 已过时和/或与您正在使用的 jquery.mobile.js 文件的版本不同。
- 您在某处添加了一些自定义 css 打破了这一点。
- 这是我最有可能的投票:页面中的其他地方,您的标签不匹配或未关闭,浏览器正在对其进行补偿。它使用桌面浏览器正确补偿它(它们倾向于更好地处理格式错误的代码),而不是使用手机浏览器正确补偿。因此,结果是不可预测的错误。
- 您的外部文件未按正确顺序链接。(除非此列表中的2.也是正确的,否则您的情况似乎不太可能)。
- 浏览器无法正确呈现它,因为
.ui-content
. (同样,不太可能,但您可以尝试添加一些Lorem Ipsum
,看看是否能解决问题)。
如果以上都不是,那么要么您已经触及 jquery.mobile 中的一些晦涩的错误,要么您以某种方式设法暴露了其他一些非常具体的问题。在任何一种情况下,您都可以添加应该修复它的自定义 css(也许在媒体查询中使用它是明智的):
以下其中一项将起作用:
.ui-navbar ul {
white-space:pre-wrap;
}
// The above introduces a margin that may not be acceptable
.ui-navbar .ui-btn-inner, .ui-navbar .ui-btn-text {
font-size:12px /* or something else that works */ !important;
}
// The above may look too small
.ui-navbar li {
max-width:33%;
}
以上所有可能会在各种设备上引入问题,因此建议调试您的代码并找出导致此问题的原因。请记住,最新的 jquery.mobile 版本声称已修复所有与视觉导航栏相关的错误,因此不应发生这种情况。以此作为查看的上下文,请记住,可能引发意想不到的视觉缺陷的细微错误数量很多。与大多数其他框架相比,jquery.mobile 可能更是如此,因为 javascript 大量用于页面样式。但是,它不太可能需要大量工作,或者代码重写/黑客攻击。一旦你明白了,它应该是显而易见的和简单的。