css意思为层叠样式表(层叠性),用于控制网页样式
css作用:1.弥补html语言的不足。2.缩短页面代码,加快访问速度。3代码减少,页面文件就会小,占用网络宽度少,打开速度变快,提高用户体验。
css语法由选择符和声明组成,声明由属性和属性值组成
选择器{属性:属性值;属性:属性值;}
1)声明比放在花括号内,属性和属性值链接,
2)每个声明用分号结束
3)当一个属性有多个属性值时,每个属性值之间用空格隔开,不分先后。
4)在书写样式中,空格、换行等不影响属性显示。
css样式表有内部样式表、外部样式表、内联样式表
内部样式表可以写在任何地方,但一般都写在<head>方便与HTML区别开
<style type="text/css">
css语句
<./style>
type="text/css">可省略
外部样式表(常用)
第一种(常用)
<head>
<link rel="stylesheet" href=" "/>
</head>
第二种
<style type="text/css">
@import url("目标路径");
</style>
两者区别
1.@import是css提供的一种方式,只能加载css, link是HTML的标签,除了加载css还能定义css
2.加载顺序:link引用的css会合页面一起加载,而@import引用的css页面要等到页面全部被下载出来再被加载
3.兼容性,link兼容性比@import好,@import在低于ie5的识别不了
4.js可以控制dom去改变link里面的样式标签,而@import不可以
行内样式表(又名内联 内嵌 )
<标签 style="属性1:属性值; 属性2:属性值2;属性3:属性值3..."></标签>
权重:内联>外部>内部
css选择器
常用的
类型选择器 | div{} p{} | 权重:0001 |
类选择器 | class | 权重:0010 |
ID选择器 | #id名{} | 权重:100 |
伪类选择器 | a:link,a:visited e:hover,e:active | 权重:0010 |
通配符 | *{} | 权重: |
群组选择符 | 选择符1,...选择符2,{} | 权重:它本身的假起来 |
包含选择符 | 选择器1(父级) 选择器2(子级){} | 权重:包含的选择符权重加起来 |
属性选择符 | e:[] | 权重:0010 |
伪对象(伪元素)选择符 | :after :before | 权重:0001 |
内联样式权重为1000
若是权重相同,执行后写的样式
类选择器
<标签 class="name"></标签>
css: .name{属性:属性值;}
id选择器
<标签 id="name"></标签>
css:#name{}
一个id名只能出现一次,起名只能用英文且不能用标签和属性起名
伪类选择器
a:link{} 未访问时链接状态,
a:visited{} 已访问时链接状态
e:hover{}鼠标悬停时,元素状态
e:active{}鼠标点击时。元素状态
link和visited是a标签专属,hover和active其他元素也可以使用
1.当四个伪类选择器一起使用的时候,应注意他们的顺序:link visited hover active
通配符
*{属性:属性值}
此标签使用所有的标签,通常用于清除外边距和内填充
*{margin:0;
padding:0;}
群组选择器
语法:选择符1,选择符2...选择符5{属性:属性值;}
多个选择符使用相同的样式,可以使用群组选择符,之间使用“,”
包含选择符
语法:选择器1(父级) 选择器2(子级){}
<style>
div p{}
</style>
<div><p></p></div>
属性选择器
e:[attr(属性)] 为有attr的元素添加样式
e:[attr=”val”]有attr属性值是”val”的元素添加样式
e:[attr*=”val”]attr属性值含有”val”的元素添加样式
e:[attr^=”val”]attr属性值开头是”val”的元素添加样式
e:[attr$=”val”]attr属性值结尾是”val”的元素添加样式
伪元素(伪对象)选择器
:before;给元素里添加第一个子元素
:after 给元素添加最后一个子元素
e:before{
content:"内容";
display:block;
width: ;
height: ;
}
e:first-letter给元素中第一个字添加样式(全都适应)
e:first-line给元素第一行添加样式