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>
结果:
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