我所认知的 ANT DESIGN

一、引言

由于工作的关系对于 React 并没有过度的深入,因此对 Ant Design 并无太多了解。当然也是因为工作中存在大量的 Angular 项目,后来 ng-zorro-antd 的发布引起我极大的关注。

当我决定基于 ng-zorro-antd 发布一款企业后台管理模板 ng-alain 之前,我深深被 Ant Design 这个 UI 设计语言吸引住了。

以下是我对 Ant Design 的理解做一下总结,其本质上是不分 Angular 还是 React 的,但示例依然以 Angular 为准。

二、阅读指引

私以为不管前后端都应该好好阅读一下 Ant Design 指引系列文章

Ant Design 践行『以人为本』的设计理念。

在一个传统列表页面,会出现很多按钮,可能包括:添加、搜索、批量操作按钮组等,这是一个非常复杂的结构,然而用户实际高频率操作的可能只有一个;而突出这类按钮的方法,不一定要强化按钮的视觉,也可以弱化其他按钮的视觉,从而达到高频率操作项。

因此在实践 ng-zorro-antd 时,会发现按钮只有四种类型,而不是用颜色区分。

button.png

从开发者的角度而言,无须关注我应该如何选择何种颜色才能够更好的表达按钮的作用,转而从按钮的作用上来区分,相比较而言开发者更清楚业务本身,这比选择颜色容易得多、更统一风格。

Ant Design 的设计原则系列文章会让我们对UI有一种全新的认知,因此推荐不管前后端都应该好好阅读它们。

三、实践

1、栅格系统

Ant Design 采用的是24栅格系统,相比较12栅格对于大量信息收纳解决收纳的问题。

然而我想提的是 [nzGutter] 栅格间距属性,其值是固定的,不受响应式影响。

Ant Design 是以一个 (8 * n)px 为基准(n自然数),不管是横、纵之间的间距都是依此为计算方式。

对于企业后台,以 8px16px24px 来表达小、中、大三种不规格即合适、又刚好。

grid.png

当我们很熟悉这种规则的话,构建一个『以人为本』页面,简直就是信手拈来。

2、布局视觉

整体布局

从 ng-zorro-antd 默认的设计规则,有几个规则:

  • 顶部导航(大部分系统):一级导航高度 64px,二级导航 48px
  • 顶部导航(展示类页面):一级导航高度 80px,二级导航 56px
  • 顶部导航高度的范围计算公式为:48+8n
  • 侧边导航宽度的范围计算公式:200+8n

ng-alain 就是基于这种设计规则的一次很好实践。

页面布局

我们来看页面布局,这一点相对于开发人员更值得看。当然,Antd Design 也提供一些默认规则:

  • 网站展示页和 Dashboard 的 Gutter 宽度为 24px
  • 列表、表格、详情和表单页面的 Gutter 宽度为 16px

对,没错,布局讲究的是间距。当然我们不一定要按照这种规则,但一定要遵守 (8 * n)px 基数。

ng-alain 为例。不同区域块(大量的 nz-card 组件)间以中间距(16px)间隔,表格区域与项操作区域以小间距(8px)间隔。

遵守这种间隔很容易在小组中得到统一规范,也无须介绍过多。

3、字号

ng-zorro-antd 遵循的是 React 版本,因此默认字号是以 12px 计,其实这一点我非常奇怪,因为从Ant Design指引中明确表述默认字号为 12pt,而转成 px 其实差不多应该是 16px 左右。

而这个问题我问过 ng-zorro-antd 团队也没有得到一很好的答案。

当然,更让我好奇的是竟然没有使用一种相对单位(即:remem)。

以 Angular 版本的 Ant Design 来讲说,最可惜的是当下 ng-zorro-antd 的设计,很难去改变它,除非自己Fork一份源代码,并修改其默认主题字号参数。

四、总结

其实细心阅读 Ant Design 指引系列文章 压根也不需要这篇文章了。

不管怎么样,罗里吧嗦一大堆。

如果你在 Angular 中入坑,对 Ant Design 也很有好感的情况下,下列两个工具可能会帮你做很多简化:

Happy coding!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,293评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,604评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,958评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,729评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,719评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,630评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,000评论 3 397
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,665评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,909评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,646评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,726评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,400评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,986评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,959评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,996评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,481评论 2 342

推荐阅读更多精彩内容

  • ng-alain是一个基于ng-zorro-antd的企业后台脚手架,目标也非常简单,希望在Angular上面开发...
    cipchk阅读 13,489评论 2 12
  • 使用sketch最重要的一点是设计好控件的规范。 为做好设计规范需要对色彩进行编号,比如:color_a”_1,c...
    youyeath阅读 26,113评论 2 237
  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,727评论 1 92
  • Angular版本的 Ant Design 总算发布了,其名曰:ng-zorro-antd。 这人要是越期待,心就...
    cipchk阅读 13,691评论 0 6
  • 临近年关岁末,单位聚餐,吃肥牛火锅,酒酣耳热之际,领导夹着一块半生不熟的牛肉,盯着看了许久,说了一句:“小牛这...
    死在水里的鱼阅读 518评论 0 2