盒子的上下层:margin--background-color--background-image--padding--content--border(最外层)

计算一个盒子宽 =  内容的宽(width) + 左内边距 + 左边框 + 右内边距 + 右边框

注意:(1)内边距撑大盒子宽高,   限制某个盒子宽高,  添加内边距,  宽,高,相应的减去内边距

   (2)垂直方向的外边距合并:

      (外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距。

         合并后的外边距的高度等于两个发生合并的外边距的高度中的较大者。)

第一种情况: 父盒子与子盒子的上外边边距的合并

    前提条件:父盒子没有上边框,或者没有设置上内边距,  当来设置子盒子的上外边距,

    父元素没有上外边距(0px) 把子元素的上外边距加到父元素上外边距,

    如果父元素也设置上外边距, 以这两个大者为准

第二种情况:  上下兄弟盒子的垂直方向的外边距合并

    当上盒子设置下外边距, 下盒子设置上外边距, 进行合并, 谁大以谁为准

常用:margin:0px auto;


float:实现网页布局, 显示了块级元素可以共享一行

    块级元素: 独占一行,   可以设置宽高,

    内联元素: 与其他内联元素共享一行,  不可以设置宽高,

浮动: 让元素飘起来

    块级元素浮动, 块级元素与其他元素共享一行,可以设置宽高

    内联元素浮动: 与其他内联元素共享一行, 可以设置宽高

浮动的影响:

1) 对自己的影响

    这个元素默认的宽, 等于内容的宽

2) 对后面兄弟元素的影响

    后面的兄弟元素往上移, 浮动元素所占的行空间释放

3) 对父元素的影响

      父元素的高减少, 由原来的高 变成 减去浮动元素的高,

如果某个元素浮动, 后面的兄弟元素也浮动, 后面的兄弟与前的浮动元素,位于同一行(前一个浮动元素后面的空间存放后面浮动元素),

如果前一个浮动元素后面的空间不存放后面浮动元素, 后面的浮动元素从新的一行浮动

浮动影响对应解决方案:

1) 对自己的影响,  通过设置width属性

2) 对后面兄弟元素影响, 后面兄弟元素,往前移,

后面元素不往前移:

    clear 属性规定元素的哪一侧不允许其他浮动元素。

3) 对父元素的影响, 减少父元素的高, 特别,如果有一个父元素,它的子元素全部浮动,  默认的父元素的高, 几乎为0 , 影响父元素后面的兄弟

解决父元素高的问题:

1) 设置父元素的高,  很少使用(元素的高,一般都是被内容撑高,很少设置高)

2) 内墙法: 在父元素最后的位置,添加一个子元素, 配合使用clear属性

Clear:both,  W3C官方推荐

缺点:添加了一个新的元素

3) 外墙法: 结合css的伪元素, , 外墙法, 在父元素的伪造一个元素, 清浮动

  伪元素中必须包含一个content样式属性, 伪元素的内容,

  要求这个伪元素的display为block;

  .main:after{
                content: "";
                clear: both;
                display: block;

4) 样式属性Overflow:  溢出的处理 (推荐)

常用的hidden;

在父元素中设置overflow:hidden;增加父元素的高, 父元素的高等于全部浮动子元素中最高的高

display的默认值为none;不显示

    block;以块级元素显示

    inline;以内联元素显示


定位: 可以实现网页布局, 作为浮动一个补充, 把某个元素定在某个位置,出现层叠的效果

样式属性:position:

      相对定位(relative), 绝对定位(absolute), 固定定位(fixed)

一般使用:

  父类 :position: relative;

  子类:position: absolute;

相对定位:  参考点: 定位元素原来的位置,  原来的位置保留

1) 对自己的影响,  默认的宽还是父级元素的宽, 移到

2) 对后面的兄弟元素的影响, 没有影响

3) 对父元素的影响,对父元素的高没有影响

使用场景: 作为绝对定位的参考点,   父相子绝

绝对定位: 参考点: 父辈元素中离我最近的一个定位元素作为参考点

1)  对自己的影响,  默认的宽,等于内容的宽

2) 对后面的兄弟元素的影响,  往前移

3) 对父元素的影响,父元素的高减少,

如果绝对定位的父辈元素没有定位元素, 参考点: 浏览器窗口

固定定位:   参考点: 浏览器的可见区域,屏幕,  IE6不支持

1)  对自己的影响,  默认的宽,等于内容的宽

2)对后面的兄弟元素的影响,  往前移

3) 对父元素的影响,父元素的高减少,

悬挂窗口, 窗口在屏幕的某个位置

z-index: 设置元素的堆叠顺序。 一定要在定位元素中才有效

值: 数字,  数字越大, 位于上层, 可以负数, 默认值0

透明: opacity: 设置透明度:  0~1  0:  全透明   1: 不透明(,默认), 0.5 半透明

Css3: 圆角: border-radius: 设置圆角, 值;圆角的半径

