CSS定义:cascading style sheet 层叠样式表。
语法:
选择器 {
属性名1:属性值1;
属性名2:属性值2;
属性名3:属性值3;
属性名4:属性值4;
}
CSS使用:
1、通过选择器选择上标签
2、在选择的标签上设置样式
选择器分类:
标签选择器: p{}
类选择器: .className{}
id选择器: #id{}
一些常见的样式:
color:red; 文字颜色
font-size:40px;
background-color:blue;
text-decoration:underline;
text-decoration:none; //去掉下划线
一共有三种样式:50px字体、红色、下划线
正确的思路,就是用所谓“公共类”的思路,就是我们类就是提供“公共服务”,比如有红、大、线,一旦携带这个类名,就有相应的样式变化:
所以要总结两条:
1) class可以重复,也就是说,同一个页面上可能有多个标签同时具有某一个类;
2) 同一个标签可以同时携带多个类,每个标签,就去选取自己想要的类: 。
类的使用,能够决定一个人的css水平。
总结:
1) 不要去试图用一个类名,把某个标签的所有样式写完。这个标签要多携带几个类,共同造成这个标签的样式。
2) 每一个类要尽可能小,有“公共”的概念,能够让更多的标签使用。
CSS高级选择器:
直接看代码
s1 s2 后代选择器
s1,s2 并集选择器(选择器组)
s1s2 交集选择器
s1>s2 直接儿子选择器,和后代选择器不一样
s1+s2 下一个兄弟选择器,后面紧挨着的第一个兄弟
盒模型
盒子中主要的属性就5个:width、height、padding、border、margin。
padding:内边距 margin:外边距
盒模型的示意图:
1、
div{
width: 200px;
height: 200px;
padding-left: 10px;
padding-right: 20px;
padding: 40px 50px 60px; // 上右下左(顺时针方向,某一个方向没写就取对边的值)
padding-bottom: 30px;
/*border: 8px solid #000000;*/
border: 8px solid #000;
}
RGB R:red G:green B:blue
200+8*2+50*2=316
200+8*2+40+30=286
有一些标签,默认是带有padding,比如ul标签:
所以做网站时候便于精确计算,把这些默认的padding都去掉
*{
margin: 0;
padding: 0;
}
*效率不高,可以使用并集选择器,罗列出所有标签,这个标签不用背,直接拷贝过来即可。
ul,ol,h1,h2{
margin: 0;
padding: 0;
}
border:
就是边框。边框有三个要素:粗细、线型、颜色。
实线:solid 点:dotted 虚线: dashed
颜色如果不写,默认是黑色。另外两个属性不写,显示不出来边框。
border是一个大综合属性:border:1px solid red;
border属性能够被拆开,有两大种拆开的方式:
1) 按3要素:border-width、border-style、border-color
2) 按方向:border-top、border-right、border-bottom、border-left
-
独占一行( 独占的不是body的一行,而是父容器的一行),不能与其他任何元素并列。
-
能够设置宽、高。
-
如果不设置宽度,那么 宽度将默认变为 父亲的100%。
-
与其他行内元素可以并排。
-
不能设置宽、高。默认的宽度、高度,就是文字的宽度、高度。
|
|
|
-
浮动定位:可以让块元素左右排列(没有失去块级元素可以设置宽和高的优点)。
-
相对定位:可以让元素以自身为目标产生微小的偏移。
-
绝对定位:可以让元素以父类为目标产生很大的偏移。
-
固定定位:可以让元素以窗口为目标产生很大的偏移。