HTML和CSS

一、输入标签和表单标签

1.输入标签 

<input>标签:

其功能是主要是完成网页上的一些输入功能

其中输入样式的设置是依靠type属性来完成

type属性的常用属性值

1.text,文本框,可以用作用户账号输入

2.password,密码框

3.radio,单选框,如果需要让单选框应有互斥效果,就需要给多个单选框添加name属性,属性值设置为相同,还可以通过checked属性设置某个选项被默认选中

4.checkbox,复选框,复选框没有互斥效果,就算添加了name属性也不会产生互斥效果

5.file,文本框

...

textarea标签:

如果需要进行大量文字的输入,那么最好不要采用type属性中的文本框,而是要使用文本域标签textarea

select标签:

实现下拉框要使用下拉框标签(select标签),其中通过option标签添加下拉框内容,在option标签中使用selected属性设置某个现象被默认选中,在select标签中通过multiple属性可以实现多个下拉框选项同时出现

练习代码如下:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<!--文本框-->
		账号<input type="text" /> <br />
		<!--密码框-->
		密码<input type="password" /> <br />
		<!--
			单选框 radio
			如果需要让多个单选框有互斥效果,就需要给多个单选框添加name属性,且name属性的值相等
			可以通过checked属性控制某个选项被默认选中
		-->
		性别
		<input type="radio" name="sex" checked="checked"/>男 
		<input type="radio" name="sex"/>女 <br />
		
		<!--
			复选框 checkbox 没有互斥效果
			就算添加了name属性也不会产生互斥效果
		-->
		爱好
		<input type="checkbox" name="hobby"/>足球
		<input type="checkbox" name="hobby"/>篮球
		<input type="checkbox" name="hobby"/>羽毛球
		<input type="checkbox" name="hobby"/>乒乓球
		<br />
		
		<!--文件框-->
		请选择照片
		<input type="file" /> <br />
		
		<!--文本域-->
		个人简介
		<textarea style="width: 200px;height: 200px;">请介绍一下你自己</textarea> <br />
		
		<!--
			下拉框 select option
			select标签会默认显示第一个option标签内容
			multiple属性:显示多个下拉框内容
			selected属性:设置一个标签为默认选中的内容
		-->
		籍贯
		<select multiple="multiple">
			<option selected>-请选择省份-</option>
			<option>河南</option>
			<option>河北</option>
			<option>山东</option>
			<option>北京</option>
			<option>上海</option>
		</select>
	</body>
</html>

效果如下:

 2.输入标签练习

 输入标签可以和表格标签联合使用,使得页面更加美观

代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<table width="30%" align="center" border="1px" cellspacing="0px">
			<tr>
				<td>账号</td>
				<td>
					<input type="text" />
				</td>
			</tr>
			<tr>
				<td>密码</td>
				<td>
					<input type="password" />
				</td>
			</tr>
			<tr>
				<td>性别</td>
				<td>
					<input type="radio" name="sex" checked/>男
					<input type="radio" name="sex"/>女
				</td>
			</tr>
			<tr>
				<td>爱好</td>
				<td>
					<input type="checkbox" />足球
					<input type="checkbox" />篮球
					<input type="checkbox" />乒乓球
					<input type="checkbox" />羽毛球
				</td>
			</tr>
			<tr>
				<td>请选择照片</td>
				<td>
					<input type="file" />
				</td>
			</tr>
			<tr>
				<td>个人简介</td>
				<td>
					<textarea style="width: 200px;height: 200px;">请介绍一下你自己</textarea>
				</td>
			</tr>
			<tr>
				<td>籍贯</td>
				<td>
					<select>
						<option>-请选择省份</option>
						<option>北京</option>
						<option>上海</option>
						<option>南京</option>
						<option>广州</option>
						<option>深圳</option>
					</select>
				</td>
			</tr>
		</table>
	</body>
</html>

效果:

 3.表单标签

 表单标签是与用户交互并提交数据的标签,可以将网页上输入的数据提交至服务器,主要通过form表单标签完成。

