Typography排版
文本的基本格式。
何时使用
- 当需要展示标题、段落、列表内容时使用,如文章/博客/日志的文本样式。
- 当需要一列基于文本的基础操作时,如拷贝/省略/可编辑。
import { NzTypographyModule } from 'ng-zorro-antd/typography';
代码演示
基本
展示文档样例。
import { Component } from '@angular/core';
@Component({
selector: 'nz-demo-typography-basic',
template: `
<article nz-typography>
<h1 nz-typography>Introduction</h1>
<p nz-typography>
In the process of internal desktop applications development, many different design specs and implementations would be involved,
which might cause designers and developers difficulties and duplication and reduce the efficiency of development.
</p>
<p nz-typography>
After massive project practice and summaries, Ant Design, a design language for backgroundapplications, is refined by Ant UED Team,
which aims to
<span nz-typography
><strong
>uniform the user interface specs for internal background projects, lower the unnecessary cost of design differences and
implementation and liberate the resources ofdesign and front-end development</strong
></span
>.
</p>
<h2 nz-typography>Guidelines and Resources</h2>
<p nz-typography>
We supply a series of design principles, practical patterns and high quality design resources (<span nz-typography
><code>Sketch</code></span
>
and <span nz-typography><code>Axure</code></span
>), to help people create their product prototypes beautifully and efficiently.
</p>
<article nz-typography>
<ul>
<li>
<a href="/docs/spec/proximity">Principles</a>
</li>
<li>
<a href="/docs/pattern/navigation">Patterns</a>
</li>
<li>
<a href="/docs/resource/download">Resource Download</a>
</li>
</ul>
</article>
<nz-divider></nz-divider>
<h1 nz-typography>介绍</h1>
<p nz-typography>
蚂蚁的企业级产品是一个庞大且复杂的体系。这类产品不仅量级巨大且功能复杂,而且变动和并发频繁,常常需要设计与开发能够快速的做出响应。
同时这类产品中有存在很多类似的页面以及组件,可以通过抽象得到一些稳定且高复用性的内容。
</p>
<p nz-typography>
随着商业化的趋势,越来越多的企业级产品对更好的用户体验有了进一步的要求。带着这样的一个终极目标,我们(蚂蚁金服体验技术部)
经过大量的项目实践和总结,逐步打磨出一个服务于企业级产品的设计体系 Ant Design。 基于<span nz-typography
><mark>『确定』和『自然』</mark></span
>的设计价值观,通过模块化的解决方案,降低冗余的生产成本, 让设计者专注于<span nz-typography><strong>更好的用户体验</strong></span
>。
</p>
<h2 nz-typography>
设计资源
</h2>
<p nz-typography>
我们提供完善的设计原则、最佳实践和设计资源文件 (<span nz-typography><code>Sketch</code></span> 和
<span nz-typography><code>Axure</code></span
>),来帮助业务快速设计出高质 量的产品原型。
</p>
<article nz-typography>
<ul>
<li>
<a href="/docs/spec/proximity">设计原则</a>
</li>
<li>
<a href="/docs/pattern/navigation">设计模式</a>
</li>
<li>
<a href="/docs/resource/download">设计资源</a>
</li>
</ul>
</article>
</article>
`
})
export class NzDemoTypographyBasicComponent {}
标题组件
展示不同级别的标题。
import { Component } from '@angular/core';
@Component({
selector: 'nz-demo-typography-title',
template: `
<h1 nz-typography>h1. Ant Design</h1>
<h2 nz-typography>h2. Ant Design</h2>
<h3 nz-typography>h3. Ant Design</h3>
<h4 nz-typography>h4. Ant Design</h4>
`,
styles: []
})
export class NzDemoTypographyTitleComponent {}
可交互
提供可编辑和可复制等额外的交互能力。
import { Component } from '@angular/core';
@Component({
selector: 'nz-demo-typography-interactive',
template: `
<p nz-typography nzEditable [(nzContent)]="editStr"></p>
<p nz-typography nzCopyable nzEditable [(nzContent)]="copyStr"></p>
<p nz-typography nzCopyable nzCopyText="Hello, Ant Design!">Replace copy text.</p>
`
})
export class NzDemoTypographyInteractiveComponent {
editStr = 'This is an editable text.';
copyStr = 'This is a copyable text.';
}
文本组件
内置不同样式的文本。
import { Component } from '@angular/core';
@Component({
selector: 'nz-demo-typography-text',
template: `
<span nz-typography>Ant Design</span>
<br />
<span nz-typography nzType="secondary">Ant Design</span>
<br />
<span nz-typography nzType="warning">Ant Design</span>
<br />
<span nz-typography nzType="danger">Ant Design</span>
<br />
<span nz-typography nzDisabled>Ant Design</span>
<br />
<span nz-typography><mark>Ant Design</mark></span>
<br />
<span nz-typography><code>Ant Design</code></span>
<br />
<span nz-typography><u>Ant Design</u></span>
<br />
<span nz-typography><del>Ant Design</del></span>
<br />
<span nz-typography><strong>Ant Design</strong></span>
`,
styles: []
})
export class NzDemoTypographyTextComponent {}
省略号
多行文本省略。
import { Component } from '@angular/core';
@Component({
selector: 'nz-demo-typography-ellipsis',
template: `
<p nz-typography nzEllipsis nzEllipsisRows="3">
Ant Design, a design language for background applications, is refined by Ant UED Team. Ant Design, a design language for background
applications, is refined by Ant UED Team. Ant Design, a design language for background applications, is refined by Ant UED Team. Ant
Design, a design language for background applications, is refined by Ant UED Team. Ant Design, a design language for background
applications, is refined by Ant UED Team. Ant Design
</p>
<br />
<p nz-typography nzEllipsis nzExpandable [nzEllipsisRows]="3">
Ant Design, a design language for background applications, is refined by Ant UED Team. Ant Design, a design language for background
applications, is refined by Ant UED Team. Ant Design, a design language for background applications, is refined by Ant UED Team. Ant
Design, a design language for background applications, is refined by Ant UED Team. Ant Design, a design language for background
applications, is refined by Ant UED Team. Ant Design, a design language for background applications, is refined by Ant UED Team.
</p>
<br />
<p nz-typography nzEllipsis nzEditable [nzEllipsisRows]="2" [nzContent]="dynamicContent" (nzContentChange)="onChange($event)"></p>
`
})
export class NzDemoTypographyEllipsisComponent {
dynamicContent =
'Ant Design, a design language for background applications, is refined by Ant UED Team. ' +
'Ant Design, a design language for background applications, is refined by Ant UED Team. ' +
'Ant Design, a design language for background applications, is refined by Ant UED Team. ' +
'Ant Design, a design language for background applications, is refined by Ant UED Team.';
onChange(event: string): void {
this.dynamicContent = event;
}
}
后缀
添加后缀的省略。
import { Component } from '@angular/core';
@Component({
selector: 'nz-demo-typography-suffix',
template: `
<nz-slider [(ngModel)]="rows" [nzMax]="10" [nzMin]="1"></nz-slider>
<p
nz-typography
nzEllipsis
nzExpandable
[attr.title]="content + suffix"
[nzEllipsisRows]="rows"
[nzSuffix]="suffix"
(nzOnEllipsis)="onEllipsisChange($event)"
>
{{ content }}
</p>
`
})
export class NzDemoTypographySuffixComponent {
content =
'To be, or not to be, that is a question: Whether it is nobler in the mind to suffer. The slings and arrows of ' +
'outrageous fortune Or to take arms against a sea of troubles, And by opposing end them? To die: to sleep; ' +
'No more; and by a sleep to say we end The heart-ache and the thousand natural shocks That flesh is heir to, ' +
"'tis a consummation Devoutly to be wish'd. To die, to sleep To sleep- perchance to dream: ay, there's the rub! " +
'For in that sleep of death what dreams may come When we have shuffled off this mortal coil, Must give us pause. ' +
"There 's the respect That makes calamity of so long life";
suffix = '--William Shakespeare';
rows = 1;
onEllipsisChange(ellipsis: boolean): void {
console.log(ellipsis);
}
}
API
[nz-typography]directive
参数 | 说明 | 类型 | 默认值 | 全局配置 |
---|---|---|---|---|
[nzContent] | 组件内容 | string | - | |
[nzCopyable] | 是否可拷贝,需要配合 [nzContent] 使用 | boolean | false | |
[nzEditable] | 是否可编辑,需要配合 [nzContent] 使用 | boolean | false | |
[nzEllipsis] | 自动溢出省略,动态内容时需要配合 [nzContent] 使用 | boolean | false | |
[nzExpandable] | 自动溢出省略时是否可展开 | boolean | false | |
[nzSuffix] | 自动溢出省略时的文本后缀 | string | - | |
[nzCopyText] | 自定义被拷贝的文本 | string | - | |
[nzDisabled] | 禁用文本 | boolean | false | |
[nzEllipsisRows] | 自动溢出省略时省略行数 | number | 1 | ✅ |
[nzType] | 文本类型 | ‘secondary’|’warning’|’danger’ | - | |
(nzContentChange) | 当用户提交编辑内容时触发 | EventEmitter<string> | - | |
(nzExpandChange) | 展开省略文本时触发 | EventEmitter<void> | - | |
(nzOnEllipsis) | 当省略状态变化时触发 | EventEmitter<boolean> | - |