首先来了解一下CSS字体:

通用字体系列

前面讨论过,实际上相同的字体可能有很多不同的称呼,不过 CSS 迈出了勇敢的一步,力图帮助用户代理把这种混乱状况理清楚。

我们所认为的“字体”可能有许多字体变形组成,分别用来描述粗体、斜体文本,等等。例如,你可能已经对字体 Times 很熟悉。不过,Times 实际上是多种变形的一个组合,包括 TimesRegular、TimesBold、TimesItalic、TimesOblique、TimesBoldItalic、TimesBoldOblique,等等。Times 的每种变形都是一个具体的字体风格(font face),而我们通常认为的 Times 是所有这些变形字体的一个组合。换句话说,Times 实际上是一个字体系列(font family),而不只是单个的字体,尽管我们大多数人都认为字体就是某一种字体。

除了各种特定字体系列外(如 Times、Verdana、Helvetica 或 Arial),CSS 还定义了 5 种通用字体系列:

Serif 字体
这些字体成比例,而且有上下短线。如果字体中的所有字符根据其不同大小有不同的宽度,则成该字符是成比例的。例如,小写 i 和小写 m 的宽度就不同。上下短线是每个字符笔划末端的装饰,比如小写 l 顶部和底部的短线,或大写 A 两条腿底部的短线。Serif 字体的例子包括 Times、Georgia 和 New Century Schoolbook。
Sans-serif 字体
这些字体是成比例的,而且没有上下短线。Sans-serif 字体的例子包括 Helvetica、Geneva、Verdana、Arial 或 Univers。
Monospace 字体
Monospace 字体并不是成比例的。它们通常用于模拟打字机打出的文本、老式点阵打印机的输出,甚至更老式的视频显示终端。采用这些字体,每个字符的宽度都必须完全相同,所以小写的 i 和小写的 m 有相同的宽度。这些字体可能有上下短线,也可能没有。如果一个字体的字符宽度完全相同,则归类为 Monospace 字体,而不论是否有上下短线。Monospace 字体的例子包括 Courier、Courier New 和 Andale Mono。
Cursive 字体
这些字体试图模仿人的手写体。通常,它们主要由曲线和 Serif 字体中没有的笔划装饰组成。例如,大写 A 再其左腿底部可能有一个小弯,或者完全由花体部分和小的弯曲部分组成。Cursive 字体的例子包括 Zapf Chancery、Author 和 Comic Sans。
Fantasy 字体
这些字体无法用任何特征来定义,只有一点是确定的,那就是我们无法很容易地将其规划到任何一种其他的字体系列当中。这样的字体包括 Western、Woodblock 和 Klingon。

理论上讲,用户安装的任何字体系列都会落入到上述某种通用系列中,但实际上可能并非如此,不过例外情况(如果有的话)往往很少。

<1>.字体系列

 1 <html> 2 <head> 3     <style type="text/css"> 4         p.serif {font-family: "Times New Roman",Georgia,Serif} 5         p.sansserif {font-family:Arial,Verdana,Sans-serif} 6     </style> 7 </head> 8  9 <body>10     <h1>CSS font-family</h1>11     <p class="serif">12         This shows  the Times  New Roman font.13      </p>14     <p class="sansserif">15         This shows the Arial font.16     </p>17 </body>18 </html>

因此,我们建议在所有 font-family 规则中都提供一个通用字体系列。

这样就提供了一条后路,在用户代理无法提供与规则匹配的特定字体时,

就可以选择一个候选字体。  

没错,serif就是候选字体,以防用户的电脑上没有装

serif前面的字体。

<2>.字体风格

 1 <html> 2 <head> 3     <style type="text/css"> 4         p.normal {font-style: normal} 5         p.italic {font-style: italic} 6         p.oblique {font-style: oblique} 7     </syle> 8 </head> 9 10 <body>11 <p class="normal">This is a paragraph, normal.</p>12 <p class="italic">This is a paragraph, italic.</p>13 <p class="oblique">This is a paragraph, oblique.</p>14 </body>15 </html>

font-style属性最常用于规定斜体文本。

该属性有三个值:

  • normal - 文本正常显示
  • italic - 文本斜体显示
  • oblique - 文本倾斜显示

italic 和 oblique 的区别

font-style 非常简单:用于在 normal 文本、italic 文本和 oblique 文本之间选择。唯一有点复杂的是明确 italic 文本和 oblique 文本之间的差别。

斜体(italic)是一种简单的字体风格,对每个字母的结构有一些小改动,来反映变化的外观。与此不同,倾斜(oblique)文本则是正常竖直文本的一个倾斜版本。

通常情况下,italic 和 oblique 文本在 web 浏览器中看上去完全一样。