form标签的使用方法:

1.使用form标签包裹数据提交的范围

2.通过action属性确定数据要提交的地址

3.通过method属性确定提交的方式

①get方式

1.数据通过地址栏传递,因为地址栏有长度限制,所以传递的数据有限

 2.地址栏只能放文字,所以get方式只能提交文本类型的数据,不能上传文件

3.数据显示在地址栏上,数据相对不安全

在此阶段,get标签更容易看到数据提交情况,所以练习时可以以采用get方式提交

②post方式提交

1.数据不通过地址栏,单独打包成数据包发送,数据包大小一般认为没有限制,所以传输的数据量大

2.数据包可以放文字,也可以放文件,可以上传文件

3.数据不显示在地址栏上,所以数据相对于get方式更安全

4.准备一个提交按钮

不能是button button只是一个简单的按钮,不具备提交功能

应该用submit submit具备提交数据的功能

submit必须在from表单内部,标志提交的是当前所在表单

5.给多需要提交数据的输入框添加name和value属性

name属性是给数据起名字的,为了让后台区分不同数据的含义

value属性用于定义提交的数据,表示提交数据的内容,有些输入框,比如文本框,就可以不需要value属性,因为输入的文本就是value内的内容

 6.可以设置一个清空按钮 使用reset

注意:不是所有拥有name和value属性的标签都可以提交,能提交的只有输入框

练习代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<!--
			1.使用form标签包裹数据提交的范围
			2.通过action属性确定数据要提交的地址
			3.通过method属性确定提交的方式
				get方式
					1.数据通过地址栏传递,因为地址栏有长度限制,所以传递的数据有限
					2.地址栏只能放文字,所以get方式只能提交文本类型的数据,不能上传文件
					3.数据显示在地址栏上,数据相对不安全
				post方式提交
					1.数据不通过地址栏,单独打包成数据包发送,数据包大小一般认为没有限制,所以传输的数据量大
					2.数据包可以放文字,也可以放文件,可以上传文件
					3.数据不显示在地址栏上,所以数据相对于get方式更安全
			4.准备一个提交按钮
				不能是button button只是一个简单的按钮,不具备提交功能
				应该用submit submit具备提交数据的功能
				submit必须在from表单内部,标志提交的是当前所在表单
			5.给多需要提交数据的输入框添加name和value属性
				name属性是给数据起名字的,为了让后台区分不同数据的含义
				value属性用于定义提交的数据,表示提交数据的内容,有些输入框,比如文本框,就可以不需要value属性,因为输入的文本就是value内的内容
			6.可以设置一个清空按钮 使用reset
			注意:不是所有拥有name和value属性的标签都可以提交,能提交的只有输入框
		-->
		<form action="https://www.baidu.com/" method="get">
			账号<input type="text" name="username"/> <br />
			密码<input type="password" name="psd"/> <br />
			性别
			<input type="radio" name="sex" value="man" checked="checked"/>男 
			<input type="radio" value="falman" name="sex"/>女 <br />
			爱好
			<input type="checkbox" name="hobby" value="1"/>足球
			<input type="checkbox" name="hobby" value="2"/>篮球
			<input type="checkbox" name="hobby" value="3"/>羽毛球
			<input type="checkbox" name="hobby" value="4"/>乒乓球
			<br />
			请选择照片
			<input type="file" /> <br />
			个人简介
			<textarea name="self" style="width: 200px;height: 200px;">请介绍一下你自己</textarea> <br />
			籍贯
			<select name="where">
				<option value="0" selected>-请选择省份-</option>
				<option value="1">河南</option>
				<option value="2">河北</option>
				<option value="3">山东</option>
				<option value="4">北京</option>
				<option value="5">上海</option>
			</select>
			<br />
			<input type="submit" value="提交"/>
			<input type="reset" value="清空"/>
		</form>
	</body>
</html>

效果:

