整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

如何在网页中使用 web 字体?

前,浏览器只能展示本地安装的字体。如果字体未安装,网页显示效果会大打折扣。

为了解决这个问题,CSS 引入 web 字体,允许浏览器从服务器下载字体,下载完成后再重新渲染字体。

字体文件格式

使用 web 字体前,需要了解常用的字体文件格式。

TTF 字体文件,即 TrueType 字体,是由苹果和微软在 20 世纪 80 年代末开发的字体标准。它是 macOS 和 Windows 操作系统使用最广泛的字体格式。

OTF 字体文件,即 OpenType 字体,是一种可缩放的计算机字体格式。它建立在 TrueType 基础上,是微软的注册商标。OpenType 字体目前在主要的计算机平台上广泛使用。

WOFF 字体文件,即 The Web Open Font Format 字体,是一种用于网页的字体格式,2009 年开发,如今是 W3C(万维网联盟)的推荐标准。WOFF 本质是 OpenType 或 TrueType 字体,但是经过压缩并附加额外的元数据。在带宽受限的网络中,WOFF 能更好的支持从服务器到客户端的字体传输。

WOFF 2.0 字体文件,相比于 WOFF,提供了更高的压缩效率

SVG 字体,将 SVG 用作显示文本时的字形。SVG 1.1 规范定义了一个字体规范,允许在 SVG 文档中创建字体。

EOT 字体文件,即 Embedded OpenType Fonts 文件,是微软设计的一种用于网页的嵌入式字体,它是 OpenType 字体的紧凑形式。

不同字体格式的浏览器兼容性下图所示:

不同字体格式的浏览器兼容性,截图数据来自 w3schools.com

使用自定义字体

使用 @font-face CSS 指令定义自定义字体。使用前需要把字体文件放在服务器目录,然后定义新的字体名称,并指向字体所在位置。

京華老宋体为例,这是一款可以免费商用的中文字体。下载字体文件后,放到和 index.html 同级的目录,重命名为 jh-song.ttf。

下载字体文件

在 @font-face 指令内,使用 font-family 定义字体名称,src 属性定义字体文件路径。

定义 web 字体

然后,像使用普通字体一样,使用自定义字体样式:

使用 web 字体

tml作为web编程的入口,因为其元素众多,所以导致很多新手都无法坚持,今天我们就来聊聊怎么简单的学习html知识。

一个推荐的学习顺序

学习顺序图

下面来说明一下上面的图,首先学习不可见元素部分,然后学习标题和列表元素部分,然后是表单元素,依次类推,直到学到其他元素,其次,上面的图已经理清了部分逻辑关系的,比如select的子元素就只有option,ul和ol的共同子元素就只有li等等。

实现一个简单的页面

轮廓转化流程图

页面轮廓

实现一个页面前,我们首先划出一个大概的轮廓,这里一般采用从整体全局出发的思路,也就是结构化程序设计的思想,自顶向下,逐步求精;首先将页面分为很大的几块,然后对每个分割的块分别进行再分,直到你已经对该页面非常熟悉了,这样基于视角的页面轮廓就出现了。

用区域元素实现轮廓

有了页面轮廓,我们接下来需要做的事情就是,用区域元素表示这些分割的块,这样我们就能够得到基于HTML的页面轮廓,也就是一个页面的大体情况已经用代码实现了。

填充区域

上面说到已经用HTML实现了页面的一个大体轮廓,接下来就是用其他HMTL元素去填充每个区域块的内容,最后得到我们最终页面结构,有了这个结构,之后用CSS来美化页面就可以了,当然为了做一些更酷的效果,比如动画、旋转等等,可以用一些高级的CSS3或JavaScript(框架)来实现。

语义化

思考用什么元素

通过实现一个简单页面的实践,你虽然实现了一个简单的页面,但是有个问题会出现在你的脑子里面,就是那么多区域元素,我们怎么知道选择那个区域元素来表示顶部、中部和底部区域呢?别担心,语义化就是为了解决这个问题的,比如在文章里面,我们就应该用article来布局文章区域部分,而版权等信息可以用address或footer来布局这些区域,对于其他非区域元素,也是一样,该用表格的部分就用表格,该用表单的部分就用表单来表示,不要乱用,至于为什么要将语义化放在最后来讲,是因为语义化是在你已经非常熟悉HTML的时候,才更容易理解,如果一开始就谈语义化,估计你会遇到很多不理解的。

通过上面的讲解,如果还有什么疑问,在评论中留下,我会单独解答的,这里推荐一个中文的学习网站w3school,相信你带着本文中介绍的思路去学习这个网站里面的知识,思路会更清晰一些。

tml

  • 概念
  • 前端最核心的技术 HTML + CSS + javascript
  • HTML - 结构 - 骨架
  • CSS - 样式 - 效果
  • JAVASCRIPT - (用户)行为 - 做的事情
  • 超文本标记语言
  • 超文本
  • 文本(txt文件) - 浏览器可以直接打开
  • 如果具有中文,可能出现乱码问题
  • 标记
  • 语法结构 - <标签名>
  • 注意 - 浏览器解析标记(规定的标记内容)
  • 注意
  • HTML是不严格的语言
  • 允许不用编写所有内容
  • 标签名没有明确的规定(大小写)
  • 建议标签名使用小写
  • XHTML
  • 解释为严格意义的HTML



