Unit02: CSS 概述 、 CSS 语法 、 CSS 选择器 、 CSS声明
my.css
p {
color: yellow;
}
demo1.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<!-- 2.内部样式:在head元素内部的style标签内
写样式,这种样式可以在当前网页上复用. -->
<style>
/*CSS的注释是这样的*/
h2 {
color: blue;
}
</style>
<!-- 3.外部样式:在单独的css文件中写样式,
需要通过link标签将其引入到网页上才有效.
这种样式可以在任意的网页上复用. -->
<link rel="stylesheet" href="my.css"/>
</head>
<body>
<!-- 1.内联样式:在元素的style属性里写样式,
这种样式只对这一个元素有效,无法复用. -->
<h1 style="color:red;">CSS是层叠样式表</h1>
<h2>CSS有3种使用方式</h2>
<p>1.内联样式</p>
<p>2.内部样式</p>
<p>3.外部样式</p>
</body>
</html>
demo2.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
/*1.继承性:在父元素上写的样式,可以被子元素
继承,注意只有字体、颜色可以继承。*/
body {
font-family:
"微软雅黑","文泉驿正黑","黑体";
}
/*2.层叠性:先后给一个元素设置不同的样式,
其效果会叠加在一起. */
h1 {
color: red;
font-size: 50px;
}
/*3.优先级:先后给一个元素设置相同的样式,
其效果是以后者为准,也叫就近原则.*/
h2 {
color: blue;
}
/*...*/
h2 {
color: green;
}
</style>
</head>
<body>
<h1>苍老师</h1>
<h2>范传奇</h2>
</body>
</html>
demo3.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
/*1.元素选择器:略*/
/*2.类选择器:选择一类(class="某值")
具有共性的元素*/
.girl {
color: pink;
}
/*3.id选择器:根据id选择唯一的元素*/
#p4 {
color: red;
}
/*4.选择器组:写出一组选择器,会选中每个
选择器所对应的目标的并集(合计).*/
.girl,#p4 {
/*字体加粗*/
font-weight: bold;
}
/*5.派生选择器:
选择某元素满足条件的后代 */
/*5.1选择子孙*/
#p5 b {
color: red;
}
/*5.2选择儿子*/
#p5>b {
font-size: 30px;
}
/*6.伪类选择器:根据元素的状态选择元素*/
/*6.1选择未访问过的超链接*/
a:link {
color: green;
}
/*6.2选择已访问过的超链接*/
a:visited {
color: red;
}
/*6.3选择激活态(正在点)的按钮*/
#b1:active {
background-color: green;
}
/*6.4选择有焦点(光标闪烁)的文本框*/
#t1:focus {
background-color: yellow;
}
/*6.5选择悬停态的图片*/
img:hover {
width: 250px;
height: 250px;
}
</style>
</head>
<body>
<p class="girl">苍老师呀苍老师</p>
<p>范传奇呀范传奇</p>
<p class="girl">王克晶呀王克晶</p>
<p id="p4">瞧你们那点破事</p>
<p id="p5">北京市<u>海淀区<b>北三环</b>西路</u>甲18号<b>中鼎大厦</b>B座8层</p>
<p>
<a href="http://www.tmooc.cn">达内</a>
<a href="http://www.sb.com">随便</a>
</p>
<p><input type="button" value="按钮1" id="b1"/></p>
<p><input type="text" id="t1"/></p>
<p>
<img src="../images/01.jpg"/>
<img src="../images/02.jpg"/>
<img src="../images/03.jpg"/>
</p>
</body>
</html>
demo4.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
/*1.单个边设置边框(left/right/top/bottom)*/
h1 {
border-left: 10px solid blue;
}
/*2.四个边设置相同的边框*/
p {
border: 1px dashed red;
}
</style>
</head>
<body>
<h1>苍老师</h1>
<p>
刘苍松,系达内Java教学总监.
是Java教学改革的先驱.
同时他也是一名摄影爱好者,
他拍的片都很么么哒!
他最擅长捕捉肉体和灵魂的契合点,
能够折射出对人性的思考与鞭挞!
</p>
</body>
</html>
demo1.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
div {
border: 1px solid red;
width: 100px;
height: 100px;
}
/*1.四个边一起设置相同的边距*/
#d1 {
padding: 20px;
margin: 30px;
}
/*2.四个边一起设置不同的边距(上右下左)*/
#d2 {
padding: 10px 20px 30px 40px;
margin: 40px 30px 20px 10px;
}
/*3.单个边设置边距(left/right/top/bottom)*/
#d3 {
padding-left: 30px;
margin-bottom: 20px;
}
/*4.对边设置边距(上下 左右)*/
#d4 {
padding: 20px 30px;
margin: 20px 30px;
}
/*5.外边距的特殊用法:
当采用对边设置外边距的时候,若
第二个值为auto,则该元素水平居中. */
#d5 {
margin: 50px auto;
}
</style>
</head>
<body>
<div id="d0">d0</div>
<div id="d1">d1</div>
<div id="d2">d2</div>
<div id="d3">d3</div>
<div id="d4">d4</div>
<div id="d5">d5</div>
</body>
</html>
demo2.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
/*1.设置背景图*/
body {
background-image:
url(../images/background.png);
background-repeat: repeat-y;
background-position: center;
}
div {
border: 1px solid red;
width: 125px;
height: 125px;
margin: 10px auto;
}
/*2.采用简化的方式设置背景(色和图)
background:颜色 图片 平铺 位置;
上述4个值可以酌情省略,但至少要保留
颜色或图片之一 */
.enemy {
background:
url(../images/airplane.png)
no-repeat center;
}
.hero {
background:
url(../images/hero0.png)
no-repeat center;
}
/*3.固定背景图*/
body {
background-attachment: fixed;
}
</style>
</head>
<body>
<div class="enemy"></div>
<div class="enemy"></div>
<div class="enemy"></div>
<div class="enemy"></div>
<div class="enemy"></div>
<div class="enemy"></div>
<div class="enemy"></div>
<div class="enemy"></div>
<div class="enemy"></div>
<div class="enemy"></div>
<div class="hero"></div>
<div class="hero"></div>
</body>
</html>
demo3.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
h1,p {
border: 1px solid red;
width: 300px;
}
h1 {
text-align: center;
text-decoration: underline;
}
p {
text-indent: 2em;
line-height: 2em;
}
h1 {
height: 100px;
/*当行高=元素的高时,文字垂直居中*/
line-height: 100px;
}
</style>
</head>
<body>
<h1>范传奇</h1>
<p>
华灯轻抚蚕丝被,
锦墙呢喃诉床帏.
情郎翘首索芳心,
佳人回眸送秋水.
丹心不畏相思苦,
浓情何惧岁月催.
万水千山终有路,
几度良宵几轮回.
</p>
</body>
</html>
demo1.html 演示浮动定位
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
.d0,p {
width: 400px;
border: 1px solid red;
}
.d1,.d2,.d3 {
width: 100px;
height: 100px;
margin: 10px;
}
.d1 {
background-color: red;
}
.d2 {
background-color: green;
}
.d3 {
background-color: blue;
}
/*浮动*/
.d1,.d2,.d3 {
float: left;
}
/*消除浮动影响*/
p {
/*clear: left;*/
}
.d4 {
clear: left;
}
</style>
</head>
<body>
<div class="d0">
<div class="d1"></div>
<div class="d2"></div>
<div class="d3"></div>
<!-- 仅仅是用来消除浮动影响的 -->
<div class="d4"></div>
</div>
<p>浮动时看看我的位置</p>
</body>
</html>
demo2.html 照片墙案例,演示浮动定位
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
body {
background-color: #066;
}
ul {
width: 780px;
margin: 20px auto;
/*border: 1px solid red;*/
/*去掉列表左侧的符号*/
list-style-type: none;
/*将列表自带的内边距去掉*/
padding: 0;
}
li {
border: 1px solid #ccc;
width: 218px;
padding: 10px;
margin: 10px;
/*为了保证诗的顺序必须左浮动*/
float: left;
background-color: #FFF;
}
p {
text-align: center;
}
/*鼠标悬停时,让li偏移2px的位置,
从而实现一个抖动的特效. */
li:hover {
position: relative;
left: 2px;
top: -2px;
}
</style>
</head>
<body>
<ul>
<li>
<img src="../images/01.jpg"/>
<p>啊,Teacher苍!</p>
</li>
<li>
<img src="../images/02.jpg"/>
<p>你在何方?</p>
</li>
<li>
<img src="../images/03.jpg"/>
<p>难道是去了东洋?</p>
</li>
<li>
<img src="../images/04.jpg"/>
<p>那边的痴汉很多很多,</p>
</li>
<li>
<img src="../images/05.jpg"/>
<p>你一定要穿好衣裳,</p>
</li>
<li>
<img src="../images/06.jpg"/>
<p>别走光!</p>
</li>
</ul>
</body>
</html>
demo3.html 演示绝对定位
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
div {
border: 1px solid red;
width: 318px;
/*只声明定位,不设置偏移量,
其位置不动,不受任何影响.
这样做仅仅是为了将该元素
作为绝对定位的目标而已.*/
position: relative;
}
p {
position: absolute;
bottom: 50px;
width: 318px;
background-color: #FFF;
text-align: center;
}
div {
height: 318px;
}
</style>
</head>
<body>
<div>
<img src="../images/3.jpg"/>
<p>苍老师到此一游</p>
</div>
</body>
</html>
demo4.html 演示固定定位(回到顶部)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
div {
border: 1px solid #ccc;
width: 40px;
line-height: 30px;
position: fixed;
right: 10px;
bottom: 30px;
text-align: center;
}
</style>
</head>
<body>
<h1>iPhone7 Plus</h1>
<p>这是一个新款手机</p>
<p>它可以防火</p>
<p>它可以防盗</p>
<p>它可以防闺蜜</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<p>......</p>
<div>
<a href="#">顶部</a>
</div>
</body>
</html>
go_to_top.html
demo1.html 设置图片选中悬浮
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
div {
width: 800px;
height: 500px;
margin: 20px auto;
background-color: #066;
position: relative;
}
img {
position: absolute;
}
.i1 {
left: 150px;
top: 100px;
}
.i2 {
left: 200px;
top: 150px;
}
.i3 {
left: 250px;
top: 50px;
}
img:hover {
z-index: 999;
}
</style>
</head>
<body>
<div>
<img src="../images/1.jpg" class="i1"/>
<img src="../images/2.jpg" class="i2"/>
<img src="../images/3.jpg" class="i3"/>
</div>
</body>
</html>
demo2.html 设置列表序列样式
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
ol {
list-style-type: upper-roman;
}
ul {
list-style-type: square;
}
.south {
list-style-image:
url(../images/add.png);
}
</style>
</head>
<body>
<ol>
<li>河北省</li>
<li>黑龙江</li>
<li>山东省</li>
</ol>
<ul>
<li>北京</li>
<li class="south">上海</li>
<li class="south">广州</li>
<li class="south">深圳</li>
<li class="south">杭州</li>
</ul>
</body>
</html>
demo3.html
行内元素转成块元素
块元素转换成行内元素
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style>
p {
display: inline;
}
span {
display: block;
}
img {
display: block;
}
div {
display: none;
}
</style>
</head>
<body>
<div>
<p>aaa</p>
<p>bbb</p>
<p>ccc</p>
</div>
<div>
<span>111</span>
<span>222</span>
<span>333</span>
</div>
<div>
<img src="../images/01.jpg"/>
<img src="../images/02.jpg"/>
<img src="../images/03.jpg"/>
</div>
</body>
</html>