CSS(层叠样式表)
创建css文件方式
- command+N新建文档输入文件名和后缀,然后保存
- 通过slideBar插件,右键创建
- 通过终端,touch+space+文件名和后缀创建
css的引入方式
1.行间样式
<div style="color:blue;width:200px;height:200px">
<span></span>
</div>
优点:(1)快速定位标签(2)优先级高(3)不会额外增加请求
缺点:(1)破坏html结构(2)内容样式不分离(3)不能复用(4)冗余代码多
2.内部样式
<head>
<style type="text/css">
body{
margin:0;
}
div{
width:200px;
height:200px;
}
</style>
</head>
优点:(1)不会破坏html结构(2)不会额外增加请求(3)可以实现样式复用
缺点:(1)没有完全实现内容与样式的分离(2)多个html文件之间不能复用样式文件
3.外部样式
<head>
<link rel="stylesheet" type="text/css" href="index.css" />
</head>
优点:(1)不会破坏html结构(2)实现内容样式的分离(3)不会有冗余代码(4)多个html文件可以复用样式文件
缺点:(1)增加了额外请求
通过比较来看,外联式css是我们理想的选择。
css选择器
1.选择器分类
(1)标签选择器
标签名{}
作用是选择系列标签,对该系列标签进行样式设置,做不到精确设置
(2)id选择器
#id名{}
id名要唯一,可以做到精确设置,但是不能复用
(3)class类选择器
.class名{}
class名可以复用,样式可以复用
(4)后代选择器
选择器1 选择器2
(5)群组选择器
选择器1,选择器2
(6)通配选择器
*
过于暴力,不建议使用
2.选择器的优先级
* < 标签 < class < id < style < !important
0 < 1 < 10 < 100 < 1000 < 10000+
后代选择器为优先级相加,群组选择器无优先级之说
- 相同等级的选择器,样式冲突的情况下,后面覆盖前面(以后面为准)
- 样式冲突的时候,谁的优先级高,就以谁为准。优先级相等,以后面为准
- 选择器的优先级不能跨级比较(主要针对后代选择器)
文本设置
color 文本颜色
font-weight 文本的粗细
font-style 设置斜体:italic斜体;normal正常
text-align 文本的水平方向设置:left;center;right
text-decoration 文本划线位置:underline;line-through;overline;none
text-indent 文本缩进:px/em
vertical-align 文本和元素的垂直方向设置:top;middle;bottom
必须配合display:table;display:table-cell使用line-height 行间距:纯数值/px
direction 文本输入方向设置:ltr默认文本方向从左到右/rtl文本方向从右到左
尺寸设置
width 设置容器宽度 单位:px/%/vh
height 设置容器高度 单位:px/%/vh
min-width 设置最低宽度 内容不足容器的宽度时,以容器宽度为准;内容宽度超出容器宽度时,以内容宽度为准
min-height 设置最小高度 内容不足容器高度时,以容器高度为准
可参考上文的CSS单位。
盒模型
盒模型是一个概念,是一些css属性的集合
width
height
padding
margin
块级标签display:block
标准盒模型
IE盒模型
boxsizing:border-box;
border:border-width 3px默认值;border-color 继承父级的字体颜色;border-style solid实线/dashed虚线/dotted点状线
背景
background-color
background-image:url()
background-repeat:repeat-x/repeat-y/no-repeat
background-position:0 0;
background-size:0 0/cover自适应/contain自适应(改变后会留白)
css sprite 雪碧图技术
显示与隐藏
设置display:none隐藏/block显示
设置opacity(透明度):0透明/1完全不透明
设置visibility:hidden隐藏(但还占着地方)/visible显示
float浮动
float:left;right;none
清除浮动的方法:
给浮动元素的父级设置高度(达到清除浮动的影响)
给浮动元素的父级设置overflow:hidden(达到清除浮动的影响)
给浮动元素的下方(同级)新增标签,并设置clear属性(真正的清除浮动)
position定位
position:relative/absolute/fixed
附加样式属性:left;top;bottom;right;z-index层级
relative相对定位 本身没有任何改变,设置了left相关属性才会位移,一般作用于设置绝对定位元素的父级
absolute绝对定位 元素本身会发生改变,尺寸由内容撑开,设置了left相关属性才会位移:(1)父级元素有position相关属性的话,该元素会以父级元素定位(2)父级元素没有position相关属性,该元素会以窗口定位
fixed固定定位 元素本身会发生改变,尺寸由内容撑开,设置了left相关属性才会位移(1)一般使用场景,窗口固定位置:比如广告、回到顶部(2)固定在窗口的某个位置