CSS盒子模型(boeder)+浮动(float)+定位(position)的更多相关文章

  1. {前端CSS} 语法 Css的几种引入方式 css选择器 选择器的优先级 CSS属性相关 背景属性 边框 CSS盒子模型 清除浮动 overflow溢出属性  定位(position)z-index

    前端CSS CSS介绍 CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素,给HTML设置样式,让它更加美观. 当浏览器读到一个样式表,它就会按照这个样式表来对文 ...

  2. 前端之CSS——盒子模型和浮动

    一.CSS盒子模型 HTML文档中的每个元素都被描绘成矩形盒子,这些矩形盒子通过一个模型来描述其占用空间,这个模型称为盒子模型. 盒子模型通过四个边界来描述:margin(外边距),border(边框 ...

  3. css的核心内容 标准流、盒子模型、浮动、定位等分析

    1.块级元素:如:<div></div>2.行内元素:如:<span></span>从效果中看块级元素与行内元素的区别: 通过CSS的设置把行内元素转换 ...

  4. HTML+CSS教程(六)浮动-float+定位-position+居中问题

    一.浮动(float)1.文档流:是指盒子按照 html 标签编写的顺序依次从上到下,从左到右排列,块元素占一行,行内元素在一行之内从左到右排列,先写的先排列,后写的排在后面,每个盒子都占据自己的位置 ...

  5. CSS(6)---通俗讲解浮动(float)

    CSS(6)---通俗讲解浮动(float) CSS有三模块:盒子模型.浮动 .定位.上篇博客有讲到 盒子模型地址:CSS(5)---通俗讲解盒子模型 一.理解浮动 1.概念 概念 浮动可以理解为让某 ...

  6. Web前端篇:CSS常用格式化排版、盒模型、浮动、定位、背景边框属性

    目录 Web前端篇:CSS常用格式化排版.盒模型.浮动.定位.背景边框属性 1.常用格式化排版 2.CSS盒模型 3.浮动 4.定位 5.背景属性和边框属性 6.网页中规范和错误问题 7.显示方式 W ...

  7. <转>HTML+CSS总结/深入理解CSS盒子模型

    原文地址:http://www.chinaz.com/design/2010/1229/151993.shtml 前言:前阵子在做一个项目时,在页面布局方面遇到了一点小问题,于是上stackoverf ...

  8. 从CSS盒子模型说起

    前言 总括: 对于盒子模型,BFC,IFC和外边距合并等概念和问题的总结 原文地址:从CSS盒子模型说起 知乎专栏:前端进击者 博主博客地址:Damonare的个人博客 为学之道,莫先于穷理:穷理之要 ...

  9. css盒子模型、垂直外边距合并

    css盒子模型由四部分组成:内容(content).填充(padding).边框(border).边距(margin),其中css样式中定义的width属性是定义内容区域的宽度,正常情况下,设置了内容 ...

随机推荐

  1. vue.js 中使用(...)运算符报错

    今天在起别人项目的时候, 发现报错. 这个错误是,项目中不识别es6的扩展运算符, 解决方式很简单. // 第一步 cnpm install babel-plugin-transform-object ...

  2. MySQL的万字总结(缓存,索引,Explain,事务,redo日志等)

    hello,小伙伴们,好久不见,MySQL系列停更了差不多两个月了,也有小伙伴问我为啥不更了呢?其实我去看了MySQL的全集,准备憋个大招,更新篇长文(我不会告诉你是因为我懒的). 好了,话不多说,直 ...

  3. 置顶,博客中所有源码 github

    所有项目源代码,开源地址. 作者 github 主页 https://github.com/nejidev 目前开源项目有: 1, linux tea5767 at24c08 mmap 实现fm 收音 ...

  4. django 验证码图片生成视图函数

    def verify_code(request): import random # 定义验证码图片背景颜色 宽和高 bgcolor = (random.randrange(20,180),random ...

  5. centos-Linux静态IP地址配置

    首先在VMware菜单中点击编辑-->虚拟网卡编辑器,查看NAT网段(子网掩码.网关.起止IP地址) 1.用nmcli命令配置IP地址 [root@Core ~]# nmcli connecti ...

  6. 用 jQuery 实现表单验证(摘抄)——选自《锋利的jQuery》(第2版)第5章的例题 5.1.5 表单验证

    5.1.5 表单验证 表单(form)作为 HTML 最重要的一个组成部分,几乎在每个网页上都有体现,例如用户提交信息.用户反馈信息和用户查询信息等,因此它是网站管理者与浏览者之间沟通的桥梁.在表单中 ...

  7. 【tomcat系列】详解tomcat架构(上篇)

    java中,常用的web服务器一般由tomcat,weblogic,jetty,undertwo等,但从用户使用广泛度来说,tomcat用户量相对比较大一些,当然这也基于它开源和免费的特点. 从软件架 ...

  8. (转)ARM GNU常用汇编语言介绍

    ARM GNU常用汇编语言介绍 原文地址:http://zqwt.012.blog.163.com/blog/static/120446842010445441611/ ARM汇编语言源程序语句,一般 ...

  9. Java的反射基础技术

    今天本人给大家讲解一下Java的反射基础技术,如有不对的或者讲的不好的可以多多提出,我会进行相应的更改,先提前感谢提出意见的各位了!!! 什么是反射? 反射它是根据字节码文件可以反射出类的信息.字段. ...

  10. 初学嵌入式Linux

    初学嵌入式Linux,感觉需要学习的东西太多了.把学习过程中的收获和问题记录在这里,算是一份经验吧.     前面利用开发板带的现成的东西step by step让Linux 2.4.19在开发板上跑 ...