除非你现在正处在世外桃源,否则你不可能没有听说过web设计者间最近广泛流行的响应设计(Responsive Design)。Ethan Marcotte使用responsive design这一术语描述一种新兴的技术,它采用易变的布局和媒体查询扩展网站,使得网站能够动态适应各种尺寸大小的屏幕。如果你之前从未听说过响应设计,那么你可以好好读读Marcotte的介绍文章。
简而言之,响应设计就是使用非固定的网格、非固定的布局和@多媒体查询使得现在的(以及将来的)web能够适应不同尺寸的屏幕。无论你的用户使用的是一个电话,一个iPad或是巨大的台式显示器,你的网站都能够适应。
响应设计将成为一个非常有吸引力的工具,正如Luke Wroblewski所说的,设计需要遵循移动优先原则。也就是,从小屏幕开始考虑。先理清你的网站的核心,然后一点点开始构建。从骨架开始构建能够保证网站的质量,促使开发人员关注用户所关注的问题。
你打算如何构建一个响应良好的网站呢?这个问题因人而异,但是还是存在一些通用的方法的。为了帮助你开始响应设计,这里列出了一些初期设计时的最好实践经验,都是从大量的web资源中总结出来的:
-
使用@media控制你的屏幕布局,但是需要记住,只有这些并不是一个真正的响应设计。
-
使用非固定的布局适应各种屏幕的尺寸。不要将你的设计限制在iPhone或是Android上,不要将它切割为平板电脑版本和桌面电脑版本。布局设计需要更加灵活可变,否则,如果某个新的屏幕尺寸突然变成潮流,你的网站将无法应对。
- 根据你的网站的具体内容设定你的网格。封装好的网格系统可能并不适用于你的应用。这类网格的最大问题就是它们可能与你的具体内容不符。根据网站内容设计你的布局,而不是根据canvas(或是网格)。
-
从小屏幕开始。从最新的屏幕开始设计,然后逐步在浮动元素中加入@media规则,满足更大的平板或是桌面浏览器的窗口需要。从一个窄的单列布局开始设计移动浏览器网站,然后再逐步扩大。
-
使用Respond或是CSS3 Media Queries这类JavaScript库引导@media查询,因为在旧版本的浏览器中可能不支持直接的@media查询。从最小的屏幕开始然后逐步扩大意味着,桌面浏览器需要处理@media,确保使用Respond这类辅助工具能够支持旧版本的浏览器处理@media。
-
不要指望Photoshop,在浏览器中构建你的组件。使用Photoshop构建动态的布局压根就没有可能性,应该在浏览器中实现。
- 使用img { max-width: 100%; }控制图像大小。对于大规模的图像,可以考虑在小屏幕中使用Responsive Images这类工具缩小图像的大小,然后在大屏幕中使用JavaScript还原大图像。
-
延迟下载。可能你的网站中有些辅助元素,能够优化你的网站,但并不是必须的。这类元素可以在下载完基本内容后再使用JavaScript加载这些元素。
-
不用处处要求完美。即使做到了上述建议,你可能还是会漏掉某些使用不支持JavaScript的旧版本浏览器的用户。现在这样的用户已经越来越少了,如果他们在桌面浏览器中看到了移动版本的布局,这也并不就是世界末日。你的网站已经具备很好的可用性了。
记住响应设计是一个非常年轻的概念——是一个新的工具——每天都会涌现出一些新的东西。不要将上面的建议当做是一些硬性或是速成的规则,它只是一些引导指南罢了。
文章来源:Tips, Tricks and Best Practices for Responsive Design
译文来源:http://www.webapptrend.com/
WebAppTrend是一个独立的技术博客,关注Web App前瞻和实践,以及智能浏览器发展
请大家在关注ITeye的同时,关注我们的新浪微博 @WebAppTrend,关注我们的腾讯微博@WebAppTrend,欢迎加入我们的Q Q群:193775364
分享到:
相关推荐
7. **设计原则与最佳实践**:章立民可能分享了UI设计的原则,如一致性、反馈、简明性等,以及编码时的规范和最佳实践。 8. **调试与测试**:介绍了如何利用VS2005的调试工具进行错误检查和代码优化。 9. **异常...
总之,《Visual C# 2005 程序开发与界面设计秘诀》是一本全面的教程,不仅教授编程语言的基础,还强调了实际应用中的问题解决和最佳实践。结合源代码学习,读者可以系统地提升C#编程和界面设计的能力。
通过分析华为的构建配置,可以学习到最佳实践和优化技巧。 7. 设计系统:华为可能有一套完善的设计系统,包含自定义UI组件、颜色方案、字体等,以保证品牌一致性并提高开发效率。 8. 版本控制与协作:Git是代码...
《JavaScript忍者秘籍》是一本非常全面且实用的JavaScript编程指南,不仅覆盖了语言的基础知识,还包括了许多高级技术和最佳实践。对于希望深入学习JavaScript并提高自己编程技能的开发者来说,这本书是不可多得的好...
### 提升JSP页面响应速度的七大秘籍绝招 在现代互联网应用中,网站的响应速度直接影响用户体验和业务效率。...开发者应当根据具体应用场景,灵活运用这些技巧,不断探索和优化,以实现最佳的性能表现。
第八章的内容通常会深入探讨C# 2005在界面设计、事件处理、控件使用以及程序逻辑构建等方面的关键技巧和最佳实践。 在C# 2005中,Windows Forms是进行桌面应用程序开发的主要平台,它提供了丰富的用户界面元素和...
这本书深入探讨了HTML(超文本标记语言)和Web设计的基础知识,以及许多不为人知的技巧和最佳实践,旨在帮助读者提升网站构建和设计的专业水平。 HTML,全称为HyperText Markup Language,是创建网页的标准标记语言...
此外,我们还会分享一些有效的调试技巧和最佳实践,以帮助你快速定位问题并解决它们。 无论你是在开发响应式网站、移动应用还是桌面应用,这本秘籍都将成为你的得力助手。它不仅将帮助你成为一个高效的前端开发者,...
总的来说,《汤姆斯旺C++编程秘诀》是一本全面介绍C++编程技巧和最佳实践的书籍,对于想要提升C++编程技能的开发者来说,无论是资深的老手还是初学者,都能从中受益匪浅。尽管它可能没有涵盖最新的C++特性,但对于...
9. **最佳实践与技巧**:作者可能会分享一些编写高效、可维护QSS代码的建议和技巧,帮助开发者提升工作效率。 通过深入学习《Qt样式表武林秘籍》,开发者不仅可以提升Qt应用的界面设计能力,还能更好地理解UI设计的...
通过《JavaScript忍者秘籍》的学习,读者不仅能够掌握JavaScript的核心技术,还能了解到一些最佳实践和陷阱,从而在实际开发中更高效地编写代码。无论你是初学者还是经验丰富的开发者,这本书都能提供有价值的洞见和...
描述中的重复信息"ASP.NET AJAX Web应用开发秘诀.rar"进一步确认了这个主题,可能意味着这份资源专注于提供开发者在实际工作中可能会遇到的问题解决方案和最佳实践。 标签"ASP.NET AJAX Web应用开发秘诀.rar"与标题...
在编程世界中,软件秘籍是指那些能够提升开发效率、优化代码质量的技巧或方法。设计模式是软件工程中的一种重要概念,它是一套被反复使用、经过分类的、为解决常见问题而创建的可复用解决方案。这些模式都是在特定上...
1. **架构师图谱**:这部分涵盖了软件架构设计的基础概念、原则和最佳实践,包括分层架构、微服务架构、SOA(面向服务架构)等,旨在帮助架构师设计出高效、可扩展和易于维护的系统。 1. **Java架构师图谱**:针对...
8. **最佳实践**:提供关于编写可维护和可扩展的QSS代码的建议,以提升代码质量。 通过这本书的学习,无论是初学者还是有经验的Qt开发者,都能全面提升对Qt样式表的理解和应用能力,将界面设计提升至新的层次。书中...
代码应遵循最佳实践,保持简洁和模块化。 10. **性能优化**:考虑到网页加载速度对用户体验的影响,模板设计需要考虑到文件大小的优化,如使用CSS sprites减少HTTP请求,压缩图片等。 综上所述,这个“食物食品...
Auto Layout是Apple为iOS、macOS等平台设计的一种强大的布局系统,它允许开发者在不同尺寸和方向的屏幕上创建适应性强、响应式的用户界面。本资源包含《iOS Auto Layout开发秘籍 第2版》的中文完整版本,旨在帮助...
第七部分“理想的DB2环境”探讨了创建和维护高性能DB2环境的最佳实践,包括硬件选择、软件配置和系统架构的设计。 总结来说,《DB2 Developer's Guide》是DB2开发者和管理员的必备参考书,无论你是初学者还是经验...