CSS基础语法小结

第一章 CSS基础语法

1.1 CSS基础语法

格式: 选择器(选择符){属性:属性值;属性:属性值;……}

注释样式:

/*注释内容*/

1.2 嵌入方式

1.2.1 内联方式

就是在双标签的开始标签中嵌入

特点:仅作用于本标签

1.2.2 内部方式

即在head标签中嵌入style标签及其样式

特点:作用于整个页面

1.2.3 外部导入(推荐)

就是在head标签中用link链接外部的CSS文件,进行修饰(这种采取HTML和CSS代码分离的技术,十分常用)

特点:作用于整个网站

嵌入方式--使用实例

<!DOCTYPE html>
<html>
	<head>
		<title>CSS的嵌入方式</title>
		<meta charset="utf-8">
		<style type="text/css">
			li{
				background-color:red;
				font-size:20px;
			}
		</style>
		<!-- 这里需要在当前目录下新建一个名为my.css的文件,里面的代码为
		ul{
			background-color:#f0c;
		}
		 -->
		<link rel="stylesheet" type="text/css" href="my.css">
	</head>
	<body>
		<h3>CSS的嵌入方式</h3>
		<ul>
			<li style="background-color:cyan;">你只有足够自律</li>
			<li style="color:#f0c;">才能非常自由</li>
			<li>思维孕育行动</li>
			<li>行动培养习惯</li>
			<li>习惯决定命运</li>
		</ul>
	</body>
</html>

注意:当样式冲突时,三种嵌入方式的选择是采取就近原则,即离要修饰的值越近的CSS属性生效;当样式不冲突时,三种嵌入方式的修饰则会叠加使用。

第二章 CSS使用方式

2.1 CSS2选择符(常用)

2.1.1 HTMl选择符

就是直接用HTML标签作为选择符进行修饰

格式:

p{……}	网页中所有p标签都使用此样式

2.1.2 class类选择符

就是在HTML的开始标签中进行class命名,同一网页中,可以命名多个相同的class名称

格式:

.class名{color:red;……}	同一网页中,所有**相同的class名**都使用此样式

p.class名{color:cyan;……}	同一网页中,所有**p标签下的相同class名**都使用此样式

2.1.3 Id选择符

就是在HTML的开始标签中进行ID命名,同一网页中,ID命名具有唯一性

格式:

#ID名{color:#f0c;……}	网页中,ID名为”ID名“的使用此样式

2.1.4 关联选择符

就是对标签下包含的一个标签#进行定义

格式:

ul li{color:#2bf666;……}	网页中,所有ul标签下的li标签都使用此样式

2.1.5 组合选择符

就是多个HTML标签同时使用这一个样式

格式:

body,p,h1,div,sapn,ul,ol,li{margin:0;padding:0;}	网页中的body,p,h1,div,span,ul,ol,li标签都使用此样式

2.1.6 伪类选择符

格式:

a:link{color:green;……}		未访问的链接样式

a:visited{color:red;……}		已访问的链接样式

a:hover{color:skyblue;……}	鼠标移入时的链接样式

a:active{color:blue;……}		鼠标点击链接时的样式

选择符--使用实例

<!DOCTYPE html>
<html>
	<head>
		<title>CSS2选择符</title>
		<meta charset="utf-8">
		<style type="text/css">
			/*HTML标签选择符*/
			p{
				background-color:red;
			}
			/*class类名选择符*/
			.two{
				color:cyan;
			}
			/*ID名选择符*/
			#id{
				color:#f0c;
			}

			/*包含选择符*/
			ul li{
				font-size:20px;
				font-family:宋体	;
			}
			/*组合选择符*/
			ul,li,p,a{
				margin:10px;
				padding:5px;
			}
			/*a{
				text-decoration:none;
			}*/
			/*伪类选择符*/
			a:link{
				color:blue;
			}
			a:visited{
				color:red;
			}
			a:hover{
				color:cyan;
			}
			a:active{
				color:#f0c;
			}
		</style>
	</head>
	<body>
		<h3>CSS2选择符</h3>
		<ul>
			<li id="one">列表一</li>
			<li class="two">列表二</li>
			<li>列表三</li>
			<li>列表四</li>
		</ul>
		<p>你只有足够自律,才能非常自由</p>
		<a href="http://www.baidu.com/" target="_blank">百度一下</a>
	</body>
</html>

