结构
一、CSS基本使用
1、基础
-
Cascading Style Sheets 层叠样式表
-
HTML标签的某些属性可以设置样式效果,但是细节处理不够
-
HTML实现效果会出现大量重复代码,维护成本高
-
CSS3能做到网页和内容分离,对网页中的元素的位置排版等效果进行精确控制
-
CSS美化网页需要依赖HTML
2、基本语法
<style type="text/css">
body{
background-color:red;
color:blue;
}
3、注释
/* 这是注释 */
4、CSS使用
(1)行内式
定义在具体的HTML标签的style属性中
<p style="color:red;font:楷体">行内式</p>
以行内式写的CSS耦合度高(和HTML在一起)
(2)内部样式(嵌入式)
定义在head标签中的style标签中
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>CSS样式</title>
<style>
p{
color:red;
font:楷体;
}
</style>
</head>
<body>
<p>Hello World</p>
</body>
</html>
(3)外部样式(引入外联样式文件)
在外部写CSS文件
css/1.css
p{
color:red;
font:楷体;
}
html中使用link引入css文件
<link rel="stylesheet" type="text/css" href="css/1.css" />
/* 参数:
ref:当前文件与引入文件之间的关系
type:CSS类型
href:引入文件的路径
优先级:就近原则
二、CSS选择器
1、基本选择器
(1)通用选择器
选择所有元素
*{
属性名:value;
}
(2)元素选择器
选择指定标签
/* 对div标签内进行设置样式 */
div{
width:100px;
height:100px;
background-color:red;
}
(3)id选择器
选择指定id值的元素
/* #修饰id属性 */
#id{
属性:values;
}
注:
元素的id属性命名规则:(同变量)
数字、字母、下划线;数字不开头
(4)class选择器
选择指定class属性的元素
/* .修饰class属性 */
.class{
属性:values;
}
(5)分组选择器
选择指定选择器选中的元素
选择器1,选择器2,选择器3{
属性:values;
属性:values;
}
#div,.cls1,p{
/*边框 粗细 风格 颜色*/
border:1px soid red;
}
(6)选择器的优先级
id选择器(100) > class选择器(10) > 元素选择器(1) > 通用选择器
/* 行内(1000)*/
2、组合选择器
(1)后代选择器(space)
选择指定元素的所有后代元素内部包含的所有元素
/*后代选择器 选择指定元素的所有后代元素*/
ul li{
color:blue;
}
(2)子代选择器(>)
选择指定元素的第一代元素
/*子代选择器 选择指定元素的第一代元素 */
ul>li{
color:red;
}
(3)相邻兄弟选择器(+)
选择指定元素相邻的下一个元素
/* 相邻兄弟选择器 选择指定元素下一个相邻的元素 */
li+li{
color:red;
}
(4)普通兄弟选择器(~)
选择指定元素后的同级元素
/* 普通兄弟选择器 选择指定元素后的同级元素 */
li~li{
color:red;
border: 1px soid red;
}
html代码
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css">
/* 组合选择器代码 */
</style>
</head>
<body>
<div id="list">
<h3>FOOD</h3>
<ul id="ul1">
<li>水果</li>
<ul>
<li>苹果</li>
<li>梨子</li>
<li>香蕉</li>
</ul>
<li>蔬菜</li>
<ul>
<li>黄瓜</li>
<li>苦瓜</li>
<li>南瓜</li>
</ul>
<li>肉类</li>
<ul>
<li>鸡肉</li>
<li>鱼肉</li>
<li>猪肉</li>
</ul>
</ul>
<ul id="ul2">
<li>水果</li>
<ul>
<li>苹果</li>
<li>梨子</li>
<li>香蕉</li>
</ul>
<li>蔬菜</li>
<ul>
<li>黄瓜</li>
<li>苦瓜</li>
<li>南瓜</li>
</ul>
<li>肉类</li>
<ul>
<li>鸡肉</li>
<li>鱼肉</li>
<li>猪肉</li>
</ul>
</ul>
</div>
</body>
</html>