CSS字体、外观属性、背景

CSS字体样式属性
1. font-size:字号大小
2. font-family:字体
3. font-weight:字体粗细 (加粗)
4. font-style:字体风格 (斜体)
5. font:综合设置字体样式 (有顺序)

CSS外观属性
1. color:文本颜色
2. line-height:行间距
3. text-align:水平对齐方式
4. text-indent:首行缩进
5. letter-spacing:字间距
6. word-spacing:单词间距
7. 颜色半透明(css3)
8. 文字阴影(CSS3)

CSS字体样式属性

font-size:字号大小

font-size属性用于设置字号,该属性的值可以使用相对长度单位,也可以使用绝对长度单位。其中,相对长度单位比较常用,推荐使用像素单位px,绝对长度单位使用较少。具体如下:

度量单位

font-family:字体

font-family 属性用于设置字体。网页中常用的字体有宋体微软雅黑黑体等,例如将网页中所有段落文本的字体设置为微软雅黑,可以使用如下CSS样式代码:

p { font-family:"微软雅黑";}

h4 { font-family:"Microsoft YaHei", tahome, arial, "Hiragino Sans GB";}

可以同时指定多个字体,中间以逗号隔开,表示如果浏览器不支持第一个字体,则会尝试下一个,直到找到合适的字体。

常用技巧:

  1. 现在网页中普遍使用 14px+
  2. 尽量使用偶数的数字字号。ie6等老式浏览器支持奇数会有bug。
  3. 各种字体之间必须使用英文状态下的逗号隔开。
  4. 中文字体需要加英文状态下的引号,英文字体一般不需要加引号。当需要设置英文字体时,英文字体名必须位于中文字体名之前
  5. 如果字体名中包含空格、#、$等符号,则该字体必须加英文状态下的单引号或双引号,例如font-family: "Times New Roman";
  6. 尽量使用系统默认字体,保证在任何用户的浏览器中都能正确显示。

CSS Unicode字体

在 CSS 中设置字体名称,直接写中文是可以的。但是在文件编码(GB2312、UTF-8 等)不匹配时会产生乱码的错误。xp 系统不支持 类似微软雅黑的中文。

方案一: 你可以使用英文来替代。 比如 font-family:"Microsoft Yahei"。

方案二: 在 CSS 直接使用 Unicode 编码来写字体名称可以避免这些错误。使用 Unicode 写中文字体名称,浏览器是可以正确的解析的。
font-family: "\5FAE\8F6F\96C5\9ED1",表示设置字体为“微软雅黑”。

搜狐对字体定义的解决方案

可以通过escape()来测试属于什么字体。

字体名称 英文名称 Unicode 编码
宋体 SimSun \5B8B\4F53
新宋体 NSimSun \65B0\5B8B\4F53
黑体 SimHei \9ED1\4F53
微软雅黑 Microsoft YaHei \5FAE\8F6F\96C5\9ED1
楷体_GB2312 KaiTi_GB2312 \6977\4F53_GB2312
隶书 LiSu \96B6\4E66
幼园 YouYuan \5E7C\5706
华文细黑 STXihei \534E\6587\7EC6\9ED1
细明体 MingLiU \7EC6\660E\4F53
新细明体 PMingLiU \65B0\7EC6\660E\4F53

为了照顾不同电脑的字体安装问题,我们尽量只使用宋体微软雅黑中文字体

font-weight:字体粗细

字体加粗除了用 bstrong 标签之外,可以使用CSS 来实现,但是CSS 是没有语义的。

font-weight 属性用于定义字体的粗细,其可用属性值:normal、bold、bolder、lighter、100~900(100的整数倍)。

小技巧:
数字 400 等价于 normal,而 700 等价于 bold。 但是我们更喜欢用数字来表示。

font-style:字体风格

字体倾斜除了用 iem 标签之外,可以使用CSS 来实现,但是CSS 是没有语义的。

