CSS:可叫作层叠样式表 用于结构和表现分离
HTML只负责展示内容,搭建网页的基本结构,所有样式都由CSS来进行设置
<body style="text-align: center;">
内容
body>
"样式文件的地址" type="text/css" rel="stylesheet"/>
type(样式文件类型) text/css:由CSS构成的文本类型
选择器{
样式属性1:值1;
样式属性2:值2;
样式属性n:值n
}
颜色名:red、green、blue 等
十六进制:#rrggbb(r,g,b是三原色,十进制取值在0~255之间,十六进制在0 ~ f之间)
函数方式:rgba(r,g,b,alpha)alpha为透明度(用百分号表示)
rgb和十六进制的转换 rgb(1,74,149)
1/16=0余1,74/16=4余10,149/16=9余5 因此十六进制表示为 #014a95
.png:体积小,适合于网络传输 ,具有存储形式丰富的特点,保证背景透明
.jpg(.jpeg):体积大,不适合于网络传输 对色彩信息保留较好,产品类图片常用
.gif:只能存储256色,显示简单图形和字体,保存透明效果和小动画效果
psd图像格式是PS专用格式,不能放到页面中。可存放图层、通道、遮罩等多种设计稿,可以直接从上面复制文字,获得图片,测量大小和距离
注意: url(‘图像的全名’)
技巧:
CSS没有提供文字垂直居中的代码,可以用此方法解决:
让文字的行高(line-height)等于盒子的高度(height),就可以让文字在当前盒子内垂直居中
行高的上空隙和下空隙把文字挤到中间,如果行高小于盒子高,文字会偏上,反之,文字会偏下
li{
list-style-image: url(./image/user.png);
list-style-type: none;
list-style-position: inside;
}
注意:
①outside:列表项目标记放置在文本以外,且环绕文本不根据标记对齐
②inside:列表项目标记放置在文本以内,且环绕文本根据标记对齐(文本居中时,图标与文本一同居中)
标签名{
样式属性:值;
}
#id属性值{
样式属性:值;
}
注意:
.class属性值{
样式属性:值;
}
注意:
*{
样式属性: 值;
}
'E’代表标签名 ,'att’为标签的属性
举例说明:
a[title^='bai']{
text-decoration: none;
/* 去掉文本的下划线 */
}
a[title$='123']{
text-decoration: none;
}
a[title*='an']{
text-decoration: none;
}
<body>
<a href="http://www.baidu.com" title="baidu">百度a>
<br><br>
<a href="http://www.sina.com.cn" title="xinlang">新浪a>
<br><br>
<a href="http://www.hao123.com" title="hao123">hao123a>
body>
多个选择器混合使用,之间用逗号隔开
元素1,元素2 {样式声明}
选择多种元素,定义同样的样式
ul,div,#s1,.s2{
color:red;
}
外层标签写前面,内层标签写后面,中间用空格分隔
元素1 元素2 {样式声明}
选择元素1里面的所有元素2(后代元素)
ul li {
color:red;
}
h1>strong{
color: blue;
}
1)用+连接两个选择器 第二个元素必须紧跟第一个元素
div>p+div{
/* div紧跟p之后 */
color: chartreuse;
}
2)用 ~ 连接前后选择器 不需要紧跟
div>p~div{
color: darkblue;
}
1)元素伪类:
2)链接伪类:
/* 用于超链接 */
a:link{
font-size: 25px;
font-family: '宋体';
color:red
}
a:visited{
font-size: 35px;
color:green;
}
a:hover{
font-style: italic;
font-size: 45px;
color: pink;
}
a:active{
font-weight: bolder;
color: yellow;
}
实际开发中经常的写法:
a{
color:#333;
text-decoration:none;
}
a:hover{
color:#369;
text-decoration:underline;
}
注意:
①E对象必须是某个对象的子元素
②hover和active不仅适用于超链接标签,还适用于段落p标签等
顺序: link(正常状态) > visited(访问过后的状态) > hover(鼠标放上去的状态) > active(鼠标按下并未抬起的状态)
3)focus伪类:
用于获取焦点的表单元素,一般情况类表单元素才能获取
input:focus{
background-color:yellow;
}
相同选择器给设置相同的样式,此时一个样式就会层叠另一个冲突的样式
层叠性原则:
书写CSS样式表时,子标签会继承父标签的某些样式
P{
color : "red";
}
<p>
你好
<span>内容span>
p>
子元素可以继承父元素的样式(text-,font-,line-元素开头的,以及color属性)
注意: 边框属性、定位属性、内外的间距属性、元素的宽高属性、布局属性、背景属性不具有继承性
行高的继承:
body{
font:12px/1.5 Microsoft YaHei;
}
选择器的权重值:
举例说明:
<body>
<p class="father" id="header">
<strong class="blue">你好呀strong>
p>
<div>你好呀div>
body>
/* 子标签选择器:选择p标签下的子标签strong */
p strong{
/* 权重1+1 */
color: black;
}
strong.blue{
/* 权重1+10 */
color: blue;
}
.father strong{
/* 权重10+1 */
color: yellow;
}
p.father strong{
/* 权重1+10+1 */
color: orange;
}
p.father .blue{
/* 权重1+10+10 */
color: gold;
}
#header strong{
/* 权重100+1 */
color: pink;
}
#header strong .blue{
/* 权重100+1+10 */
color: red;
}
注意: