常见样式的颜色属性:
颜色属性值设置方式:
参阅 CSS 颜色值 查看完整的颜色值
边框:定义元素的边框
常用属性:
border-style:定义边框的样式
属性值:
border-style 属性可以有 1-4 个值:
4 个值:上 下 左 右
示例:border-style:dotted solid double dashed;
上边框是 dotted,右边框是 solid,底边框是 double,左边框是 dashed
3 个值: 上 左右 下
示例:border-style:dotted solid double;
上边框是 dotted,左、右边框是 solid,底边框是 double
2 个值:上下 左右
示例:border-style:dotted solid;
上、底边框是 dotted,右、左边框是 solid
1 个值:上下左右
示例:border-style:dotted;
四面边框是 dotted
border-color:定义边框的颜色。属性值详见颜色属性
注意: border-color 单独使用是不起作用的,必须得先使用 border-style 来设置边框样式
border-width:定义边框的宽度
为边框指定宽度的方式:
**注意:**CSS 没有定义 3 个关键字的具体宽度,所以一个用户可能把 thick 、medium 和 thin 分别设置为等于 5px、3px 和 2px,而另一个用户则分别设置为 3px、2px 和 1px。
border:同时设置元素的 4 个边框(上下左右)的颜色,尺寸(像素),格式。不区分先后顺序
单独设置各边
border-radius:设置四个角(左上,右上,右下,左下)边框从多少像素开始圆滑
border-collapse:设置表格的边框是否被折叠成一个单一的边框或隔开。一般设置一个值全部应用
尺寸:设置元素的高度和宽度
width:设置元素的宽度,单位可以是像素(px)、百分比(%)或其他可用单位
像素(px):固定值
注:
百分比(%):相对于父元素的大小。这种方式可以实现响应式布局。
自适应长度:使用 auto 属性值来让元素自适应父元素的大小
比如将图片的 width 属性设置为 80%,然后 height 属性将其高度设置为 auto,让其自适应父元素的大小,这样可以保持图片的宽高比例,并且不会出现变形。
em:相对于元素的字体大小来计算
1em = 1font-size
em 会根据字体大小的改变而改变
rem:相对于根元素 的字体大小来计算
height:设置元素的高度,单位可以是像素(px)、百分比(%)或其他可用单位
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>边框和尺寸title>
<style>
div{
/*给div添加边框*/
border: 1px red solid;
border-bottom: 10px green double;
border-left: 5px ridge;
/*给div设置尺寸*/
width: 300px;
height: 100px;
}
span{
/*给span标签添加边框*/
border: red solid 2px;
/*给span添加边框圆角*/
border-radius: 50px;
}
style>
head>
<body>
<div>我是一个divdiv>
<span>我是一个spanspan>
body>
html>
display:可以把行间元素和行内元素相互转换,还可以隐藏元素
行间元素:占用 html 中的一行
例如:h1-h6,ul,ol,div …
行内元素:占用一行中的一部分
例如:span,img,a …
display 的属性值:
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>转换属性title>
<style>
div{
border: 1px solid red;
}
span{
border: 1px solid green;
}
style>
head>
<body>
<div>我是一个div,我会占用一行div>
<div style="display: inline">我是一个div,我只占用一行的一部分div>
<span>我是一个span,我只占用一行的一部分span>
<span style="display: block">我是一个span,我会占用一行span>
<span style="display: none">我是隐藏起来的标签,你看不到我span>
<img style="display: none" src="img/2.jpg" height="100px" width="80px">
body>
html>
color:设置字体颜色。属性值详见颜色属性
text-align:文本的对齐方式
属性值:
text-indent:指定文本的第一行的缩进,单位为像素 px
text-align:对齐元素中的文本
text-shadow:设置文本阴影
text-decoreation:设置或删除文本的装饰。主要是用来删除链接的下划线
text-transform:文本转换。指定在一个文本中的字母变成大写或小写字母,或每个单词的首字母大写
line-height:设置行高
letter-spacing:设置字符间距
word-spacing:设置字间距
vertical-align:设置元素的垂直对齐
white-space:设置元素中空白的处理方式
unicode-bidi:设置或返回文本是否被重写
direction:设置文本方向
案例:
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>字体属性title>
head>
<body>
<a href="http://www.itheima.com" target="_blank" style="color: red">我是红色的超链接a><br/>
<a href="http://www.itheima.com" target="_blank" style="text-decoration: none">我是没有下划线的超链接a>
body>
html>
font-family:设置文本的字体系列(幼圆,宋体,楷体)
注意:
font-family 属性应该设置几个字体名称作为一种"后备"机制,如果浏览器不支持第一种字体,则将尝试下一种字体
多个字体系列是用一个逗号分隔指明
如果字体系列的名称超过一个字,它必须用引号,如 Font Family:“宋体”
font-size:设置字体大小
能否管理文字的大小,在网页设计中是非常重要的。但是,不能通过调整字体大小使段落看上去像标题,或者使标题看上去像段落。务必使用正确的 HTML 标签,就 - 表示标题和 表示段落
如果不指定一个字体的大小,默认大小和普通文本段落一样,是 16 像素(16px=1em)
字体大小的值可以设置为绝对或相对的大小:
绝对大小:
相对大小:
相对于周围的元素来设置大小,单位为 em
1em的默认大小是16px
允许用户在浏览器中改变文字大小
使用百分比和 em 组合可以在所有浏览器中显示相同的文本大小,并允许所有浏览器缩放文本的大小:
设置 元素的默认字体大小的是百分比
示例:
body {font-size:100%;}
h1 {font-size:2.5em;}
h2 {font-size:1.875em;}
p {font-size:0.875em;}
font-weight:设置字体加粗,取值:bold
font-style:指定斜体文字的字体样式属性
normal:正常显示文本
italic:使用默认的斜体设置
注:并不是所有字体都有默认的斜体设置,一些不常用的字体,或许就只有个正常体,如果用 italic,则没有效果
oblique:强制使用斜体,让没有默认斜体属性的文字倾斜,且可以指定斜体的角度
"font-style: oblique 5deg;">This is a sentence.
"font-style: oblique 10deg;">This is a sentence.
案例:
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>字体属性title>
head>
<body>
<a href="http://www.itheima.com" target="_blank" style="font-size: 50px">我是50px大小的超链接a><br/>
<a href="http://www.itheima.com" target="_blank" style="font-weight: bold">我是粗体的超链接a><br/>
<a href="http://www.itheima.com" target="_blank" style="font-style: italic">我是斜体的超链接a><br/>
<a href="http://www.itheima.com" target="_blank" style="font-style: italic;font-weight: bold;color: green">我是粗体斜体绿色的超链接a><br/>
<a href="http://www.itheima.com" target="_blank" style="font-family: 楷体">我是楷体的超链接a><br/>
body>
html>
案例:
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>背景色和背景图片title>
head>
<body style="background-image: url(img/bg.jpg);background-repeat:no-repeat;background-position: top 30px right 100px">
<div style="border: 1px red solid;background-color: pink;width: 300px; height: 500px">我是一个divdiv>
<input type="submit" value="用户注册" style="background-color: gold;color: white">
body>
html>
在支持 CSS 的浏览器中,链接的不同状态都可以不同的方式显示。链接的样式,可以用任何 CSS 属性(如颜色,字体,背景等)。
四个链接状态:
注意:当设置为若干链路状态的样式时,也有一些顺序规则:
案例:
"http:\\www.itcast.cn" target="_blank">点击我到传智
filters 是 CSS3 里新增的一种功能,可以为元素指定各种滤镜效果,例如模糊效果、透明效果、色彩反差调整等等;同时,CSS 滤镜不仅可以对图片进行滤镜处理,还可以对网页元素甚至视频进行滤镜处理。
filter 的基础使用非常简单,CSS 标准里包含了一些已实现预定义效果的函数,可以通过指定这些函数的值来实现想要的效果
常用filter函数:
| 滤镜效果 | 函数 | 补充 |
|---|---|---|
| 无 | none | 默认值,表示没有效果 |
| 模糊 | blur(px) | 为图像设置高斯模糊,默认值为 0,单位为像素,值较大越模糊 |
| 调整亮度 | brightness(number) | number 越大图像越亮,number 不能取负值,可以是整数也可以是百分比 |
| 调整灰度 | grayscale(%) | 将图像转换为灰度图像,默认值为 0%,表示原始图像; 100% 表示将图像完全变成灰度图像(即黑白图像),不允许为负值 |
| 调整对比度 | contrast(%) | 默认值为 100%,代表原始图像;0% 将使图像完全变黑; 当值超过 100% 时图像将获得更高的对比度 |
| 阴影 | drop-shadow(h-shadow v-shadow blur spread color) | 为图像添加阴影效果,参数说明如下: h-shadow:必填值,指定水平方向阴影的像素值,若值为负,则阴影会出现在图像的左侧; v-shadow:必填值,指定垂直方向阴影的像素值,若值为负,则阴影会出现在图像的上方; blur:可选值,为阴影添加模糊效果,默认值为 0,单位为像素,值越大创建的模糊就越多(阴影会变得更大更亮),不允许使用负值; spread:可选值,默认值为 0,单位为像素。若值为正,则阴影将会扩展并增大;若值为负,则阴影会缩小; color:可选值,为阴影添加颜色,如未指定,则由浏览器来绝对,通常为黑色。 注意:Chrome、Safari 和 Opera 等浏览器不支持第 4 个参数,如果添加,则不会有任何效果 |
| 反转图像 | invert(%) | 默认值为 0%,表示原始图像;100% 则表示完全反转,不允许使用负值 |
| 不透明度 | opacity(%) | 默认值为 100%,表示原始图像;0% 表示完全透明,不允许使用负值 |
| 图像转为棕褐色 | sepia(%) | 默认值为 0%,表示原始图像;100% 表示图像完全变成棕褐色,不允许使用负值 |
| 调整饱和度 | saturate(%) | 默认值为 100%,表示原始图像;0% 表示图像完全不饱和,不允许使用负值 |
| 图像色相旋转 | hue-rotate(deg) | 该值用来定义色环的度数,默认值为 0 deg,代表原始图像,最大值为 360deg |
CSS 的盒子模型:可以把 html 中的任意元素,都可以看成是被一个盒子包裹起来
盒子的外边距:设置这个盒子到其他盒子之间的距离,或者设置盒子到 body 框的距离
使用 css 的属性(margin)设置外边距:
盒子的内边距:设置盒子边框到盒子中内容的距离
使用 css 的属性(padding)设置内边距(填充):
总元素的宽度 = 宽度 + 左填充 + 右填充 + 左边框 + 右边框 + 左边距 + 右边距
总元素的高度 = 高度 + 顶部填充 + 底部填充 + 上边框 + 下边框 + 上边距 + 下边距