地址栏上显示的数据 :

 二、框架标签

框架标签的作用是:将多个不同页面组织后显示在同一个页面上

1.iframe标签

作用:可以在当前网页上引入其他网页

src属性:引入网页地址,也可以是本地地址

iframe标签可以和a标签一起使用

1.先给iframe标签添加name属性

2.给a标签添加target属性,属性值为已设置的iframe标签的name值,就可以将超链接打开方式设置为iframe页面

代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<!--
			框架标签的作用:将多个不同的页面组织显示在同一个页面上
			
			iframe标签:可以在当前网页上引入其他的网页
			src属性:引入网页地址,可以是本地地址
			
			iframe标签可以和a标签一起使用
				1.先给iframe标签添加name属性
				2.给a标签添加target属性,属性值为已设置的iframe标签的name值,就可以将超链接打开方式设置为iframe页面
		-->
		<iframe src="https://www.baidu.com" width="40%" height="400px"></iframe>
		<iframe src="01输入标签.html" width="40%" height="400px" name="myifr"></iframe>
		<br />
		<a href="http://www.jd.com" target="myifr">京东</a>
		<a href="http://www.taobao.com" target="newifr">淘宝</a>
		<iframe width="40%" height="400px" name="newifr"></iframe>
	</body>
</html>

效果:

 2.frameset标签和frame标签

frameset标签是将多个网页在同一个网页上进行区域划分的标签,其中每个frame标签都是一个区域

需要注意的是,使用frameset标签时不可以有bady标签

1.frameset标签设置上下结构:

rows属性表示上下结构,其中的属性值为每个网页部分所占页面的大小,*表示除去具体大小部分之外的所有部分都属于*

border属性表示各部分之间交汇线的粗细

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	
	<!--
		frameset标签是将多个网页在同一个网页上进行区域划分的标签,其中每个frame标签都是一个区域
		需要注意的是,使用frameset标签不可以有bady标签
	-->

	<!--
		上下结构:rows表示上下结构,其中的值为每个部分所占页面的大小,*表示除去具体大小部分之外的所有部分都属于*
		border表示各部分之间交汇线的粗细
	-->
    <frameset rows="200px,*,400px" border="1px">
		<frame src="01输入标签.html"/>
		<frame src="02输入标签练习.html"/>
		<frame src="http://taobao.com" />
	</frameset>
</html>

	

效果:

2.frameset标签设置左右结构:

cols属性表示左右结构

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	
	<!--
		frameset标签是将多个网页在同一个网页上进行区域划分的标签,其中每个frame标签都是一个区域
		需要注意的是,使用frameset标签不可以有bady标签
	-->

	<!--
		上下结构:rows表示上下结构,其中的值为每个部分所占页面的大小,*表示除去具体大小部分之外的所有部分都属于*
		border表示各部分之间交汇线的粗细
	-->
    <frameset cols="200px,200px,*">
		<frame src="01输入标签.html"/>
		<frame src="02输入标签练习.html"/>
		<frame src="http://taobao.com" />
	</frameset>
</html>

 效果:

 3.frameset标签的嵌套

frameset标签可以和超链接一起使用,需要把frame标签添加name属性,然后在超链接添加target属性,属性值为所需要的frame标签的name值。

主代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<!--
		frameset标签的嵌套
		可以和超链接一起使用,需要把frame标签添加name属性,然后在超链接添加target属性,属性值为所需要的frame标签的name值
	-->
	<frameset rows="200px,*,200px" border="1px">
		<frame src="01输入标签.html"/>
		<frameset cols="200px,*">
			<frame src="lift.html"/>
			<frame src="https://taobao.com" name="right"/>
		</frameset>
		<frame src="http://taobao.com" />
	</frameset>
</html>

主代码中所引用的lift.html代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<a href="http://baidu.com" target="right">百度</a> <br />
		<a href="http://jd.com" target="right">京东</a> <br />
		<a href="http://taobao.com" target="right">淘宝</a> 
	</body>
