栅格系统在UI设计和前端开发中是被应的很广泛一套体系,但真正掌握并很好的人却多,本期我为大到这篇干货章,分享原作者通过多年实战收获的经验总结,一起来习!
顾身边常见的优设计很使用栅系统,你能非常赞同在界面中使用栅系统,但却没有人告诉你应该何使用它们。
印刷中也用到栅,但就文而言,我主要想讨论的是用PC和移动设备上的栅系统设计。
△ 块放内容
内容块包括文本,图片或者是者的组形式,背景颜色实际上不能算是内容素,除非是作为文本或者图片的容器。
上图中的色块作为栅格中的列,它构成了内容宽度。一来说,列宽是不会变的,只是列数会随着备的不同而变化,比如从PC端的12列变为板脑上的8列,然后在移动端变为4列。严格来说,你其实可以定义任何想要的列宽,但大多数情况下的网格列宽都置在60-80px之间。选择适的列宽是最重要的,因为它是内容宽度的主要决定因素。
水槽是在列列之间的空间。20px是一个常见的尺寸置,当计块状或者卡片素的网格,这种间距非常重要,比如做照片类计的候。有些系统会随着备宽度的增加而增加水槽的宽度,但也可以保持固定。
外边距也称为外水槽,是内容宽度之外的空域。为了更方便的计,外边距会随着备宽度的增加而增加。移动备的边距通常为20-30px,而在板脑和PC端,这个间距通常会差异大。
下会介绍些基本准则,要明白在实设计其实没有任何硬性规定。
1. 内容素必须位于若干列上
其核心思想是内容素必须位于若干列上,你可以任割,比如6×2,3×4,4×3。下面的例中,展示了不同割方式计的息卡片。
△ 不同栅格设计展示
很,看来很简单对吧。有的时,你想把内容严的套用在栅格布局上,会发现可够美观,如面的例子。
如果我们把内都网格,文本内会显得很,的置不严格任何网格,这也可以的,只理解了整元素实际一不可见的,的器就行。
这也是4×3布局,是了它内部不可见填充。把这样设计稿到开发时,他们能很观知这,所以这更利于去理解如何实地分配好内容。
2. 不要将内容元素留在槽
内容元素应该要在列宽以内,而不能流出在槽,这样会违背栅格化目。
3. 只要父级元素对齐栅,子级以不完对齐列
有时,你想要将设计和卡分成两部分,一半是图,一半是文字。你能遇到样尴尬的情况,图没有完落在一列上,文字被迫以一种奇怪的方式自适应。其不用担心,只要「父」容器对齐栅,就没有关系。
△ 父子级内栅格排版示意
4. 除非意,否则不把列作外部填充
所重内都应该与栅格列宽相应。一始会觉得奇怪,因如果不习惯使用网格,可能会把网格宽度当全部内区域,所以还需给它设一的内距。此时外距就起到了留白的作用,它们充当了内距。不网格内部利用列宽当内距,与网格外面保持对齐,利用网格外的间距当留白区域。
根据代码实现方式,要么格的容按例缩放,边距固定,要么外边距与容同时缩放。
△ 确的内填充方式不确的把栅格当距
如果有人说「我需要一个1200px宽的设计」,这并意味着你的设计就是1200px宽,这实是说设计容宽在1200px的画布,实际容占位是960px,这样就会有空间留外边距。
5. 全血的元素或纹图形应该设计在画边缘,并解为血的列格
△ 这页面布局的顶部图片被设完全出血
这是一个例外的规则,当背景颜色或者图片在全血的情况,开发同会把它解为一个全屏的容元素。
如果设的装饰元素之类的内,可以接受它被裁切掉,此时也可以脱离栅格化的设。
△ 些图片和文出血设计
页眉页脚时也例外,它们不被认内的一部分。些设将它们固浏览器,些则喜欢保持内的宽度,这取决于自身功能内的况。将它们保持内宽度内的好处,当用户宽屏显示器看页面时,不需回扫视,将它们固浏览器的好处可以导航元素提供多的空间。
△ 图片来Intuit
在传统栅格化系统设计,列宽度和槽宽度是保持不变,是列「数量」发生变化。
什么这么处理呢?这了让设简单。如果一组三张卡片分别桌面的四列,那么平板电脑,会显示两张卡片,并把第三张卡片行折行显示第二行。不需任何的调整,因已知道它于第四列了。
在手机上,答案很简单,只需要一张卡片,他的就会自堆到面的行中。如果你愿意,可变得有创意,择只在手机上显示一张卡片,或者做一个水平滚。这些列的自适应对于代码来说就是很简单的参考。
际上,web必须呈现任何浏览器的宽度。例,有一个大显示器,它以看到1600像素宽的东西,际上pc端的网页设计是1200px宽,平板电脑上是768px宽,手机是360px宽。所以你看到一个小1200px的设计,有大量的留白。但是当你的浏览器小一个像素,1199px,生什么呢?
1. 固定网
△ 固栅格示意
如果开发那边写了一个固定栅格,当你从桌面缩小到平电脑,就像是在900px的浏览器宽时,你会看到任何变,设计就像是被剪掉了一样。但当达到768px界点时,设计马上就会改变,平电脑上的显示效果就会好起来。如果继续减小这个值,同样的事情会发生,在到达另一个界值之前,设计看起来都是变的。
2. 格
△ 流动网格的示例
现在来看看流格的特点,当口缩小时,容将态的发生变,本会进行换行,元素会变窄。然而,这些元素在容宽缩小到一个界值之前,布是会变的。
所以我想说的是,设计的临界值只是一个更改局的参考点。就是为什么列宽和水槽在网中不改变的原因,因为我们想让设计师在考虑局时能够更容易地创建一致。
3. 混合网
在际项目中,使用流动网和固定网的组合也是常见的做法。网站通常是流动网,因为它要去适应各种不同终端的大小。
不需要太死板地去坚持传统栅套路,12、8、4样的分,甚至不需要20px的水槽,下面是一在设计中使用栅系统做的很的设计灵感。
1. Invision’s Genome Project
可看到,他们的设计故意使任何的水槽,看起来是无缝的。
这个仅设计的很好,他们还利了在设计中展示他们自己的栅格系统来整体的设计变得更酷炫。
2. Dropbox Design
他们设水槽外距,相反,整页面被分两半,然后将内填充到这两部分。
3. WordPress
△ WordPress创账号页
使用网格的方式取决于自己。可以主内部分使用网格,次内则不使用。Wordpress的例子中,页面中间的部分使用栅格化设,左侧的侧栏则使用。
4. The Mockup Club
内容和网格也并不是从开始,于模型网站,内容在左边也未尝不可。
5. Instagram
我非常确定的说,Instagram的PC端是用上6列栅局。
写篇文章的目的是想提供一关何在响应式设计中使用栅系统,我道对我自己来说,我花很年的时间写大量的代码来理网是何工的。我在YouYube上看很视频,也阅读大量的文章,但每个人在关注它为什么重要,却不去注重到底怎么在自己的项目中使用原则。
你要做的最好的事情就是从现在开始注那些优秀计是如何对齐素的,你将会开始这些模式。为了帮助理解,这有一些计系统概述了它的网格使用:
- Google’s Material Design System(https://material.io/design/layout/responsive-layout-grid.html#columns-gutters-margins)
- Intuit’s Design System(https://designsystem.quickbooks.com/foundations/responsive-column-grid/)
- IBM’s Carbon Design System(https://www.carbondesignsystem.com/guidelines/layout#2x-grid-fundamentals)
在完全理解了网格的工作理之后,已经成为了一名更好的计,因为知道的计将如何在临界值之间进行转换。也可以落地的计,使它能够有一个完美的像素对齐。这的规范带来了更一致,更简洁的计,当用户从一个界面另一个界面流转,这真的提升了产品的档次。
我议在你设计去应用这些网格,并和开发起,以相将它们落地,这将会是个常不进步。
原文链接:《Responsive grids and how to actually use them》
注译者的微信公众号:「彩云译设计」