列布局—自动居中(浮动布局)

 W3C倡导结构、样式、行为分离

 css中存在三种机制:标准文档流(Normal)、浮动(Floats)、绝对定位(Absolute position)

一个布局的开始一定要养成初始化网页的盒子模型:  *{margin:0;padding:0;}

学习三个点:标准文档流、块级元素、margin属性

标准文档流:从上到下,从左到右,输出内容   由块级元素和行级元素组成

块级元素:从左到右撑满页面,独占一行  触碰到页面边缘时,会自动换行

行级元素:能在同一行内显示  不会改变HTML文档结构

块级元素和行级元素都是盒子模型

盒子模型——网页布局的基础:边框(border)、外边框(margin)、内边框(padding)、盒子中的内容(content)

盒子模型尺寸=边框+外边框+内边框+盒子中的内容尺寸    

                例:一个div的边框为3px,内边框为2px,右外边框为10px,往其内部插入一张宽度为120px的图片,则div的宽度为多少  

 div宽度=3px(border)+2px(padding)+10px(padding)X 2+120px(content)

 

 

📩📩📩实现自动居中:

1、给父级div设置包裹元素   .wrapper{width:770px;margin:0 auto;}    margin的上下不用设置

 auto,会根据浏览器的宽度自动的设置两边的外边距➡️原理:外边距=(浏览器的宽度-外包含的宽度)/2

如果设置margin为auto属性时,居中是就不要设置浮动或绝对定位属性

例如:使用关键自动居中margin:10px auto;width:80%;

右设置为auto,一定要设置width为一个定值,不能为100%

2、块级元素实现横向居中      css中规定的第二种定位机制—浮动布局能够实现横向多列布局,最常见的横向两列布局、横向三列布局

通过设置float属性实现,分为三个属性值:left左浮动、right右浮动、none不浮动
特点:元素会左移或右移,直至碰到容器为止

 设置了浮动元素,仍处于标准文档流中

当元素没有设置浮动宽度时,而设置了浮动属性float:left,浮动的宽度随着内容的变化而变化
当元素设置浮动属性时,会对相对的元素产生影响,相邻元素特指紧邻后面的元素……两个相邻的块级元素设置了左右浮动时相邻后面的元素会受到影响,

       一般清除浮动的方法

       a、clear属性—常用clear:both
           clear:left或clear:right这需要明白是哪个元素,否则会不起作用
       b、width:100%(或固定宽带)+overflow:hidden同时使用
           空标签br不建议使用清除浮动,br虽然能清除浮动但,对于页面是没有意义的,不使用无意义的空标签是w3c的标准

 

 

 

posted on 2016-10-17 21:07  养猫者  阅读(621)  评论(0编辑  收藏  举报

导航