目录

CSS整理学习合集1

CSS整理学习合集(1)

CSS整理学习合集(1)

既然要学习css,那么首先就要先了解css是什么

一、CSS简介

1.什么是CSS?

CSS(Cascading Style Sheet):翻译过来就是层叠样式表,是一组样式设置的规则,用于控制页面的外观样式

2.为什么使用CSS

1.实现内容与样式的分离,便于团队开发

2.样式复用,便于网站的后期维护

3.页面的精确控制,让页面更精美

3.CSS作用

1.让页面外观美化

2.对页面进行布局和元素定位

二、CSS的基本用法

1.CSS的基本语法
选择器{
			属性名:属性值;
			属性名:属性值;
		}
  • 选择器:要修饰的对象(标签元素)
  • 属性名:修饰对象的哪一个属性(样式)
  • 属性值:样式的取值

比如:

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style>
		p{
			color:green;
			background: #cccccc;
		}
		h2{
			color:red;
		}
	</style>
</head
<body>
	<p style="color:red">学会CSS</p>
	<h2>快要学会啦!11</h2>
</body>
</html>
2.CSS引用方式

内部样式、行内样式、外部样式

2.1 内部样式

也称为内嵌样式,在页面头部通过style标签定义

对当前页面中所有符合样式选择器的标签都起作用

像这样

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style>
		p{
			color:green;
			background: #cccccc;
		}
		h2{
			color:red;
		}
	</style>
</head>
2.2 行内样式

也称为嵌入样式,使用HTML标签的style属性定义,只对设置style属性的标签起作用

<p style="color:red">学会CSS</p>
2.3 外部样式

使用单独的 .CSS 文件定义,然后在页面中使用 link标签 或 @import指令 引入

  • 使用 link标签 链接外部样式文件

    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <link rel="stylesheet" href="./css/style.css" />
        <title>Document</title>
      </head>
      <body></body>
    </html>
  • @import 指令 导入外部样式文件

<style>
	@import "CSS样式文件路径";
	@import url(CSS样式文件路径);
</style>

三、选择器

1、基础选择器
1.1 标签选择器

也叫元素选择器,使用HTML标签作为选择器的名称以标签名作为样式应用的依据

1.2 类选择器

使用自定义的名称,以 . 号作为前缀,然后再通过HTML标签的class属性调用类选择器,以标签的class属性作为样式应用的依据

注意事项

调用时不能添加 . 号

同时调用多个类选择器时,以 空格 分隔

类选择器名称不能以 数字 开头

1.3 ID选择器

使用自定义名称,以 # 作为前缀,然后通过HTML标签的id属性进行名称匹配

以标签的id属性作为样式应用的依据,一对一的关系

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style>
		p{   //标签选择器
			color:red;
			font-size:20px;  
		}
		h2{  //标签选择器
			color:yellow;
		}
		.hello{ //类选择器
			background: #cccccc;
		}
		#haha{ //ID选择器
			color:blue;
		}
	</style>
</head>
<body>
	<p>welcome to css!</p>
	<h2>WEB前端</h2>
	<hr>
	<p class="hello">welcome to css!</p>
	<h2>WEB前端</h2>
	<hr>
	<h1 id="haha">哈哈</h1>
</body>
</html>
2、复杂选择器
2.1 复合选择器

要求:标签选择器和类选择器、标签选择器和ID选择器,一起使用

必须同时满足两个条件才能应用样式

2.2组合选择器

也称为集体声明

将多个具有相同样式的选择器放在一起声明,使用逗号隔开

2.3 嵌套选择器

在某个选择器内部再设置选择器,通过空格隔开

只有满足层次关系最里层的选择器所对应的标签才会应用样式

注意 :使用 空格 时不区分父子还是后代,使用CSS3中新增的 > 时必须是父子关系才行

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style>
		/* 标签选择器和类选择器合起来使用----复合选择器 */
		h1.aaa{
			color:red;
		}
		/* 标签选择器和ID选择器合起来使用----复合选择器 */
		p#bbb{
			color:blue;
		}
		/* 2.组合选择器 */
		h1,p,div,span,.ccc{
			font-size:30px;
		}
		div{
			background:violet;
		}
		.ccc{
			font-weight:bold;
		}
		/* 3.嵌套选择器 */
		/* div p{
			color:green;
			text-decoration:underline;
		} */
		div>p{
			color:green;
			text-decoration:underline;
		}
		div h3.ddd{
			color:red;
		}
	</style>
