1. CSS基础
概念:Cascading Style Sheets(层叠样式表)。功能强大,可以将内容展示和样式控制分离。
层叠:多个样式可以作用在用一个html的元素上,同时生效
1.1 CSS的使用:CSS与HTML结合方式
- 内联样式:在标签内使用
style
属性指定css代码,例<div style="color:red;">this is css style</div>
- 内部样式:在head标签内,定义style标签,style标签体内容就是css代码
<style> div{ color:blue; } </style> <div> this is inner style </div>
- 外部样式:定义css资源文件,在head标签内,定义link标签,引入外部的资源文件。
1. 新建一个a.css的文件,内容如下
div{
color:red;
}
2. head标签内使用link标签引入
<head>
<link rel="stylesheet" href="css/a.css">
</head>
<div>
this is outer style
</div>
2. CSS语法
格式如下:
选择器{
属性名1:属性值1;
属性名2:属性值2;
....
}
- 选择器:筛选具有相似特征的元素
Notice:每一对属性需要使用;分隔开,最后一对属性可以不加;
3. 选择器
分类有:基础选择器和扩展选择器
3.1 基础选择器
3.1.1 ID选择器
选择具体的id属性值的元素,建议在一个html页面中id值唯一
- 语法:
#id属性值{css}
3.1.2 元素选择器
选择具有相同标签名称的元素
语法:
标签名称{css}
注意:id选择器优先级高于元素选择器
3.1.3 类选择器
选择具有相同的class属性值的元素
- 语法:
.class属性值{css}
- 注意:类选择器优先级高于元素选择器
3.2 扩展选择器
3.2.1 选择所有元素
- 语法:
*{}
3.2.2 并集选择器
- 语法:
选择器1,选择器2{}
3.2.3 子选择器
筛选选择器1元素下的选择器2元素
- 语法:
选择器1 选择器2{}
3.2.4 父选择器
筛选选择器2的父元素选择器1
- 语法:
选择器1>选择器2{}
3.2.5 属性选择器
选择元素名称,属性名=属性值的元素
- 语法:
元素名称[属性名=“属性值”]{}
3.2.6 伪类选择器
选择一些元素具体的状态
- 语法:
元素:状态{}
- 例:
<a></a>标签
状态有:
1. link:初始化的状态
2. visited:被访问过的状态
3. active:正在访问状态
4. hover:鼠标悬浮状态
4. 属性
4.1 字体、文本
font-size
:字体大小color
:文本颜色text-align
:对齐方式line-heigh
t:行高
4.2背景
background
4.3 边框
border
:设置边框,符合属性
4.4 尺寸
width
:宽度height
:高度
4.5 盒子模型
主要用于控制布局
margin
:外边距padding
:内边距- 默认情况下内边距会影响整个盒子的大小
box-sizing: border-box;
,设置盒子的属性,让width
和height
就是最终盒子的大小
float
:浮动float: left;
左浮动float: right;
右浮动
5. 综合案例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>注册页面</title>
<style>
*{
margin: 0px; /*外边距*/
padding: 0px;/*内边距*/
box-sizing: border-box;
}
body{
background: url("img/register_bg.png") no-repeat center;/*背景图居中*/
}
.rg_foreign{
width: 900px;
height: 500px;
border: 8px solid #EEEEEE;/*边框颜色*/
background-color: white;/*背景色白色*/
/*div水平居中*/
margin: auto;
margin-top: 15px; /*外上边距*/
}
.rg_left{
float: left;
margin: 15px;
}
.rg_left > p:first-child{
color: #FFD026;
font-size: 22px;
}
.rg_left > p:last-child{
color: #A6A6A6;
font-size: 22px;
}
.rg_center{
float: left;
width: 450px;
}
.rg_right{
float: right;
margin: 15px;
}
.rg_right p{
font-size: 15px;
}
.rg_right p a{
color: pink;
}
.td_left{
width: 100px;
text-align: right;
height: 45px;
}
.td_right{
padding-left: 35px;
}
#uname,#password,#email,#name,#tel,#birthday,#checked{
width: 250px;
height: 32px;
border: 1px solid #A6A6A6;
/*设置边框圆角*/
border-radius: 5px;
padding-left: 10px;
}
#checked{
width: 110px;
}
#img_check{
height: 32px;
vertical-align: middle; /*设置垂直居中*/
}
#btn_submit{
width: 150px;
height: 40px;
background-color: #FFD026;
border: 1px solid #FFD026;
}
</style>
</head>
<body>
<div class="rg_foreign">
<div class="rg_left">
<p>新用户注册</p>
<p>USER REGISTER</p>
</div>
<div class="rg_center">
<div class="rg_form">
<form action="./login.html" method="post">
<table>
<tr>
<td class="td_left"><label for="uname">用户名</label></td>
<td class="td_right"><input type="text" name="uname" id="uname" placeholder="请输入用户名"></td>
</tr>
<tr>
<td class="td_left"><label for="password">密码</label></td>
<td class="td_right"><input type="password" name="password" id="password" placeholder="请输入密码"></td>
</tr>
<tr>
<td class="td_left"><label for="email">Email</label></td>
<td class="td_right"><input type="email" name="email" id="email" placeholder="请输入邮箱"></td>
</tr>
<tr>
<td class="td_left"><label for="name">姓名</label></td>
<td class="td_right"><input type="text" name="name" id="name" placeholder="请输入真实姓名"></td>
</tr>
<tr>
<td class="td_left"><label for="tel">手机号</label></td>
<td class="td_right"><input type="text" name="tel" id="tel" placeholder="请输入手机号"></td>
</tr>
<tr>
<td class="td_left">性别</td>
<td class="td_right">
<input type="radio" name="gender" value="male" checked>男
<input type="radio" name="gender" value="female">女
</td>
</tr>
<tr>
<td class="td_left"><label for="birthday">出生日期</label></td>
<td class="td_right"><input type="date" name="birthday" id="birthday"></td>
</tr>
<tr>
<td class="td_left"><label for="checked">验证码</label></td>
<td class="td_right">
<input type="text" name="checked" id="checked" placeholder="请输入验证码">
<img src="img/verify_code.jpg" alt="" id="img_check">
</td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" id="btn_submit" value="注册"></td>
</tr>
</table>
</form>
</div>
</div>
<div class="rg_right">
<p>已有账号? <a href="#">立即登录</a></p>
</div>
</div>
</body>
</html>