font-style属性用于定义字体风格,如设置斜体、倾斜或正常字体,其可用属性值如下:

normal:默认值,浏览器会显示标准的字体样式。
italic:浏览器会显示斜体的字体样式。
oblique:浏览器会显示倾斜的字体样式。

小技巧:
平时我们很少给文字加斜体,反而喜欢给斜体标签(em,i)改为普通模式

font:综合设置字体样式 (重点)

font属性用于对字体样式进行综合设置,其基本语法格式如下:
选择器{font: font-style font-weight font-size/line-height font-family;}

使用font属性时,必须按上面语法格式中的顺序书写,不能更换顺序,各个属性以空格隔开。

注意:其中不需要设置的属性可以省略(取默认值),但必须保留font-sizefont-family属性,否则font属性将不起作用。


CSS外观属性

color:文本颜色

color属性用于定义文本的颜色,其取值方式有如下3种:

  1. 预定义的颜色值,如red,green,blue等。
  2. 十六进制,如#FF0000,#FF6600,#29D794等。实际工作中,十六进制是最常用的定义颜色的方式。
  3. RGB代码,如红色可以表示为rgb(255,0,0)或rgb(100%,0%,0%)。
    需要注意的是: 如果使用RGB代码的百分比颜色值,取值为0时也不能省略百分号,必须写为0%

line-height:行间距

line-height属性用于设置行间距,就是行与行之间的距离,即字符的垂直间距,一般称为行高。line-height常用的属性值单位有三种,分别为像素px,相对值em和百分比%,实际工作中使用最多的是像素px。

一般情况下,行距比字号大7、8像素左右就可以了。

text-align:水平对齐方式

text-align属性用于设置文本内容的水平对齐,相当于html中的align对齐属性。其可用属性值如下:
left:左对齐(默认值)
right:右对齐
center:居中对齐

text-indent:首行缩进

text-indent 属性用于设置首行文本的缩进,其属性值可为不同单位的数值、em 字符宽度的倍数、或相对于浏览器窗口宽度的百分比%,允许使用负值, 建议使用em作为设置单位

1em 就是一个字的宽度 如果是汉字的段落,1em 就是一个汉字的宽度,固定写法:{ text-indent: 2em }

letter-spacing:字间距

letter-spacing 属性用于定义字间距,所谓字间距就是字符与字符之间的空白。其属性值可为不同单位的数值,允许使用负值,默认为normal。

word-spacing:单词间距

word-spacing 属性用于定义英文单词之间的间距,对中文字符无效。和letter-spacing一样,其属性值可为不同单位的数值,允许使用负值,默认为normal。

letter-spacing定义的为字母之间的间距
word-spacing定义的为英文单词之间的间距,中文无效。

text-decoration:文本的装饰

通常我们用于给链接修改装饰效果

描述
none 默认。定义标准的文本。
underline 定义文本下的一条线。下划线 也是我们链接自带的
overline 定义文本上的一条线。
line-through 定义穿过文本下的一条线。

使用技巧:在一行内的盒子内,我们设定行高等于盒子的高度,就可以使文字垂直居中。

颜色半透明(css3)

文字颜色到了CSS3我们可以采取半透明的格式了语法格式如下:

color: rgba(r,g,b,a) a 取值范围 0~1之间
eg:color: rgba(0,0,0,0.3)

文字阴影(CSS3)

以后我们可以给我们的文字添加阴影效果了 Shadow 影子

text-shadow: 水平 / 垂直 / 模糊距离(模糊宽度) / 阴影颜色;

文字阴影参数

CSS 背景(background)

CSS 可以添加背景颜色和背景图片,以及来进行图片设置。

background-color 背景颜色
background-image 背景图片地址
background-repeat 是否平铺
background-position 背景位置
background-attachment 背景固定还是滚动
背景的合写(复合属性)
background: 颜色 / 图片地址 / 平铺 / 滚动 / 位置

背景图片(image)