</head>
<body>
	<!-- 需求:只想修饰class属性为aaa的h1标签 -->
	<h1 class="aaa">标签选择器和类选择器合起来使用----复合选择器</h1>
	<h4 class="aaa">css</h4>
	<h1>hello</h1>
	<hr>
	<!-- 我要修饰ID属性为bbb的p标签 -->
	<p id="bbb">标签选择器和ID选择器合起来使用----复合选择器</p >
	<p>html</p>
	<h1 id="bbb">不修饰h1</h1>
	<hr>
	<!-- 给h1、p、div、span标签中的内容设置字号为30px -->
	<h1>hello</h1>
	<p>CSS</p>
	<div>WEB开发</div>
	<span class="ccc">JAVA开发</span>
	<hr>
	<!-- 需求:修饰div内部的p标签 -->
	<div>
		<p>div内部的p标签</p>
		<h3>div内部的h3标签</h3>
	</div>
	<hr>
	<div>
		<h3>
			<p>div内部的h3内部的p标签</p>
		</h3>
	</div>
	<hr>
	<!-- 需求:修饰div内部的class为ddd的标签 -->
	<div>
		<p>div内部的p</p>
		<h3 class="ddd">div内部的h3</h3>
		<p class="ddd">PPPP</p>
	</div>
	<h3 class="ddd">h3h3h3</h3>
</body>
</html>
2.4 伪类选择器

根据不同的状态显示不同的样式,一般多用于 标签

四种状态:

  • :link 未访问的链接
  • :visited 已访问的链接
  • :hover 鼠标悬浮到连接上,即移动在连接上
  • :active 选定的链接,被激活
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>伪类选择器</title>
	<style>
		a:link,a:visited{
			color:#666666;
			font-size: 13px;
			text-decoration: none;
		}
		a:hover,a:active{
			color:#ff7300;
			text-decoration: underline;
		}
		/*普通的标签也可以使用伪类选择器*/
		p:hover{
			color:red;
		}
		p:active{
			color:blue;
		}
	</style>
</head>
<body>
	<a href="www.baidu.com">百度搜索CSS</a>
	<p>CSS从入门到精通!</p>
</body>
</html>
2.5 伪元素选择器
  • :first-letter 为第一个字符的样式
  • :first-line 为第一行添加样式
  • :before 在元素内容的最前面添加的内容,需要配合content属性使用
  • :after 在元素内容的最后面添加的内容,需要配合content属性使用
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style>
		p:first-letter{
			color:red;
			font-size:30px;
		}
		p:first-line{
			background:pink;
		}
		p:before{
			content:"嘿嘿";
		}
		p:after{
			content:"哈哈";
		}
	</style>
</head>
<body>
	<p>hello world!</p>
	<hr>
	<p>
		hello world! <br>
		welcome to css!
	</p>
</body>
</html>

结果:

https://i-blog.csdnimg.cn/direct/0c329cbd02044db0837add9d5e9ca509.png

3、选择器优先级
3.1 优先级

行内样式>ID选择器>类选择器>标签选择器

原因:首先加载标签选择器,再加载类选择器,然后加载ID选择器,最后加载行内样式

后加载会覆盖先加载的同名样式

3.2 内外部样式加载顺

就近原则

原因:按照书写顺序依次加载,在同优先级的前提下,后加载的会覆盖先加载的同名样式,所以离的越近

越优先

3.3 !important

可以使用!important使某个样式有最高的优先级

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<link rel="stylesheet" type="text/css" href="style/world.css">

	<style>
		div{
			font-size:20px;
		}
		.hello{
			font-weight:bold;
			color:blue;
		}
		#world{
			text-decoration: underline;
			color:green;
		}
		p{
			color:red;
		}
	</style>
</head>
<body>
	<div class="hello" id="world" style="color:#ff7300">CSS从入门到精通</div>
</body>
</html>


最后引用了
行内样式: color:#ff7300
id选择器:text-decoration: underline
类选择器:font-weight:bold

eet" type=“text/css” href=“style/world.css”>

<style>
	div{
		font-size:20px;
	}
	.hello{
		font-weight:bold;
		color:blue;
	}
	#world{
		text-decoration: underline;
		color:green;
	}
	p{
		color:red;
	}
</style>

CSS从入门到精通

最后引用了

行内样式: color:#ff7300

id选择器:text-decoration: underline

类选择器:font-weight:bold