转载于:https://www.cnblogs.com/o8le/archive/2011/09/18/2180613.html

CSS设置字体——系列和风格相关推荐

  1. [css] 设置字体时为什么建议设置替换字体?

    [css] 设置字体时为什么建议设置替换字体? 这是由于网站用户的浏览设备不同,可能并不支持或没有安装你所设置的字体. 这时候就会自动使用替换字体来对网页进行一个展示. 设置替换字体可以尽可能保证所有 ...

  2. 零基础CSS入门教程(8)——CSS设置字体

    本章目录 1.任务目标 2.css设置字体 3.代码演示 4.小结 1.任务目标 我们前几个小结学习了,css的选择器,和及基本的改变字体颜色.我们这一小结学习一下设置字体的一些功能 2.css设置字 ...

  3. 05使用CSS设置字体和文本样式

    使用CSS设置字体和文本样式: 1.定义字体类型font-family 用法: font-family:name; font-family:ncursive|fantasy|monospace|ser ...

  4. 设置字体大小用css的哪个属性,css设置字体大小的属性名是什么

    css设置字体大小的属性名是"font-size",该属性使用css中表示尺寸的单位(px.em.rem等)设置字体大小,也可以使用百分号等单位来设置.实际上font-size设置 ...

  5. css设置个性字体大小,css设置字体大小的属性名是什么

    css设置字体大小的属性名是"font-size",该属性使用css中表示尺寸的单位(px.em.rem等)设置字体大小,也可以使用百分号等单位来设置.实际上font-size设置 ...

  6. html字体修改微软字体大小,css设置字体(css怎么调整字体大小)

    一般字体的设置包含:字体,字体大小,字体颜色 html设置字体的话有很多标签去设置1. h1,h2,h3,h4,h5,h6 标题 其中 定义最大的标题. 定义最小的标题.2. 采用. 用Css设置整个 ...

  7. css设置字体大小会受分辨影响吗,CSS字体大小设置时的参考(转)

    font-size 设置的绝对关键字: 以下几个绝对字体大小的设置是有效的.当然他们是浏览器预定义设置的.给元素指定了绝对关键字font-size的时候,该元素就不会继承父元素的字体大小 font-s ...

  8. html怎么给h2文字加颜色,css教程之css设置字体颜色

    font-size:18px;:设置字号 color:#093:设置字色 font-family:'宋体';:设置字体 (要尽量使用通用的字体,就是用大家电脑上一般都有的字体,常用的是中文字体是宋体英 ...

  9. css设置字体大小等失效

    浏览器的最小字体是12px 你设置字体    div这种块级标签     改成行级标签试试 <div class="message" ><span class=& ...

最新文章

  1. 怎么升级浏览器_下载的chrome无法访问此网站怎么解决
  2. (转载)文件系统与数据库系统的区别
  3. echarts雷达图线的样式_echarts 雷达图的个性化设置
  4. 【控制】《多智能体系统的动力学分析与设计》徐光辉老师-第8章-有输入时滞的二阶多智能体系统的多一致
  5. C#编写串口程序(详细教程)
  6. 学计算机科学与技术的专业特长,计算机科学与技术专业简历范文介绍
  7. 学习记录(一)之h5_canvas
  8. 新手小白Linux(Centos6.5)部署java web项目(mongodb4.0.2安装及相关操作)
  9. java integer null 0_Mybatis Integer类型参数值为0时得到为空的解决方法
  10. 解析su,su -,sudo的区别
  11. 洛谷P4325、P4413题解(Java语言描述)
  12. Mybatis Generator生成工具使用
  13. [补档]noip2019集训测试赛(八)
  14. android 自定义progressdialog,android自定义ProgressDialog加载效果
  15. 802.1W RSTP
  16. 制作U盘安装UBUNTU
  17. asp.net图书馆管理系统
  18. 无线路由器建立usb共享打印服务器,无线路由器USB网络共享管理设置方法
  19. Makefile 文件中的:obj-$(CONFIG_TEST) += test.o,这一类的是什么意思?
  20. 如何处理计算机显示器故障,电脑显示器常见的故障及解决办法

热门文章

  1. linux进程分部内存,栈大小和内存分部问题
  2. python RE match对象 m.group(0)可以输出 m.group(1)为啥不可以输出第二个呢?
  3. Java实现中文算数验证码(算数运算+-*/)
  4. kali中运行apktool出现Input file (***.apk) was not found or was not readable
  5. c语言取消注释,实现去除c语言注释的小工具
  6. 3个值得关注的电力/能源区块链项目
  7. RSA和SHA512实现数字签名(C++)
  8. 人体骨骼关键点检测综述(1)
  9. 解决Android平台移植ffmpeg的一揽子问题
  10. 阿迪达斯携手中国运动健儿发布70周年广告片