概述


盒子模型

盒子模型的概念:

height和width表示的是内容的高度和宽度。



overflow属性:
当内容溢出盒子框时的属性。


border属性


hr水平分割线不能设置颜色样式,有限制。
padding属性和margin属性
浏览器除了对字体字号等有一个默认值之外,对padding和margin属性也有,所以在定义这两个属性时首先要对其默认值清零。

margin属性和padding属性可以取值的单位有:px和%(外层盒子的高度和宽度),上右下左四个取值。
以margin为例:

盒子模型margin

用margin属性的时候要注意两点:
(1)div标签要换行,是独占一行的
(2)使用margin属性时要注意,两个盒子在垂直方向上的margin会合并。

margin属性还可以设定盒子的水平居中,将左侧和右侧的值取值为auto

案例
大盒子里面有三个并列的图片


图片之间有一个浏览器默认设定的空白距离

CSS定位
概述
对盒子进行定位
定位方式分为三类:(1)文档流(2)浮动定位(3)层定位

文档流flow
默认的方式,相当于平常写字一样,从上到下,从左到右
浮动定位float
想要盒子并列排列一般采用浮动定位
层定位layer
使用position属性设定,像图层一样前后层叠在一起
文档流定位
元素分类:block、inline、inline-block
元素类型装换:display属性
block元素特点:
-独占一行
-元素的height、width、margin、padding都是可以设置的
常见的block元素:
div、段落、列表、标题、表格、表单等

将元素显示为block类型的元素:

可以设置height、width、margin、padding
inline元素特点:
-不单独占一行
-width、height不可设置
-width是由元素里面的文字和图片的宽度决定的,不能改变
常见的inline元素:<span>、<a>
将其他元素显示为inline元素:display:inline;

inline元素默认是水平排列,但是有一个间距问题,一般最简单的方式就是将inline类型转换为block等其他类型的元素,或者在a标签外面套上p标签或者ul标签。
inline-block元素:
-不单独占一行
-元素的height、width、margin、padding都可以设置
常见元素:<image>
显示为inline-block元素:display:inline-block
display属性可以设置为四种值

浮动定位float

float属性将div实现横向多列布局
left——向左浮动
right——向右浮动
none——不浮动







将第二个盒子的clear设置为right,表示它的右侧不会有浮动元素,所以要另起一行。

为了不让footer卡在右侧,将其clear属性设置为both
层定位



z-index可以是负数







一般将父元素定义为相对定位,子元素定义为绝对定位,这样当我们移动父元素时,子元素也会跟着一起移动。



将子元素(叶子)的top值设为负数。
如果在多个层相嵌套的情况下,我们可以将最外面的父元素设置为相对定位,被嵌套的父元素和子元素设置为绝对定位就行了。
网友评论