2.2 CSS3选择器(了解)

2.2.1 关系选择器

a. 子选择器(E>F)

div>p 即div标签下的所有标签都使用此样式

b. 相邻选择器(E+F)

div+p 选择div标签后紧邻的第一个p标签采用此样式

c. 兄弟选择器(E~F)

div~p 选择div标签后的所有兄弟p标签采用此样式

2.2.2 状态伪类选择器

a. E:hover 设置鼠标移入时的样式

b. E:focus 设置元素在获取到焦点时的样式

c. E:first-child 设置父元素的第一个子元素的样式

d. E:last-child 设置符元素的最后一个子元素的样式

e. E:checked 设置元素被用户选中时的样式(只用于input中的单选框和复选框)

选择器--使用实例

<!DOCTYPE html>
<html>
	<head>
		<title>CSS3选择器</title>
		<meta charset="utf-8">
		<style type="text/css">
			/*设置ul标签下的所有li标签的样式*/
			ul>li{
				color:#2bf666;
			}
			/*设置ul标签相邻的第一个li标签的样式*/
			ul+li{
				background-color:#ccc;
			}
			/*设置ul标签并列的所有的兄弟p标签都使用此样式*/
			ul~p{
				color:#f0c;
			}

			p.hover:hover{
				color:skyblue;
			}
			input:focus{
				background:red;
				border:2px dashed cyan;
			}
			input:checked+span{
				color:red;
			}
			/*设置用户选中元素时添加的内容*/
			input:checked+span:after{
				content:"我被选中了";
			}
		</style>
	</head>
	<body>
		<h3>CSS3选择器</h3>
		<ul>
			<li>列表1</li>
			<li>列表2</li>
			<li>列表3</li>
		</ul>
		<li>列表大大</li>
		<li>列表小小</li>
		<p>你只有足够自律,才能非常自由</p>
		<p class="hover">习惯决定命运</p>

		<ol>
			<li>思维</li>
			<li>行动</li>
			<li>习惯</li>
		</ol>
		用户名:<input type="text" name="username">
		<br />
		性别:
		<laabel>
			<input type="radio" name="sex" value="0"><span>男&nbsp;&nbsp;</span>
		</label>
		<label>
			<input type="radio" name="sex" value="1"><span>女&nbsp;&nbsp;</span>
		</label>
	</body>
</html>

第三章CSS中常用属性

3.1 颜色(Color)

a. 颜色名

red,yellow,green,blue,pink,skyblue,grey,black,white

*b. HEX

HEX为十六进制的正整数 格式为#RRGGBB#RGB

*c. RGB

格式:

a{color:rgb(R,G,B);} RGB中的每个元素的取值为0~255

d. RGBA

RGBA比RGB多了一个设置透明度(A)的,取值为百分比或小数

*e. 图片透明度设置opacity

img{opacity:0.35;}

3.2 字体(Font)

属性 取值 作用
*font-size 像素或百分比(不允许为负值) 设置字体大小
*font-family 宋体、Arial 设置字体
font-style italic(斜体) 设置字体样式
*font-weight bold(加粗) 或用数字(100~900) 设置字体的粗细
font-variant small-caps 设置文本为小型的大写字母

3.3 文本(Text)

属性 取值 作用
text-indent 像素值|em(字符) 设置文本的缩进
text-overflow clip|ellipsis(以...显示多余内容) 设置是否以...显示文本的多余内容
*text-align left|center|right 设置文本的水平对齐方式
text-transform capitalize|uppercase|lowercase 设置文本字母的大小写
*text-decoration none|underline|line-through 设置文本的划线
*text-shadow length1 length2 [length3]&&color 设置文本的阴影及模糊效果
vertical-align top|middle|bottom 设置文本的垂直对齐方式
direction ltr(默认) | rtl(文本由右转向左) 设置文本流的方向
*white-space nowrap 强制在同一行内显示所有文本(overflow)
*letter-spacing 像素值 设置文本或字母的间距
word-spacing 像素值 设置单词的间距
*line-height 长度|百分比|小数 设置文本的行高
*color 与color属性取值一致 设置文本的颜色

颜色、字体、文本属性--使用实例

