CSS基本知识6-CSS字体

时间:2023-03-08 17:01:11

首先要考虑的是文本的排版,实际上有这玩意,Word还需要吗?不需要了。我们列下文本所涉及的操作:

CSS 文本属性

属性 描述
color 设置文本颜色
direction 设置文本方向。
line-height 设置行高。
letter-spacing 设置字符间距。
text-align 对齐元素中的文本。
text-decoration 向文本添加修饰。
text-indent 缩进元素中文本的首行。
text-shadow 设置文本阴影。CSS2 包含该属性,但是 CSS2.1 没有保留该属性。
text-transform 控制元素中的字母。
unicode-bidi 设置文本方向。
white-space 设置元素中空白的处理方式。
word-spacing 设置字间距。

可见,以上的这些CSS文本属性,主要就是操作文本的显示,当然对于网页来说,大多数不常用。但如果想做个网页编辑器,那就都可以派上用场了。

有了文本,我们还要设下字体,先看下系统字体:

考虑字体可能在某系统没有,所以一般指定一个字体系列:font-family:字体,字体,多个字体以逗号分隔

当然了,中文大多使用雅黑,一般这样就可以了

font-family:"Microsoft YaHei",Arial,Helvetica,sans-serif,"宋体";

当然实际使用上,这个字体设置很乱,最好的做法,就是打开别人现成的网页,然后把这个样式Copy过来。

font-style可以设置字体风格,font-weight设置字体的粗细,定义由粗到细的字符。400 等同于 normal,而 700 等同于 bold。

@font-face

用户自定义字体:

<style>
@font-face
{
font-family: myFirstFont;
src: url('Sansation_Light.ttf'),
url('Sansation_Light.eot'); /* IE9+ */
} div
{
font-family:myFirstFont;
}
</style>

CSS3增加的文本效果:新的文本属性

属性 描述 CSS
hanging-punctuation 规定标点字符是否位于线框之外。 3
punctuation-trim 规定是否对标点字符进行修剪。 3
text-align-last 设置如何对齐最后一行或紧挨着强制换行符之前的行。 3
text-emphasis 向元素的文本应用重点标记以及重点标记的前景色。 3
text-justify 规定当 text-align 设置为 "justify" 时所使用的对齐方法。 3
text-outline 规定文本的轮廓。 3
text-overflow 规定当文本溢出包含元素时发生的事情。 3
text-shadow 向文本添加阴影。 3
text-wrap 规定文本的换行规则。 3
word-break 规定非中日韩文本的换行规则。 3
word-wrap 允许对长的不可分割的单词进行分割并换行到下一行。 3

当然了,这个表很吓人,实际上:

  • text-shadow
  • word-wrap

这两个属性多数浏览器才支持,而IE10才开始支持text-shadow,而word-wrap,break-word只此一设,在单词超界时加上就Ok了。

那么主要看下text-shadow,

语法

text-shadow: h-shadow v-shadow blur color;

注释:text-shadow 属性向文本添加一个或多个阴影。该属性是逗号分隔的阴影列表,每个阴影有两个或三个长度值和一个可选的颜色值进行规定。省略的长度是 0。

描述 测试
h-shadow 必需。水平阴影的位置。允许负值。 测试
v-shadow 必需。垂直阴影的位置。允许负值。 测试
blur 可选。模糊的距离。 测试
color 可选。阴影的颜色。参阅 CSS 颜色值 测试

它和阴影样式是一样的。我们看下阴影样式:

语法

box-shadow: h-shadow v-shadow blur spread color inset;

注释:box-shadow 向框添加一个或多个阴影。该属性是由逗号分隔的阴影列表,每个阴影由 2-4 个长度值、可选的颜色值以及可选的 inset 关键词来规定。省略长度的值是 0。

描述 测试
h-shadow 必需。水平阴影的位置。允许负值。 测试
v-shadow 必需。垂直阴影的位置。允许负值。 测试
blur 可选。模糊距离。 测试
spread 可选。阴影的尺寸。 测试
color 可选。阴影的颜色。请参阅 CSS 颜色值。 测试
inset 可选。将外部阴影 (outset) 改为内部阴影。 测试

恩,很遗憾,box-shadow的blur后不是color,还有一个spread

总结:因为IE升级太过于缓慢,IE9支持box-shadow但不支持text-shadow,而这些不能装于XP系统下。

那么,浏览器兼容,不如说是IE或者说是XP兼容。那么,最好的兼容,就是不要去兼容IE,让XP用户,换Chrome这类的,一切问题都解决了,只要Chrome及Firefox支持就尽量使用。