</html>

效果:

 

三、快标签和行内标签

块标签 :块元素  在页面上独占一行的标签,如p标签等

行内标签 :行内元素 在页面上不会独占一行的标签,如font标签等

span标签:行内标签 ,一般用于在网页上划定一个范围,一般结合CSS样式,帮助我们确定某些现实效果的作用范围

div标签:块标签 , 一般用于做网页的布局

在进行网页布局设计中,有两个方法可以使用,一个是使用table,一个是使用div,通常情况下我们不推荐使用table做网页布局,因为table太过紧凑,如果使用table后网页布局需要修改,那么可能整个网页可能都要进行改正,而div就更灵活一点。

练习代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<!--
			块标签 :块元素  在页面上独占一行的标签
			行内标签 :行内元素 在页面上不会独占一行的标签
			span:行内标签 ,一般用于在网页上划定一个范围,一般结合CSS样式,帮助我们确定某些现实效果的作用范围
			div:块标签 , 一般用于做网页的布局
			
			在进行网页布局设计中,有两个方法可以使用,一个是使用table,一个是使用div
			通常情况下我们不使用table做网页布局,因为table太过紧凑,如果使用table后网页布局需要修改,那么可能整个网页可能都要进行改正
			而div就更灵活一点
		-->
		<p>
			只是一段测试性文字,测试span标签的作用,
			<span style="color: red;">我想把这段文字变红色</span>,
			<span style="color: yellow;">我想把这段文字变黄色</span>,
			<span style="color: blue;">我想把这段文字变蓝色</span>
		</p>
		
		<div style="border: 1px solid red;width: 400px;height: 200px;">div标签是块标签,独占一行</div>
	</body>
</html>

效果:

 四、CSS的三种引入方式

1.什么是CSS?

HTML:搭建网页的主体结构,相当于毛坯房

CSS:修饰网页 让网页更漂亮,相当于精装修

JS:做交互,相当于智能家电

2.CSS的引入方式

1.行内式

借助标签的style属性引入

style属性的语法格式为:style:"样式名1:样式值1;样式名2:样式值2;..."

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<span style="font-size: 40px;color: red;background-color: yellow;font-family: '楷体';">Hello World</span>
	</body>
</html>

2.内嵌式引入

将CSS样式的代码抽取出来,通过选择器确定样式作用的范围

在head标签中,使用使用一对style标签定义CSS样式

在style标签中,注释写法为:/*  */

内嵌式的好处:减少相同代码的编写量,减少代码的维护工作量

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>	
		<!--内嵌式-->
		<style>
			/*选择器*/
			span{
				font-size: 40px;
				color: blue;
				background-color: lightyellow;
				font-family: "宋体";
			}
		</style>
	</head>
	<body>
		<span>Hello World</span>
	</body>
</html>

3.连接式引入

行内式只能将样式作用于当前标签

内嵌式可以将样式作用于多个标签,但不能作用于其他网页

链接式可以将样式的范围扩大到多个不同网页

链接式可以将CSS代码放入独立的.css文件中,可以使当前页面更加简洁

每一个需要引入样式的HTML文件,在head标签中使用link标签引入css文件即可

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>	
		<!--链接式
			link标签中的属性:
			href属性:指向css文件的位置
			rel属性:告诉浏览器我们要引入的是一个什么样的文件 stylesheet:样式表
			type属性:引入文件的类型 text/css:文本类型的css文件
			其中rel属性和type属性可以不写
		-->
		<link rel="stylesheet" type="text/css" href="css/mycss.css"/>
	</head>
	<body>
		<span>Hello World</span>
	</body>
</html>

css样式文件:

font{
	font-size: 60px;
	color: green;
	background-color: gray;
	font-family: "微软雅黑";
}

4.当三种引入方式同时作用于同一个标签,如果样式有冲突,谁离得近,谁的优先级更高