HTML结构

HTML结构

<!DOCTYPE html> - 声明:当前页面使用的是哪个HTML版本

<html lang="en">- 根标签:有且仅有一个

<head>- 用于设置当前页面的信息

<meta charset="UTF-8"> - 设置当前页面的编码

<title>Title</title> - 当前页面的标题

</head>

<body>- 用于显示在浏览器中

</body>

</html>

声明

  • 注意 - 必须在HTML文档的 0 行 0 列
  • 记住 - HTML5的声明<!DOCTYPE html>
  • 作用 - 告诉浏览器当前HTML页面使用的版本
  • 不同的HTML版本支持不同的标记(标签)内容

根标签

  • <html></html>
  • 除声明以外,所有内容全部被包含在根标签中
  • 注意 - 有且仅有一个
  • 标记(标签)
  • 起始标签 - 有开始,有结束
  • 开始标签 - <标签名>
  • 结束标签 - </标签名>
  • 空标签 - 只有开始标签
  • <br/>- 换行标签
  • 注意 - 建议使用小写

<meta>元素

  • 第一个作用 - 设置当前HTML页面的编码格式
  • <meta charset="UTF-8">
  • 第二个作用 - 设置当前HTML页面的关键字
  • <meta name="keywords" content="HTML, CSS, XML, XHTML, JavaScript">
  • 第三个作用 - 设置当前HTML页面的描述(很少)
  • <meta name="description" content="Free Web tutorials on HTML and CSS">
  • 第四个作用 - 设置当前HTML页面的作者
  • <meta name="author" content="King">

HTML属性

  • 出现在标签中的开始标签中,而不是结束标签
  • 格式
  • 属性名=属性值
  • 属性值 - 必须使用双引号包裹

HTML页面被搜索引擎抓取

  • <title>元素 - 页面的标题
  • <meta name="keywords">元素 - 页面的关键字
  • <h1>元素 - 标题

分类

  • 私有属性 - 当前标签独有的属性
  • 标准属性 - 几乎所有标签都有的属性
  • 事件属性 - 标准事件(了解)

HTML标题

  • <h1> ~ <h6> - 从最大到最小
  • 并不关心标题显示的效果 - 可以通过 CSS 完成
  • 关心标题的 语义化
  • 语义化 - 当前标签的含义

HTML列表

  • 有序列表

<ol>

<li></li>

</ol>

  • 默认情况下 - 1,2,3,4,5...
  • 无序列表

<ul>

<li></li>

</ul>

  • 默认情况下 - 黑点
  • 定义列表

<dl>

<dt>列表名称</dt>

dd>列表项</dd>

</dl>

  • HTML链接

<a href="地址"></a>

链接元素<a>

  • 作用
  • 用于从当前页面跳转到另一个(指定)页面
  • 实现锚点效果
  • 实现回到顶部效果
  • 实现发送邮件功能(了解)
  • href="mailto:邮件地址"
  • 路径(地址)
  • 绝对路径 - 查找的开始位置是固定
  • 相对路径 - 查找的开始位置是变化
  • 在实际开发中,使用更多
  • 完整的地址
  • http:// localhost : 8080 /day02 #name
  • 网络协议 IP地址 端口号 相对路径 锚点
  • localhost - 等价于 127.0.0.1 - 表示本机
  • 网络访问 - 通过互联网
  • http://192.168.10.165:63342/D...
  • file:///C:/0507/DAY02/CODE/00.html

C:07\DAY02\CODE>C:\0507\DAY02\CODE\00.html<.html

  • 本地访问 - 和网络无关

图片元素

  • <img> - 空标签,没有结束标签
  • 必要属性 - src属性

可选属性

  • width
  • height
  • 单位
  • 像素值
  • 百分值

HTML表格

  • 概念 - 具有行和列(单元格)
  • 行 - 表示水平方向(多个单元格)
  • 列 - 表示垂直方向(多个单元格)
  • HTML表格
  • 表示为表格
  • 作用
  • 表格的语义化 - 配合 CSS 可以实现漂亮的表格效果
  • 利用表格的行和列的概念 - 实现页面元素的布局
  • HTML表单
  • <form>标签
  • 语义化 - 表示为表单
  • 容器元素 - 浏览器中不会有任何显示效果
  • 文件的编码格式 - UTF-8
  • HTML页面的编码格式 - UTF-8
  • <meta charset="UTF-8">
  • 设置当前HTML页面的编码格式
  • 在浏览器运行当前HTML页面时,告诉浏览器当前的编码格式
  • 字符集
  • 概念 - 存放所使用的所有的字符(汉字)

分类

  • ANSI - 美国
  • ISO-8859-1 - 欧洲
  • GBK - 中国
  • GB2312
  • Unicode - 万国码
  • UTF-8 - 主要使用
  • UTF-16
  • 计算机的存储方式
  • 利用二进制方式 - 1和0
  • 中国
  • 存储 - 将汉字 "中国" 转换成 二进制 进行存储 - GBK
  • 读取 - 将 二进制 转换成 "中国" 进行显示 - UTF-8


打算深入了解这个行业的朋友,可以私信我“前端” ,不论你是学生还是想转行的朋友,我都欢迎,不定期分享干货,整理的一份2019最新的web前端学习资料和0基础入门教程分享给大家