1:发现有个属性float含义有点奇怪,(float->浮动)啥意思?
原来是相对于父布局的位置,比如说居于父布局的左边还有右边
因为有了浮动属性导致父布局显示的时候不能包含浮动控件,这时候就需要在父布局最下面加入clear:both属性,这样子父布局显示的区域才能包含浮动控件,例如父布局的边框,背景等的正常显示。
2:html元素分为
块级元素:特点是:1:可以用css改变宽高,独占一行,主要有,div,form,p,ul,li,ol
行级元素(inline 也叫内联元素):特点是:不可以通过css改变宽高,不独占一行,主要有span,em,strong,a,del
行级块元素:可以css改变宽高,但是又不独占一行,例如:img
3:position
absolute(脱离原有位置进行定位,参照往上的含有定位属性(position)的控件进行定位)。
relative 不影响自己之前的定位,参照自己之前的位置进行偏移。
fixed 和absolute差不多,但它是参照屏幕进行定位(可以实现悬浮窗口的广告)。
一般可以把参照的元素设置为relative,操作的元素设置为relative,就可以实现两个元素之间的相对定位。
4:系统的两个bug
1:marginTop合并:第一父级的div下面的div设置marginTop无效(他和父级的marginTop合并了,谁大听谁的):解决办法启动bfc渲染规则解决:怎么启动:1:positiong:absolute 2:diaplay:inline-block;3:float:left/right;overflow:hidden(这个属性表示子元素超过父级元素的部分是展示还是掩藏)。
2:上下两个div的,上面div的margin-bottom和下面div的margin-top合并,谁大听谁的,解决办法就是只设置一个即可,也可以启动bfc解决,注意overflow设置自己无效,要嵌套一个div设置。
5:flow:浮动模式(float属性),html布局模式,有三种,盒子模式(默认),层级模式(position),浮动模式(flow)浮动模式块级元素看不到(何为看不到,两个元素并列排,如果后面的元素看不到前面的元素,就会直接排在前面元素的上面,而不是他后面),(注意:clear浮动在块级元素上面才会生效),其它启动bfc的和文本类属性以及文本都能看得到。
6:样式权重排列:!important,行间样式,ID,class|属性|伪类,标签|伪元素,通配符。
7:凡事设置了float left/right,position:absolute,会在内部将元素的display修改为inline-block元素。