优先级原则:就近原则

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		
		<!--内嵌式-->
		<style>
			/*选择器*/
			span{
				font-size: 40px;
				color: blue;
				background-color: lightyellow;
				font-family: "宋体";
			}
		</style>
		
		<!--链接式
			link标签中的属性:
			href属性:指向css文件的位置
			rel属性:告诉浏览器我们要引入的是一个什么样的文件 stylesheet:样式表
			type属性:引入文件的类型 text/css:文本类型的css文件
			其中rel属性和type属性可以不写
		-->
		<link rel="stylesheet" type="text/css" href="css/mycss.css"/>
	</head>
	<body>
		<!--
			1.行内式引入
				借助标签的style属性引入
				style属性的语法格式为:style:"样式名1:样式值1;样式名2:样式值2;..."
			
			2.内嵌式引入
				将CSS样式的代码抽取出来,通过选择器确定样式作用的范围
				在head标签中,使用使用一对style标签定义CSS样式
				在style标签中,注释写法为:/*  */
				内嵌式的好处:减少相同代码的编写量,减少代码的维护工作量
				
			3.连接式引入
				行内式只能将样式作用于当前标签
				内嵌式可以将样式作用于多个标签,但不能作用于其他网页
				链接式可以将样式的范围扩大到多个不同网页
				链接式可以将CSS代码放入独立的.css文件中,可以使当前页面更加简洁
				每一个需要引入样式的HTML文件,在head标签中使用link标签引入css文件即可
				
			4.当三种引入方式同时作用于同一个标签,如果样式有冲突,谁离得近,谁的优先级更高
			优先级原则:就近原则
		-->
		<span style="font-size: 40px;color: red;background-color: yellow;font-family: '楷体';">Hello World</span>
		<br />
		<span>Hello World</span>
		<br />
		<font>Hello World</font>
	</body>
</html>

五、CSS的选择器

1.三大基本选择器

1.标签名选择器

给页面所有同名的标签定义样式的选择器

语法:标签名{样式}

代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">		
		<title></title>
		
		<!--
			标签名选择器
			给页面所有同名的标签定义样式的选择器
			语法:标签名{样式}
		-->
		<style type="text/css">
			span{
				font-size: 40px;
				background-color: gray;
				font-family: "微软雅黑";
				color: red;
			}
		</style>
		
	</head>
	<body>
		<span id="s1">门前大桥下</span>
		<br />
		<span id="s2">游过一群鸭</span>
		<p id="p1">快来快来数一数</p>
		<p id="p2">真呀真多呀</p>
		<p id="p2" class="c1">小燕子,穿花衣</p>
		<h1 id="ha" class="c1">年年春天来这里</h1>
		<a href="http://baidu.com" class="c1" target="_blank">百度一下儿歌小燕子</a>
	</body>
</html>

效果截图

2. id选择器

一般body中的任何一个标签都有id属性

id属性的值一般在同一个网页上是不允许有重复值

id属性一般用于帮助我们定位到页面上唯一的一个标签

id属性值命名有规则

①不能有空格和一些特殊字符

②特殊字符中仅可以使用_和$,但不推荐使用$,因为$会和jquery命名冲突

③不能以数字为开头

推荐写法 :应为字母开头,数字放在后面

语法: #id值{样式}

代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">		
		<title></title>

		<!--
			id选择器
			一般body中的任何一个标签都有id属性
			id属性的值一般在同一个网页上是不允许有重复值
			id属性一般用于帮助我们定位到页面上唯一的一个标签
			id属性值命名有规则:
				不能有空格和一些特殊字符
				特殊字符中仅可以使用_和$,但不推荐使用$,因为$会和jquery命名冲突
				不能以数字为开头
				推荐写法  应为字母开头,数字放在后面
			语法: #id值{样式}
		-->
		<style type="text/css">
			#p1{
				background-color: lightskyblue;
				color: yellow;
				font-size: 50px;
				font-family: "楷体";
				border: darkred 1px dotted;
				width: 400px;
			}
		</style>
	</head>
	<body>
		<span id="s1">门前大桥下</span>
		<br />
		<span id="s2">游过一群鸭</span>
		<p id="p1">快来快来数一数</p>
		<p id="p2">真呀真多呀</p>
		<p id="p2" class="c1">小燕子,穿花衣</p>
		<h1 id="ha" class="c1">年年春天来这里</h1>
		<a href="http://baidu.com" class="c1" target="_blank">百度一下儿歌小燕子</a>
	</body>