语法:background-image : none | url (url)

none :  无背景图(默认的)
url :  使用绝对或相对地址指定背景图像

background-image 属性允许指定一个图片展示在背景中(只有CSS3才可以多背景)可以和 background-color 连用。 如果图片不重复地话,图片覆盖不到地地方都会被背景色填充。 如果有背景图片平铺,则会覆盖背景颜色。

提倡: 背景图片后面的地址url不要加引号:
background-image: url(images/li.jpg)

背景平铺(repeat)

语法: background-repeat : repeat | no-repeat | repeat-x | repeat-y

repeat :  背景图像在纵向和横向上平铺(默认的)
no-repeat :  背景图像不平铺
repeat-x :  背景图像在横向上平铺
repeat-y :  背景图像在纵向平
设置背景图片时,默认把图片在水平和垂直方向平铺以铺满整个元素
repeat-x :  背景图像在横向上平铺
repeat-y :  背景图像在纵向平铺

背景位置(position)

语法:
background-position : length || length
background-position : position || position
混搭:
background-position : length || position
background-position : position || length

length :  百分数 | 由浮点数字和单位标识符组的长度值。
position :  top | center | bottom | left | center | right

说明:
设置或检索对象的背景图像位置。必须先指定background-image属性。默认值为:(0% 0%)。如果只指定了一个值,该值将用于横坐标。纵坐标将默认为50%

  1. position 后面是x坐标y坐标。 可以使用方位名词或者精确单位。
  2. 如果和精确单位和方位名字混合使用,则必须是x坐标在前,y坐标后面。比如 background-position: 15px top; 则 15px一定是x坐标 top是y坐标。
  3. 只有都是方位的时候可以部分x/y的先后(尽量统一都是先x后y
background-color: pink;
background-image: url(images/l.jpg);
background-repeat: no-repeat;
/* 1.利用方位名词 top bottom 来更改背景图片位置 */
/*background-position: left top;   默认的是 左上角 */
/*background-position: bottom right ;   方位名词没有顺序,谁在前都可以 */
/* background-position: center center ;  */ 
/* background-position: left;   如果方位名词只写一个,另外一个默认为center */
/*  background-position: 10px 30px; 
 2. 精切单位 第一值一定是x坐标 第二个值一定是y坐标 */
 /* 3. 混搭 */
background-position: center 10px ;
/* center 10px  水平居中的 垂直是 10px 
10px center   水平10px  垂直是 居中 */

实际工作用的最多的,就是背景图片居中对齐了。

背景附着

语法:background-attachment : scroll | fixed

scroll :  背景图像是随对象内容滚动
fixed :  背景图像固定

说明: 设置或检索背景图像是随对象内容滚动还是固定的。

背景简写

background 属性的值的书写顺序官方并没有强制标准的。为了可读性,建议如下写:background:背景颜色 背景图片地址 背景平铺 背景滚动 背景位置

background: transparent url(image.jpg) repeat-y  scroll 50% 0 ;

背景透明(CSS3)

CSS3支持背景半透明的写法语法格式是:

background: rgba(0,0,0,0.3);   /* a: 取值范围 0~1之间 */

注意: 背景半透明是指盒子背景半透明, 盒子里面的内容不受影响

背景缩放(CSS3)

通过background-size设置背景图片的尺寸,就像我们设置img的尺寸一样,在移动Web开发中做屏幕适配应用非常广泛。

其参数设置如下:

  1. 可以设置长度单位(px)或百分比(设置百分比时,参照盒子的宽高)
  2. 设置为cover时,会自动等比调整缩放比例,保证图片始终填充满背景区域,如有溢出部分则会被隐藏。我们平时用的cover最多
  3. 设置为contain会自动等比调整缩放比例,保证图片始终完整显示在背景区域。

cover保证背景全部被占,图片会超出隐藏,contain保证图片完整,背景可能有空白。

div {
    width: 400px;
    height: 500px;
    background: hotpink url(images/l.jpg) no-repeat;
    /* 我们插入的图片 img  直接通过 width  和height 设置就可 */
    /* 背景图片设置大小 background-size  */
    /*background-size: 100px;   我们尽量只改一个值,防止缩放失真扭曲 */
    /*background-size: 50%;   把背景图片缩放为原来的一半大小 */

    /* background-size: cover; */ 
    /* 会自动等比调整缩放比例,保证图片始终填充满背景区域,如有溢出部分则会被隐藏
      图片进行等比例缩放 图片一定要保证宽度和高度同时满足盒子的大小 势必会有部分超出去,就看不见了  我们平时用的cover 最多
     */
     background-size: contain;
     /* 会自动等比调整缩放比例,保证图片始终完整显示在背景区域。
    图片进行等比例缩放 如果图片的高度或者 宽度 有一个和盒子一样大了,就不在缩放
    这样的好处就是保证了图片的完整。 不会有缺失的一部分, 但是会有部分裸露
      */
}
background-image: url('images/gyt.jpg');
            background-size: 300px 100px;
            /* background-size: contain; */
            /* background-size: cover; */

多背景(CSS3)

以逗号分隔可以设置多背景,可用于自适应布局 做法就是 用逗号隔开就好了。

  • 一个元素可以设置多重背景图像。
  • 每组属性间使用,分隔。
  • 如果设置的多重背景图之间存在着交集(即存在着重叠关系),前面的背景图会覆盖在后面的背景图之上。
  • 为了避免背景色将图像盖住,背景色通常都定义在最后一组上
background:url(test1.jpg) no-repeat scroll 10px 20px/50px 60px  ,
       url(test1.jpg) no-repeat scroll 10px 20px/70px 90px ,
       url(test1.jpg) no-repeat scroll 10px 20px/110px 130px c #aaa;

凹凸文字

<head>
        <meta charset="utf-8">
        <style>
        body {
            background-color: #ccc;
        }
        div {
            color: #ccc;
            font: 700 80px "微软雅黑";
        }
        div:first-child {
            /* text-shadow: 水平位置  垂直位置  模糊距离 阴影颜色; */
            text-shadow: 1px 1px 1px #000, -1px -1px 1px #fff;
        }
        div:last-child {
            /* text-shadow: 水平位置  垂直位置  模糊距离 阴影颜色; */
            text-shadow: -1px -1px 1px #000, 1px 1px 1px #fff;
        }
        </style>
    </head>
    <body>
    <div>我是凸起的文字</div>
    <div>我是凹下的文字</div>
    </body>

背景渐变

在线性渐变过程中,颜色沿着一条直线过渡:从左侧到右侧、从右侧到左侧、从顶部到底部、从底部到顶部或着沿任何任意轴。
兼容性问题很严重,这里只谈线性渐变
语法格式:

background:-webkit-linear-gradient; (渐变的起始位置, 起始颜色, 结束颜色);
background:-webkit-linear-gradient; (渐变的起始位置, 颜色 位置, 颜色位置....);
<div></div>
<section></section>
div {
    width: 300px;
    height: 50px;
    /* background: linear-gradient(渐变的起始位置, 起始颜色, 结束颜色); */
    background: linear-gradient(top, red, green);
    background: -webkit-linear-gradient(top, red, green);
    background: -moz-linear-gradient(top, red, green);
    /* 因为背景渐变 兼容性问题很严重, 必须在前面添加浏览器的私有前缀 */
    margin: 200px auto;
}
section {
    width: 400px;
    height: 100px;
    margin: 0 auto;
     /* background:-webkit-linear-gradient(渐变的起始位置, 颜色 位置, 颜色位置....); */
    background: -webkit-linear-gradient(top, red 0%, green 20%, blue 80%);
    background: -moz-linear-gradient(left, red 0%, green 50%, skyblue 80%,  hotpink 100%)
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容