响应式Web设计对于解决多类型屏幕问题来讲是个不错方案,但从印刷的角度来看,其却存在着不少的困难。没有固定的页面尺寸、没有毫米或英寸,没有 任何物理限制,让人感到无从下手。随着创建网站可用的各类小工具愈来愈多,像素设计局限于桌面和移动端也已经成为历史。所以,如今就让咱们来讲明一下如何 运用响应式Web设计的各项基本原则来实现,而不是抗拒流畅的网页体验。为了简单起见,咱们将着重讲布局(固然,响应式设计远远不止于此,若是你想进一步 学习,能够来这里:bradfrost.com)。web
响应式设计 vs 适应式设计浏览器
看似相同实则否则。这两种设计方式彼此相辅相成,因此说也没有对错之分。具体状况要依内容而定。工具
内容流布局
随着屏幕尺寸愈来愈小,内容所占的垂直空间也愈来愈多,也就是说,内容会向下方延伸,这就叫作内容流。若是你习惯了使用像素和点进行设计,可能会以为这个有点难掌握。不过不要紧,习惯了就很好理解了。学习
相对单位字体
你的设计对象多是台式桌面,也多是移动端屏幕或者介于二者之间的任意屏幕类型。像素密度也会彼此不一样,因此咱们须要使用灵活可变,而且可以 适应各类状况的单位。那么在这种状况下,百分比等相对单位就派上用场了。使用百分比时,咱们说宽度50%就是表示宽度占屏幕大小(或者叫视区,也就是指所 打开浏览器窗口的大小)的一半。优化
断点网站
断点可让页面布局在预设的点进行变形,也就是说,在台式桌面上显示3栏,在移动设备上仅显示1栏。大多数CSS属性均可以实现断点之间的变 形。断点放置的位置一般取决于内容。好比,若是一句话要换行,你可能就须要加上断点。但断点使用时须要谨慎——若是搞不清内容之间的逻辑关系,很容易弄的 一团乱。.net
最大和最小值设计
有时候内容占满整个屏幕宽度(例如在移动设备上)是好事,但若是相同的内容在电视屏幕上也撑得满满的,貌似就不太合理了。这就是为何要有最大/最小值。例如,若是宽度为100%,最大宽度1000px,那么内容就会以不超过1000px的宽度填充屏幕。
嵌套对象
还记得相对位置吗?若是一大堆要素彼此都紧密联系,那么必将难以控制。所以,将要素放置到容器中就会让它们变得更加好理解,而且简洁明快。这种状况就须要用到像素之类的静态单位了。静态单位对于logo和按钮等不须要扩展的内容来讲很是有用。
移动优先仍是台式桌面优先
严格来讲,项目从小屏幕入手过渡到大屏幕(移动优先),仍是从大屏幕入手过渡到小屏幕(台式桌面优先)区别不大。可是,从移动端着手能够给你带来一些额外的限制,帮助你进行决策。一般状况下你们会从两方面同时着手,因此你仍是要看哪一种方式最适合你。
Web字体 vs 系统字体
想让本身的网站拥有炫酷的Futura或Didot效果吗?那就是用web字体吧。尽管web字体看起来很炫酷,但你要记住,这些字体都须要用户下载,字越多,用户加载页面的时间也就越长。另外一方面,系统字体加载速度则快得多(前提是用户本机就有),但太过普通。
位图 vs 矢量图
你的图标是否有不少细节,而且应用了不少华丽的效果?若是是,那就用位图。若是不是,考虑使用矢量图。若是是位图,使用jpg、png或 gif。矢量图则最好使用SVG或图标字体。其各有利弊。但你要时刻牢记图标尺寸——未通过优化的图片不能传到网上。另外一方面,矢量图一般比较小,不过部 分比较老的浏览器可能不支持矢量图。还有,若是图标有不少曲线,那有可能会比位图还大,因此要明智取舍。