案例:
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>CSS的盒子模型title>
<style>
div{
/*设置div的边框和尺寸*/
border: 1px solid red;
width: 300px;
height: 200px;
/*设置div的外边距*/
margin: 50px; /*同时设置4个外边距为50px*/
margin-left: 100px; /*设置左外边距100px*/
margin: 50px 100px; /*上下50px 左右100px*/
margin: 50px 100px 150px; /*顺时针上50px 右100px 下150px 左100px*/
margin: 50px 100px 150px 200px; /*顺时针上50px 右100px 下150px 左200px*/
margin: 50px auto; /*上下50px 左右auto会自动居中*/
/*设置div的内边距*/
padding: 50px; /*同时设置4个内边距为50px*/
}
style>
head>
<body>
<div>我是一个divdiv>
body>
html>


DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>注册页面案例title>
<style>
/*设置外部div的样式*/
.bigDiv{
height: 500px;/*高度*/
width: 800px;/*宽度*/
border: 10px gray ridge;/*边框*/
margin: 50px auto;/*外边距*/
background-color: white;/*背景色*/
}
/*设置内部div的样式*/
.regDiv{
height: 500px;/*高度*/
width: 400px;/*宽度*/
margin: 0px auto;/*外边距*/
font-family: "楷体";/*字体*/
color: gray;/*字体颜色*/
/*border: 1px red solid;*/
}
/*设置所有tr的高度*/
tr{
height: 50px;
}
/*7.设置input标签的样式(高度,宽度,边框,边框圆角,颜色)*/
input[type="text"],
input[type="password"],
input[type="date"],
input[type="email"]{
border: 1px solid gray;/*边框*/
width: 180px;/*宽度*/
height: 30px;/*高度*/
border-radius: 15px;/*边框圆角*/
}
/*8.设置验证码input标签的宽度*/
input[name="checkCode"]{
width: 60px;
}
/*9.设置用户注册案例的样式(边框,背景色,字体颜色,居中,尺寸)*/
input[type="submit"]{
width: 100px;/*宽度*/
height: 30px;/*高度*/
background-color: gold;/*背景色*/
color: white;/*字体颜色*/
border: 1px solid gold;/*边框*/
border-radius: 5px;/*边框圆角*/
}
style>
head>
<body style="background-color: beige">
<div class="bigDiv">
<div class="regDiv">
<form action="#" method="get">
<table>
<tr>
<td>用户名td>
<td>
<input type="text" name="username" placeholder="请输入用户名"/>
td>
tr>
<tr>
<td>密码td>
<td>
<input type="password" name="password" placeholder="请输入密码"/>
td>
tr>
<tr>
<td>邮箱td>
<td>
<input type="email" placeholder="请输入邮箱"/>
td>
tr>
<tr>
<td>姓名td>
<td>
<input type="text" name="name" placeholder="请输入姓名"/>
td>
tr>
<tr>
<td>手机号td>
<td>
<input type="text" name="phone" placeholder="请输入手机号"/>
td>
tr>
<tr>
<td>性别td>
<td>
<input type="radio" name="sex" checked="checked"/>男
<input type="radio" name="sex" />女
td>
tr>
<tr>
<td>生日td>
<td>
<input type="date" name="birthday"/>
td>
tr>
<tr>
<td>验证码td>
<td>
<input type="text" name="checkCode" placeholder="验证码"/>
<img src="img/checkCode.bmp">
td>
tr>
<tr>
<td colspan="2" align="center">
<input type="submit" value="用户注册"/>
td>
tr>
table>
form>
div>
div>
body>
html>