如果您想支持较旧的浏览器,那么您应该拥有多个站点。但请先查看移动浏览器统计数据,以确定是否值得。如果您只是想让您现有的网站在 iPhone/Android 或其他带有 A 级浏览器的手机上运行,那么您可以使用适合移动设备的 CSS(适用于小屏幕)进行自定义。但是要在连接速度慢/不可靠的移动设备上获得良好的性能,您可能需要一个单独的精简 html。
Apple 有一个很好的指南来帮助您优化您的 iPhone 网站。其中大部分也适用于现代移动浏览器:http:
//developer.apple.com/safari/library/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html
Peter Paul Koch 对不同的移动浏览器进行了出色的研究。他有几篇文章,但这是一个好的开始:
http ://www.quirksmode.org/mobile/browsers.html
就像 Nate Bross 提到的,您应该针对触控设备进行优化。不幸的是,很难知道设备是否有触摸,因为没有媒体查询。您可以对某些设备进行用户代理嗅探,但我不建议这样做。在此处进行更多讨论:针对触摸设备优化网站
目前,我检测到触摸事件(Chrome 除外)。如果返回 true,我会注入一个触摸 CSS。有点讨厌,但其他选项更糟糕:
function() {
if( /Chrome/i.test(navigator.userAgent) ) {
return false;
}
try {
document.createEvent("TouchEvent");
return true;
} catch (e) {
return false;
}
}
您特别要求提供用于移动 Web 浏览器的网站,但您也可以查看创建移动 Web 应用程序的可能性。它看起来像一个 iPhone 应用程序(或 Android 应用程序),但它是在 HTML5 的帮助下构建的。您可以在 webkit 图像中使用 CSS3 制作漂亮的动画,iPhone 也有元标记来隐藏 Safari 导航工具栏。然后,用户可以将您的页面添加到他们的主屏幕上,它就像普通的 iPhone 应用程序一样工作。当然,您仅限于浏览器及其性能。但是您可以创建多平台应用程序 :) HTML5 + JS 是史蒂夫乔布斯唯一认可的多移动平台语言,在 PhoneGap 的帮助下,您甚至可以将它放入 AppStore!如果 web-app 听起来很有趣,你应该看看jQTouch,jQuery CSS 转换插件,当然还有Jonathan Stark 的使用 HTML、CSS 和 JavaScript 构建 iPhone 应用程序。