<!DOCTYPE html>
<html>
	<head>
		<title>CSS中常用属性一</title>
		<meta charset="utf-8">
		<style type="text/css">
			ul{
				width:200px;
			}
			ul li:first-child{
				color:red;
				background-color:#eee;
			}
			li.one{
				text-transform:uppercase;
			}
			li.two{
				color:rgb(102,233,200);
			}
			li.three{
				color:rgba(20,101,222,0.5);
				white-space:nowrap;
				overflow:hidden;
				text-overflow:ellipsis;
			}
			img{
				width:300px;
				opacity:0.4;
			}
			ul>li:last-child{
				font-size:30px;
				font-family:Arial;
				font-style:italic;
				/*font-weight:700;*/
				font-weight:bold;
				/*设置文本为小型的大写字母*/
				font-variant:small-caps;
				/*text-transform:uppercase;*/
				color:#f0c;
				background-color:#eee;
			}
			
			p.one{
				white-space:nowrap;
				overflow:hidden;
				text-overflow:ellipsis;
			}
			p.two{
				text-decoration:underline;
				direction:rtl;
				/*严格按照我设置的顺序进行排列*/
				unicode-bidi:bidi-override;
				text-align:left;
			}
			p.three{
				text-decoration:line-through;
				letter-spacing:3px;
				word-spacing:5px;
			}
			p.four{
				font-size:20px;
				text-indent:2em;
				text-shadow:3px 3px 3px #666;
			}
			p>a{
				font-size:10px;
				text-decoration:none;
				/*vertical-align:-10px;*/
				vertical-align:bottom;
			}
			ol>li{
				line-height:1.5;
				color:#1ea;
			}
		</style>
	</head>
	<body>
		<h3>CSS颜色、字体、文本属性</h3>
		<ul>
			<li>思维孕育行动</li>
			<li class="one">行为习惯 pretty good</li>
			<li class="two">行动培养习惯</li>
			<li class="three">习惯决定命运 你只有足够自律,才能非常自由</li>
			<li>very good</li>
		</ul>
		<!-- 在当前目录下要有一张名为1.jpg的图片 -->
		<img src="1.jpg">
		<p class="one">你只有足够自律,才能非常自由 你只有足够自律,才能非常自由</p>
		<p class="two">你只有足够自律,才能非常自由</p>
		<p class="three">你只有足够自律,才能非常自由 you are pretty!</p>
		<p class="four">你只有足够自律,<a href="#">才能非常自由</a></p>
		<ol>
			<li>你只有足够自律</li>
			<li>才能非常自由</li>
		</ol>
	</body>
</html>

注意:

  1. 使用text-overflow前,需要文本内容强制在同一行显示(white-space),并且将多余内容隐藏(over-flow:hidden;)
  2. text-shadow中的三个值,第一个值控制水平方向,第二个值控制垂直方向,第三个值控制阴影效果。其中,第一、二两个值可以为负数,第三个值为可选项
  3. vertical-align设置文本垂直对齐方式时,需要将要修饰的文本大小设置比父文本小;否则,则需要借助设置像素值的方式让文本进行上移动。
  4. direction设置文本流由右向左转(rtl)时,需要借助unicode-bidi:bidi-override; 去强制按照我设置的规则进行排列顺序。

3.4 边框(Border)

属性 取值 作用
*border 宽度||样式||颜色 综合设置边框的属性
border-color color属性 设置边框的颜色
border-style dashed|solid|dotted|double
3D样式:groove|ridge|inset|outset
设置边框的样式
border-width 像素值 设置边框的宽度
*border-radius 像素值 设置对象使用圆角边框
*box-shadow length1||length2||[length3]||[length4] 设置对象的阴影效果

3.5 背景(Background)

属性 取值 作用
background 颜色||url||repeat||attachmetn||position 设置背景的属性
background-color color属性 设置背景的颜色
background-image url 添加背景图片
background-repeat repeat-x|repeat-y|repeat|no-repeat 设置背景图片如何平铺
background-position 像素值|left|right|top|bottom 设置背景图片的位置
background-attachment fixed(背景图像固定)|scroll(默认值) 设置背景图片是否固定
background-size 像素值 设置背景图片的尺寸大小

3.6 内补白(Padding)

属性 取值 作用
*padding length1||length2||length3||length4 设置对象的四边内部边距
padding-top 像素值 设置对象的顶边内部边距
padding-right 像素值 设置对象的右边内部边距
padding-bottom 像素值 设置对象的底边内部边距
padding-left 像素值 设置对象的左边内部边距

3.7 外补白(Margin)