</html>

效果截图:

 

3.类选择器

一般body中的所有标签都有class属性

多个不同的标签可以有相同的class属性值

通过标签的class属性确定样式的作用范围

语法:.class属性值{样式}

举栗代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">		
		<title></title>

		<!--
			类选择器
			一般body中的所有标签都有class属性
			多个不同的标签可以有相同的class属性值
			通过标签的class属性确定样式的作用范围
			语法:.class属性值{样式}
		-->
		<style type="text/css">
			.c1{
				color: lightyellow;
				background-color: darkblue;
				font-size: 40px;
				width: 400px;
				text-decoration: none;
				font-family: "微软雅黑";
			}
		</style>
	</head>
	<body>
		<span id="s1">门前大桥下</span>
		<br />
		<span id="s2">游过一群鸭</span>
		<p id="p1">快来快来数一数</p>
		<p id="p2">真呀真多呀</p>
		<p id="p2" class="c1">小燕子,穿花衣</p>
		<h1 id="ha" class="c1">年年春天来这里</h1>
		<a href="http://baidu.com" class="c1" target="_blank">百度一下儿歌小燕子</a>
	</body>
</html>

 效果截图:

 4.总练习代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">		
		<title></title>
		
		<!--
			标签名选择器
			给页面所有同名的标签定义样式的选择器
			语法:标签名{样式}
		-->
		<style type="text/css">
			span{
				font-size: 40px;
				background-color: gray;
				font-family: "微软雅黑";
				color: red;
			}
		</style>
		
		<!--
			id选择器
			一般body中的任何一个标签都有id属性
			id属性的值一般在同一个网页上是不允许有重复值
			id属性一般用于帮助我们定位到页面上唯一的一个标签
			id属性值命名有规则:
				不能有空格和一些特殊字符
				特殊字符中仅可以使用_和$,但不推荐使用$,因为$会和jquery命名冲突
				不能以数字为开头
				推荐写法  应为字母开头,数字放在后面
			语法: #id值{样式}
		-->
		<style type="text/css">
			#p1{
				background-color: lightskyblue;
				color: yellow;
				font-size: 50px;
				font-family: "楷体";
				border: darkred 1px dotted;
				width: 400px;
			}
		</style>
		
		<!--
			类选择器
			一般body中的所有标签都有class属性
			多个不同的标签可以有相同的class属性值
			通过标签的class属性确定样式的作用范围
			语法:.class属性值{样式}
		-->
		<style type="text/css">
			.c1{
				color: lightyellow;
				background-color: darkblue;
				font-size: 40px;
				width: 400px;
				text-decoration: none;
				font-family: "微软雅黑";
			}
		</style>
	</head>
	<body>
		<span id="s1">门前大桥下</span>
		<br />
		<span id="s2">游过一群鸭</span>
		<p id="p1">快来快来数一数</p>
		<p id="p2">真呀真多呀</p>
		<p id="p2" class="c1">小燕子,穿花衣</p>
		<h1 id="ha" class="c1">年年春天来这里</h1>
		<a href="http://baidu.com" class="c1" target="_blank">百度一下儿歌小燕子</a>
	</body>
</html>

 效果截图:

 2.其他选择器

1.层级选择器

通过层级关系定位样式的作用范围

层级选择器的每个层级的确定可以是标签名、id、class

