2018-10-10 18:03:03 -04:00
|
|
|
|
---
|
|
|
|
|
id: bad87fee1348bd9aedf08807
|
2020-12-16 00:37:30 -07:00
|
|
|
|
title: 引入谷歌字体
|
2018-10-10 18:03:03 -04:00
|
|
|
|
challengeType: 0
|
2019-12-13 13:47:57 +08:00
|
|
|
|
videoUrl: 'https://scrimba.com/c/cM9MRsJ'
|
|
|
|
|
forumTopicId: 18200
|
2018-10-10 18:03:03 -04:00
|
|
|
|
---
|
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
# --description--
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2021-01-08 11:20:48 -08:00
|
|
|
|
在我们的网站上,除了使用系统提供的默认字体以外,我们也可以使用自定义字体。网络上有很多字体库,不过在这个挑战中,我们将会使用 `Google Fonts` 字体库。
|
2020-12-16 00:37:30 -07:00
|
|
|
|
|
2021-01-08 11:20:48 -08:00
|
|
|
|
[Google 字体库](https://fonts.google.com/)是一个免费的 Web 字体库,我们只需要在 CSS 里设置字体的 URL 即可使用。
|
2020-12-16 00:37:30 -07:00
|
|
|
|
|
2021-01-08 11:20:48 -08:00
|
|
|
|
接下来,我们就要引入和使用 Google Fonts(注意:如果 Google 在你的地区被限制访问,你可以选择跳过这个挑战)。
|
2020-12-16 00:37:30 -07:00
|
|
|
|
|
2021-01-08 11:20:48 -08:00
|
|
|
|
欲引入 Google Font,你需要从 Google Fonts 上复制字体的 URL,并粘贴到你的 HTML 里面。在这个挑战中,我们需要引入 `Lobster` 字体。因此,请复制以下代码段,并粘贴到代码编辑器顶部,即放到 `style` 标签之前。
|
2020-12-16 00:37:30 -07:00
|
|
|
|
|
|
|
|
|
`<link href="https://fonts.googleapis.com/css?family=Lobster" rel="stylesheet" type="text/css">`
|
|
|
|
|
|
2021-01-08 11:20:48 -08:00
|
|
|
|
现在你可以通过将 `font-family` 属性值中的 `FAMILY_NAME` 替换为 `Lobster` 来使用 `Lobster` 字体:
|
2020-12-16 00:37:30 -07:00
|
|
|
|
`font-family: FAMILY_NAME, GENERIC_NAME;`.
|
|
|
|
|
|
2021-01-08 11:20:48 -08:00
|
|
|
|
`GENERIC_NAME` 是可选的,它用来指明在其他字体不可用时的后备字体。我们会在下一个挑战中详细说明。
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2021-01-08 11:20:48 -08:00
|
|
|
|
字体名区分大小写,并且如果字体名含有空格,则在声明时需要用引号包起来。例如,使用 `"Open Sans"` 字体需要添加引号,而 `Lobster` 则不需要。
|
2020-12-16 00:37:30 -07:00
|
|
|
|
|
|
|
|
|
# --instructions--
|
|
|
|
|
|
2021-01-08 11:20:48 -08:00
|
|
|
|
引入 Lobster 字体,然后使用元素选择器将 `h2` 元素的 `font-family` 设置为 `Lobster`。
|
2020-12-16 00:37:30 -07:00
|
|
|
|
|
|
|
|
|
# --hints--
|
|
|
|
|
|
2021-01-08 11:20:48 -08:00
|
|
|
|
应引入 `Lobster` 字体。
|
2020-12-16 00:37:30 -07:00
|
|
|
|
|
|
|
|
|
```js
|
|
|
|
|
assert(new RegExp('googleapis', 'gi').test(code));
|
2018-10-10 18:03:03 -04:00
|
|
|
|
```
|
|
|
|
|
|
2021-01-08 11:20:48 -08:00
|
|
|
|
`h2` 元素应使用 `Lobster` 字体。
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
```js
|
|
|
|
|
assert(
|
|
|
|
|
$('h2')
|
|
|
|
|
.css('font-family')
|
|
|
|
|
.match(/lobster/i)
|
|
|
|
|
);
|
|
|
|
|
```
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2021-01-08 11:20:48 -08:00
|
|
|
|
应使用元素选择器(`h2`)来改变字体样式。
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
```js
|
|
|
|
|
assert(
|
|
|
|
|
/\s*h2\s*\{\s*font-family\:\s*(\"|")?Lobster(\"|")?(.{0,})\s*;\s*\}/gi.test(
|
|
|
|
|
code
|
|
|
|
|
)
|
|
|
|
|
);
|
|
|
|
|
```
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2021-01-08 11:20:48 -08:00
|
|
|
|
`p` 元素应保持使用 `monospace` 字体。
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
```js
|
|
|
|
|
assert(
|
|
|
|
|
$('p')
|
|
|
|
|
.css('font-family')
|
|
|
|
|
.match(/monospace/i)
|
|
|
|
|
);
|
2018-10-10 18:03:03 -04:00
|
|
|
|
```
|
2019-12-13 13:47:57 +08:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
# --solutions--
|
|
|
|
|
|