今天我们开始进行css的基础介绍。
首先,我们要知道什么是css。CSS是Cascading Style Sheets(层叠样式表单)的简称。CSS是一种用来表现HTML或XML等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。
引入方式
css的引入方式有四种
1.行内样式
行内样式又叫做标签样式,它是在标签里面加上style属性
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>css样式</title>
</head>
<body>
<h2 style="color:red;text-align:center">这是行内样式</h2>
</body>
</html>
2.内嵌样式
行内样式又叫做标签样式,它是在标签里面加上style属性
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>css样式</title>
<style type="text/css">
h2{
color: blue;
text-align: center;
}
</style>
</head>
<body>
<h2>这是一个内嵌样式</h2>
</body>
</html>
3.外链样式
外链样式的建立分为三步
第一步:新建一个.css的文件,专门写css样式
第二步:head标签内写入link标签 (link标签可以存在在body标签内,但是不推荐使用)
第三步:link 里href属性 将css文件引入 (路径(绝对路径和相对路径))
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>css样式</title>
<link rel="stylesheet" type="text/css" href="1.css">
</head>
<body>
<h2>这是一个外链样式</h2>
</body>
</html>
4.导入样式
导入样式顾名思义就是导入css
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>css样式</title>
<style type="text/css">
@import url("1.css");
</style>
</head>
<body>
<h2>这是一个导入样式</h2>
</body>
</html>
我们在HTML中输入该代码段后就可以导入1.css(自己建立)
优先级:
就近原则,修饰的样式距离body标签越近优先级越高 。
选择器
1.基本选择器
1、标签选择器
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>选择器</title>
<style type="text/css">
h2{color:red;}
</style>
</head>
<body>
<h2>标签选择器</h2>
</body>
</html>
这样输出的h2标签为:标签选择器
2、ID选择器
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>选择器</title>
<style type="text/css">
#one{color:blue;}
</style>
</head>
<body>
<p id="one">ID选择器</p>
</body>
</html>
这样输出的标签结果为:ID选择器
3、类选择器
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>选择器</title>
<style type="text/css">
.two{color:green;}
</style>
</head>
<body>
<p class="two">类选择器</p>
</body>
</html>
这样输出的结果为:类选择器
4、通用选择器(通配符选择器)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>选择器</title>
<style type="text/css">
p{color:pink;}
#one{color:red;}
.two{color:blue;}
*{color:green;}
</style>
</head>
<body>
<p>第一行</p>
<div id="one">第二行</div>
<div class="two">第三行</div>
<div>第四行</div>
<div>第五行</div>
<div>第六行</div>
</body>
</html>
从第四行开始输出标签的结果全为绿色,而通用选择器的作用就是将没有用其他选择器标记的标签统一选择。
2.包含选择器
包含选择器包含三种选择器
1、子代选择器 ------获取的某个标签的第一级子标签
2、后代选择器----- 获取某个标签内的所有子标签
3、分组选择器(也叫做逗号选择器,可以给多个标签加上样式,通过,隔开)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>包含选择器</title>
<style type="text/css">
/* 子代选择器 */
/* .list>ul{
color: green;
}*/
/* 后代选择器 */
/* .list li{
color: red;
}*/
/* 分组选择器 */
h2,.list,#list{
color: blue;
}
</style>
</head>s
<body>
<h2>这是第一行</h2>
<p id="list">这是第二行</p>
<div class="list">
<ul>
<li>这是列表1</li>
<li>这是列表2</li>
<li>这是列表3</li>
<li>这是列表4</li>
<li>这是列表5</li>
</ul>
<li>这是列表6</li>
<li>这是列表7</li>
<li>这是列表8</li>
<li>这是列表9</li>
</div>
</body>
</html>
子代选择器限制列表1至5的颜色为绿色,而后代选择器限制列表1至9全为红色,但由于分组选择器的出现所有标签的颜色又为蓝色。
由此,我们可以知道优先级为 分组>后代>子代
3 属性选择器
简而言之就是选择标签中具有相同属性代码段进行选择
1. 选中某个标签的某个属性
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>属性选择器</title>
<style type="text/css">
div[title]{
color: red;}
</style>
</head>
<body>
<div title="first">这是第一种属性选择器</div>
</body>
</html>
由于选择的是div[title]这个属性,所有输出的结果为:这是第一种属性选择器
2.确切的等于
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>属性选择器</title>
<style type="text/css">
input[type="text"]{
background: yellow;
}
</style>
</head>
<body>
<input type="text" id="one" value="确切等于">
</body>
</html>
因为是确切等于input标签中的type="text"文本,所有输出的文本框的背景颜色为黄色
3. 某个属性含有某个值
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>属性选择器</title>
<style type="text/css">
input[type*="e"]{
background:green;}
</style>
</head>
<body>
<input type="text" id="" class="" value="张三">
</body>
</html>
因为text单词中含有“e”,所有,输出文本框颜色为绿色。
4.某个属性以什么开始fen
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>属性选择器</title>
<style type="text/css">
input[type^="e"]{
background: pink;}
</style>
</head>
<body>
<input type="email" id="" class="" value="以e开头">
</body>
</html>
因为email是以“e”开头的,所有文本框的颜色为粉色。
5.某个属性以什么结束
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>属性选择器</title>
<style type="text/css">
input[type$="rl"]{
background: purple;}
</style>
</head>
<body>
<input type="url" id="" class="" value="以rl结束">
</body>
</html>
因为url的结尾为rl,所以文本框背景颜色为紫色
6.表示下一个标签
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>属性选择器</title>
<style type="text/css">
.msg + {
color: red;}
</style>
</head>
<body>
<div class="msg">这是第一行</div>
<div title="这是一个标题">这是第二行</div>
</body>
</html>
由于msg的下一个标签为div,则输出的结果为这就是第二行。当然有的时候我们会遇到像上面一样输入下一标签没有反应的问题,原因就是浏览器版本不支持,这个时候我们就以上为例 .msg +<div>,这样就可以输出相同结果。
7.属性名称等于某个值
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>属性选择器</title>
<style type="text/css">
[title="这是一个标题"]{
color: gray;
}
</style>
</head>
<body>
<div title="这是一个标题">相同属性</div>
</body>
</html>
因为title的属性名称为这是一个标题,则,结果为相同属性。
伪类选择器
同一个标签,根据不同的状态,有不同的样式,这就叫做伪类,使用的是冒号:表示的
:link -------- 超链接点击之前的样式
:visited -------- 链接被访问之后
:hover ------ 悬停,鼠标放到标签上的样式
:active --------被激活的时候,鼠标点击的时候,但是不松手的时候
:focus -------- 某个标签获得焦点的时候
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>伪类选择器</title>
<style type="text/css">
/* 让超链接点击之前是红色 */
a:link{
color: red;
}
/* 让超链接点击之后是绿色 */
a:visited{
color: green;
}
/* 让鼠标悬停的时,放到标签上变成粉色 */
a:hover{
color: pink;
}
/* 让鼠标点击链接不松手的时候橙色 */
a:active{
color: orange;
}
</style>
</head>
<body>
<a href="https://www.baidu.com/">进入百度</a>
</body>
</html>
注意:顺序是一定的,不可以改变,他们的顺序 :link :visited :hover :active
伪元素选择器
:after ------- CSS2提供的
:before
::after ----- CSS3提供
::before
注意:如果要使用before和after,一定要加上content(内容)属性
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>伪元素选择器</title>
<style type="text/css">
p::before{
content: "zhangsan";
color: red;
}
p::after{
content: "lisi";
}
</style>
</head>
<body>
<p>这是一个段落</p>
</body>
</html>
而css的常见样式请进入
完整阅读。