2020-07-16 22:31:39 +02:00
|
|
|
---
|
|
|
|
template: overrides/main.html
|
|
|
|
---
|
|
|
|
|
|
|
|
# Changing the fonts
|
|
|
|
|
2020-07-16 23:55:37 +02:00
|
|
|
Material for MkDocs makes it easy to change the typeface of your project
|
|
|
|
documentation, as it directly integrates with [Google Fonts][1]. Alternatively,
|
|
|
|
fonts can be custom-loaded if self-hosting is preferred or another destination
|
|
|
|
should be used.
|
|
|
|
|
|
|
|
[1]: https://fonts.google.com
|
|
|
|
|
2020-07-16 22:31:39 +02:00
|
|
|
## Configuration
|
|
|
|
|
2020-07-16 23:55:37 +02:00
|
|
|
### Regular font
|
|
|
|
|
2020-07-20 15:18:09 +02:00
|
|
|
[:octicons-file-code-24: Source][2] ·
|
|
|
|
:octicons-milestone-24: Default: [`Roboto`][3]
|
2020-07-16 22:31:39 +02:00
|
|
|
|
2020-07-16 23:55:37 +02:00
|
|
|
The _regular font_ is used for all body copy, headlines, and essentially
|
|
|
|
everything that does not need to be proportionally spaced. It can be set to any
|
|
|
|
valid [Google Font][1] with:
|
2020-07-16 22:31:39 +02:00
|
|
|
|
|
|
|
``` yaml
|
|
|
|
theme:
|
|
|
|
font:
|
2020-07-16 23:55:37 +02:00
|
|
|
text: Roboto
|
2020-07-16 22:31:39 +02:00
|
|
|
```
|
|
|
|
|
2020-07-17 13:08:27 +02:00
|
|
|
The typeface will be loaded in 300, 400, _400i_ and __700__.
|
2020-07-16 23:55:37 +02:00
|
|
|
|
|
|
|
[2]: https://github.com/squidfunk/mkdocs-material/blob/master/src/base.html#L120-L139
|
|
|
|
[3]: https://fonts.google.com/specimen/Roboto
|
|
|
|
|
|
|
|
### Proportional font
|
|
|
|
|
2020-07-20 15:18:09 +02:00
|
|
|
[:octicons-file-code-24: Source][2] ·
|
|
|
|
:octicons-milestone-24: Default: [`Roboto Mono`][4]
|
2020-07-16 23:55:37 +02:00
|
|
|
|
|
|
|
The _proportional font_ is used for code blocks and can be configured separately.
|
|
|
|
Just like the regular font, it can be set to any valid [Google Font][1] from
|
|
|
|
`mkdocs.yml` with:
|
2020-07-16 22:31:39 +02:00
|
|
|
|
|
|
|
``` yaml
|
|
|
|
theme:
|
2020-07-16 23:55:37 +02:00
|
|
|
font:
|
|
|
|
code: Roboto Mono
|
2020-07-16 22:31:39 +02:00
|
|
|
```
|
|
|
|
|
2020-07-16 23:55:37 +02:00
|
|
|
The typeface will be loaded in 400.
|
|
|
|
|
|
|
|
[4]: https://fonts.google.com/specimen/Roboto+Mono
|
2020-07-16 22:31:39 +02:00
|
|
|
|
|
|
|
## Customization
|
|
|
|
|
2020-07-20 15:18:09 +02:00
|
|
|
[:octicons-file-code-24: Source][2] ·
|
|
|
|
:octicons-mortar-board-24: Difficulty: easy
|
|
|
|
|
2020-07-16 23:55:37 +02:00
|
|
|
If you want to load fonts from other destinations or don't want to use Google
|
|
|
|
Fonts for [data privacy][5] reasons, e.g. _due to GDPR_, add the following lines
|
|
|
|
to `mkdocs.yml`:
|
|
|
|
|
|
|
|
``` yaml
|
|
|
|
theme:
|
|
|
|
font: false
|
|
|
|
```
|
|
|
|
|
|
|
|
This will prevent typefaces from being loaded from Google Fonts. As a fallback,
|
|
|
|
common system fonts will be used automatically. Additionally, if you want to
|
2020-07-17 14:33:52 +02:00
|
|
|
load a font from another destination, you may either follow the guide on [theme
|
|
|
|
extension][6] and [override the `fonts` block][7] with a `style` tag, or use an
|
|
|
|
[additional stylesheet][8] to add the necessary `@font-face` definition:
|
2020-07-16 23:55:37 +02:00
|
|
|
|
|
|
|
``` css
|
|
|
|
@font-face {
|
|
|
|
font-family: "<font>";
|
|
|
|
src: "...";
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
The font can then be configured to be used as the regular or proportional font:
|
|
|
|
|
2020-07-19 22:23:26 +02:00
|
|
|
=== "Regular font"
|
2020-07-16 23:55:37 +02:00
|
|
|
|
|
|
|
``` css
|
|
|
|
body, input {
|
|
|
|
font-family: "<font>", -apple-system, Helvetica, Arial, sans-serif;
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
2020-07-19 22:23:26 +02:00
|
|
|
=== "Proportional font"
|
2020-07-16 23:55:37 +02:00
|
|
|
|
|
|
|
``` css
|
|
|
|
pre, code, kbd {
|
|
|
|
font-family: "<font>", SFMono-Regular, Consolas, Menlo, monospace;
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
2020-07-17 13:08:27 +02:00
|
|
|
[5]: ../data-privacy.md
|
2020-07-17 16:50:57 +02:00
|
|
|
[6]: ../customization.md#extending-the-theme
|
2020-07-17 14:33:52 +02:00
|
|
|
[7]: ../customization.md#overriding-blocks
|
|
|
|
[8]: ../customization.md#additional-stylesheets
|