每个层次之间用空格隔开

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		
		<!--
			层级选择器
			通过层级关系定位样式的作用范围
			层级选择器的每个层级的确定可以是标签名、id、class
			每个层次之间用空格隔开
		-->
		<style>
			#p1 .c1{
				color: red;
			}
		</style>
	</head>
	<body>
		<span>两只老虎爱跳舞</span>
		<p id="p1">
			<font id="f1">
				<span class="c1">小兔子乖乖拔萝卜</span>
			</font>
			<br />
			<span>
				我和小鸭子学走路
			</span>
		</p>
		<input class="i" type="text"/>
		<br />
		<input class="i" type="password"/>
		<br />
		<input class="i" type="password" />
		<br />
		<input class="i" type="text"/>
		<br />
		
		<h1 id="ha">你爱我</h1>
		<h2 class="ch">我爱你</h2>
		<font id="f2">
			<span class="c1">蜜雪冰城</span>
		</font>
		<p id="p2">甜蜜蜜</p>
	</body>
</html>

 效果截图

2.属性选择器

根据标签的某个属性的特定属性值确定样式的作用范围

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>

		<!--
			属性选择器
			根据标签的某个属性的特定属性值确定样式的作用范围
		-->
		<style type="text/css">
			input[type=text]{
				width: 400px;
				height: 40px;
			}
		</style>
	
	</head>
	<body>
		<span>两只老虎爱跳舞</span>
		<p id="p1">
			<font id="f1">
				<span class="c1">小兔子乖乖拔萝卜</span>
			</font>
			<br />
			<span>
				我和小鸭子学走路
			</span>
		</p>
		<input class="i" type="text"/>
		<br />
		<input class="i" type="password"/>
		<br />
		<input class="i" type="password" />
		<br />
		<input class="i" type="text"/>
		<br />
		
		<h1 id="ha">你爱我</h1>
		<h2 class="ch">我爱你</h2>
		<font id="f2">
			<span class="c1">蜜雪冰城</span>
		</font>
		<p id="p2">甜蜜蜜</p>
	</body>
</html>

效果截图:

 

3.分组选择器

可以将多个不同层级关系,不同class属性、id属性、标签名同时使用相同的样式效果

每组之间用逗号隔开 

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>

		<!--
			分组选择器
			可以将多个不同层级关系,不同class属性、id属性、标签名同时使用相同的样式效果
			每组之间用逗号隔开
		-->
		<style>
			h1,.ch,#f2 .c1,#p2{
				color: blue;
				background-color: yellow
			}
		</style>
	</head>
	<body>
		<span>两只老虎爱跳舞</span>
		<p id="p1">
			<font id="f1">
				<span class="c1">小兔子乖乖拔萝卜</span>
			</font>
			<br />
			<span>
				我和小鸭子学走路
			</span>
		</p>
		<input class="i" type="text"/>
		<br />
		<input class="i" type="password"/>
		<br />
		<input class="i" type="password" />
		<br />
		<input class="i" type="text"/>
		<br />
		
		<h1 id="ha">你爱我</h1>
		<h2 class="ch">我爱你</h2>
		<font id="f2">
			<span class="c1">蜜雪冰城</span>
		</font>
		<p id="p2">甜蜜蜜</p>
	</body>
</html>

 效果截图:

4.总代码

 

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		
		<!--
			层级选择器
			通过层级关系定位样式的作用范围
			层级选择器的每个层级的确定可以是标签名、id、class
			每个层次之间用空格隔开
		-->
		<style>
			#p1 .c1{
				color: red;
			}
		</style>
		
		<!--
			属性选择器
			根据标签的某个属性的特定属性值确定样式的作用范围
		-->
		<style type="text/css">
			input[type=text]{
				width: 400px;
				height: 40px;
			}
		</style>
		
		<!--
			分组选择器
			可以将多个不同层级关系,不同class属性、id属性、标签名同时使用相同的样式效果
			每组之间用逗号隔开
		-->
		<style>
			h1,.ch,#f2 .c1,#p2{
				color: blue;
				background-color: yellow
			}
		</style>
	</head>
	<body>
		<span>两只老虎爱跳舞</span>
		<p id="p1">
			<font id="f1">
				<span class="c1">小兔子乖乖拔萝卜</span>
			</font>
			<br />
			<span>
				我和小鸭子学走路
			</span>
		</p>
		<input class="i" type="text"/>
		<br />
		<input class="i" type="password"/>
		<br />
		<input class="i" type="password" />
		<br />
		<input class="i" type="text"/>
		<br />
		
		<h1 id="ha">你爱我</h1>
		<h2 class="ch">我爱你</h2>
		<font id="f2">
			<span class="c1">蜜雪冰城</span>
		</font>
		<p id="p2">甜蜜蜜</p>
	</body>
