《jQuery Mobile快速入门》—— 2.6 带有媒体查询的响应式布局

简介:

本节书摘来异步社区《jQuery Mobile快速入门》一书中的第2章,第2.6节,作者:【美】Brad Broulik,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.6 带有媒体查询的响应式布局

jQuery Mobile快速入门
要使用jQuery Mobile来创建响应式设计,建议使用CSS3 Media Queries1。例如,如果你打算为一个特定设备的朝向增强布局,你可以使用媒体查询来检测设备的朝向,然后根据需要应用你的 CSS修改。

5ab513537927870b42c1889a3c9d8eb480685a62

在某些情况下,jQuery Mobile将会为你创建响应式设计。下面将讲解jQuery Mobile的响应式设计如何良好地应用于竖屏(portrait)模式和横屏(landscape)模式中的表单字段。例如,在竖屏视图中(见图2-13),标签位于表单字段的上面。而当将设备横屏放置时(见图2-14),表单字段和标签并排显示。这种响应式设计可以基于设备可用的屏幕真实状态提供最实用的体验。jQuery Mobile为用户提供了很多这样优秀的UX(用户体验)原则。

350c4c92b40ec00e864a50e5de59dd4cf0bbfbe8

如果在iOS中启动图2-14,并切换到横屏模式,则可能会注意到,在Mobile Safari2中存在iOS缩放问题。当元视口标记被设置为content=“width=device-width, initial-scale=1”,或者是设置为允许用户缩放的任何值时,当将设备调整为横屏放置时,将会引起页面以大于1的比例进行放大,由此导致的结果是,页面的右边将被裁切掉一部分,用户必须双击(有时可能需要操作多次)页面,才能让页面以合适的尺寸进行缩放并显示。

在Mobile Safari解决掉该问题之前,你可以使用多个选项来修复这个问题。

可以禁用缩放。由于禁用缩放时,会破坏可访问性,因此在进行该操作时务必谨慎行事。

434f8c00174a5cb2a67f852f00481bd27727e13c

在用户进行缩放时,可以动态调整元标记3。
在前面的例子中(见图2-13),通过使用min-max宽度媒体特性,jQuery Mobile能够应用响应式设计。例如,当浏览器支持的宽度大于450像素时,表单元素可以浮动在它们的标签旁边。CSS支持文本输入的这种行为,如下所示。

1955e015ca883a99b1315cae253e3229c773c246

重要:

Windows Phone 7(Internet Explorer 8和更低的版本)不支持媒体查询。如果想要在不支持媒体查询的浏览器上支持响应式设计,建议使用Respond.js4。Respond.js为不支持媒体查询的浏览器提供了该功能。
你可以找到一组数量有限的特定Webkit的媒体扩展。例如,如果要在具有高分辨率的retina(视网膜)显示屏的新iOS设备上应用CSS增强,你可以使用webkit-min-devic e-piexel-ratio媒体特性:

c6032c77231b0429962cc53d3d405ed6ba4ac0da

作为对iOS用户的一个额外奖励,jQuery Mobile包含了一全套针对retina显示屏优化过的图标,这些图标能够自动应用到带有高分辨率显示屏的任何iOS设备上。

注意:

如果你选择将媒体特定的样式隔离存放到单独的文件中,你可以使用HTML媒体属性来引用它们。如果用户比较在意文件的隔离存放,这种做法确实不错,但是从性能角度来看,该方法并不能让人满意,因为每一个独立的文件都需要一个额外的HTTP请求。

bf1ea970ec69f43497acbc791ad0fca3cfe43c03
相关文章
|
11月前
|
设计模式 JavaScript 前端开发
|
12月前
|
JavaScript 前端开发 API
JavaWeb快速入门--jQuery
JavaWeb快速入门--jQuery
52 0
|
JavaScript 索引
JavaWeb--快速入门jQuery(三)
JavaWeb--快速入门jQuery(三)
122 0
JavaWeb--快速入门jQuery(三)
|
JavaScript 前端开发 数据安全/隐私保护
JavaWeb--快速入门jQuery(二)
JavaWeb--快速入门jQuery(二)
133 0
JavaWeb--快速入门jQuery(二)
|
JavaScript 前端开发 API
JavaWeb--快速入门jQuery(一)
JavaWeb--快速入门jQuery(一)
121 0
JavaWeb--快速入门jQuery(一)
|
JavaScript 前端开发 开发者
一篇文章带你用jquery mobile设计颜色拾取器
一篇文章带你用jquery mobile设计颜色拾取器
154 0
一篇文章带你用jquery mobile设计颜色拾取器
|
JavaScript 前端开发 CDN
手把手教你用jQuery Mobile做相册
手把手教你用jQuery Mobile做相册
128 0
手把手教你用jQuery Mobile做相册
|
JavaScript
使用 jQuery 查询属性不包含 disabled 的 input radio
使用 jQuery 查询属性不包含 disabled 的 input radio
使用 jQuery 查询属性不包含 disabled 的 input radio
|
Web App开发 JavaScript 前端开发
15款优秀的jQuery-Mobile插件
移动互联网迅速发展,PC端的网页并不能完全适应移动端页面需求,响应式设计体验产生并成为潮流。由此也促成了jQuery Mobile的流行。jQuery Mobile这样一款基于jQuery和jQuery UI的框架,继承了jQuery的“write less,do more”精髓,具有良好的扩展性和可定制性,全面兼容各种平台设备,对于不支持的手机类型,也会降级到基础样式。
367 0
15款优秀的jQuery-Mobile插件
|
XML 缓存 前端开发