属性 取值 作用
*margin length1||length2||length3||length4 设置对象的四边外部边距
margin-top 像素值 设置对象的顶边外部边距
margin-right 像素值 设置对象的右边外部边距
margin-bottom 像素值 设置对象的底边外部边距
margin-left 像素值 设置对象的左边外部边距

3.8 定位(Position)

属性 取值 作用
*position static|relative|absolute|fixed 检索对象的定位方式
*z-index auto|整数值
*top 像素值
right 像素值
bottom 像素值
*left 像素值

3.9 布局(Layout)

属性 取值 作用
*display none|block(块)|table(表格)|…… 设置对象显示的类型
*float none|left|right 设置对象如何浮动
*clear none|left|right|both(不允许有浮动) 清楚对象的浮动效果
visibility visible|hidden|collapse 设置对象是否显示
clip rect(1||2||3|| 4)
*overflow visible(不剪切内容)|hidden 设置其指定内容超过宽度及高度如何显示
overflow-x visible(不剪切内容)|hidden 设置其指定内容超过宽度如何显示
overflow-y visible(不剪切内容)|hidden 设置其指定内容超过高度如何显示

行标签和块标签

行标签 块标签
a h1
b div
em p
strong pre
i li
span

3.10 用户界面

属性 取值 作用
cursor ne-resize|nw-resize 设置对象上的移动的鼠标光标样式
zoom normal|数值|百分比 设置对象的缩放比例
……

边框、背景、内外补白、定位、布局、用户界面--使用实例

<!DOCTYPE html>
<html>
	<head>
		<title>CSS中常用属性二</title>
		<meta charset="utf-8">
		<style type="text/css">
			body{
				background-image:url("9.jpg");
				background-size:1000px;
				/*background-repeat:no-repeat;*/
				background-repeat:no-repeat;
				background-attachment:fixed;
			}
			ul li{
				margin:0px;
				padding:0px;
			}
			ul,ol{
				list-style:none;
			}
			ul>li{
				width:200px;
				height:200px;
				border:1px solid red;
				float:left;
				margin:0px 10px;
			}
			ul li:last-child{
				/*border-color:cyan;*/
				border-top-color:#2bf666;
				border-right-color:#f0c;
				border-bottom-color:#71d;
				border-left-color:#1fb;
			}
			ul li.two{
				border-style:dashed;
				border-bottom-style:solid;
				border-width:2px;
				border-bottom-width:3px;
			}
			ul li.three{
				border-radius:30px 10px;
				/*border-top-left-radius:10px;*/
				box-shadow:2px 2px 8px 3px red;
			}
			div.div{
				clear:both;
			}
			ol li:first-child{
				width:200px;
				background:url("map") repeat-x;
				background-position:bottom;
				margin:0px 10px;
				/*background-image:url("2.jpg");*/
			}
			
			/*
			倒影效果没有做出来
			h3{
				box-reflect:below 10px;

			}*/

			div.one{
				width:300px;
				height:500px;
				background-color:#eee;
				/*position:absolute;*/
			}
			/*absolute基于浏览器的位置*/
			div.two{
				width:200px;
				height:200px;
				background-color:cyan;
				position:absolute;
				top:120px;
			}
			div.three{
				width:200px;
				height:200px;
				position:relative;
				margin:30px;
				background-color:#f0c;
			}
			div.four{
				width:2000px;
				height:200px;
				background-color:#aaa;
				position:fixed;
				float:right;
				right:-1800px;
			}
			div.four:hover{
				left:0px;
				
			}
            
			span{
				width:100px;
				height:100px;
				background-color:#333;
				display:block;
				cursor:nw-resize;
				zoom:2;
			}
		</style>
	</head>
	<body>
		<h3>边框、背景、内外补白、定位、布局、用户界面</h3>
		<ul>
			<li></li>
			<li class="two"></li>
			<li class="three"></li>
			<li></li>
		</ul>
		<div class="div"></div>
		<ol>
			<li>1</li>
		</ol>
		<span>very good</span>
		<div class="one">
			<div class="two"></div>
			<div class="three"></div>
			<div class="four"></div>
		</div>
	</body>
</html>

注意:

  1. border,background,margin,padding 在取值时,四个像素值分别代表为上、右、下、左(顺时针)。
  2. 文本倒影效果没有实现出来
posted @ 2018-10-06 11:18  宋小羽  阅读(292)  评论(0编辑  收藏  举报