</html>

 

 3.伪类选择器

什么是伪类:伪类用于定义元素的特殊状态。

例如,它可以用于:

①设置鼠标悬停在元素上时的样式

②为已访问和未访问链接设置不同的样式

③设置元素获得焦点时的样式

伪类选择器可以是同时使用,也可以是单个使用

如果是同时使用,要注意顺序

伪类选择器的语法格式:选择器:伪类{}

对同一对象进行伪类修饰时,选择器尽量一致

link设置未访问的链接 

visited设置已访问的链接

hover设置当鼠标悬停在链接上时

active设置鼠标已选择的链接

注意:a:hover 必须在 CSS 定义中的 a:link 和 a:visited 之后,才能生效!a:active 必须在 CSS 定义中的 a:hover 之后才能生效!

伪类名称对大小写不敏感

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<style type="text/css">
			/*
			 什么是伪类:伪类用于定义元素的特殊状态。
			例如,它可以用于:
				设置鼠标悬停在元素上时的样式
				为已访问和未访问链接设置不同的样式
				设置元素获得焦点时的样式
			 伪类选择器可以是同时使用,也可以是单个使用
			如果是同时使用,要注意顺序
			伪类选择器的语法格式:选择器:伪类{}
			对同一对象进行伪类修饰时,选择器尽量一致
			 
			link设置未访问的链接 
			visited设置已访问的链接
			hover设置当鼠标悬停在链接上时
			active设置鼠标已选择的链接
			
			注意:a:hover 必须在 CSS 定义中的 a:link 和 a:visited 之后,才能生效!a:active 必须在 CSS 定义中的 a:hover 之后才能生效!
			伪类名称对大小写不敏感
			 * */
			a:link{
				color: black;
				text-decoration: none;
			}
			a:visited{
				color: blue;
			}
			a:hover{
				color: yellow;
			}
			a:active{
				color: gray;
			}

			#a2:link{
				color: black;
				text-decoration: none;
			}
			#a2:visited{
				color: blue;
			}
			#a2:hover{
				color: yellow;
			}
			#a2:active{
				color: gray;
			}
			
			div{
				border: 1px double orange;
				width: 400px;
				height: 300px;
				background-color: red;
			}
			div:hover{
				background-color: yellow;
			}
			div:active{
				background-color: gainsboro;
			}
		</style>
	</head>
	<body>
		<a id="a1" href="http://baidu.com" target="_blank">百度</a>
		<br />
		<a id="a2" href="http://taobao.com" target="_blank">淘宝</a>
		<br />
		<div></div>
	</body>
</html>

 

目录

一、输入标签和表单标签

1.输入标签 

 2.输入标签练习

 3.表单标签

form标签的使用方法:

 二、框架标签

1.iframe标签

 2.frameset标签和frame标签

1.frameset标签设置上下结构:

2.frameset标签设置左右结构:

 3.frameset标签的嵌套

三、快标签和行内标签

 四、CSS的三种引入方式

1.什么是CSS?

2.CSS的引入方式

五、CSS的选择器

1.三大基本选择器

1.标签名选择器

2. id选择器

3.类选择器

 4.总练习代码:

 2.其他选择器

1.层级选择器

2.属性选择器

3.分组选择器

4.总代码

 3.伪类选择器


 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值