盒子模型是网页元素所占据页面窗口的矩形范围,是网页布局的核心基础之一,这里的盒子模型与我们平常收到的包裹类似。

一个包裹从内到外,分为真实物品部分,物品与外壳之间的填充区,外壳的厚度,当多个包裹放置在一起,包裹与包裹之间的距离等要素组成。那么放到网页布局来说,也就是盒子模型。盒子是一个矩形区域,他从内

到外分为宽高度,填充,边框,边距。外边距就是该元素占据的矩形空间。元素标签通常所设置的宽高值的是内容区域的大小,从内向外看一次为填充,边框,边距,而填充区域也为背景区域。

1 两个相邻块元素,在垂直方向边距不会存在叠加效应,这个时候选取上下元素2者中边距最大者作为真实边距

1.1 两普通文档刘中的上下垂直方向

1.2 两普通文档流中包含关系,容器与容器的子元素 取较大者

1.3 没有高度的块元素

2 两相邻内联元素(inline-block),即一行内在水平方向上存在边距叠加效应。

3 绝对布局中必须指定元素宽高,因此绝对布局无法做到宽高自适应。

4 使用div+css与table布局的比较

1) 维护方面:css样式使用外联文件方式分离,易于维护,同时利于网络请求,还有css的选择符使得css代码复用

2)结构方面:table结果复杂,不利于重构

5 绝对定位和相对定位

绝对定位:是当前元素处于有指定定位的祖先元素为参考,进行绝对位置设置,也就是说将当前元素指定为绝对定位后,他将向上级节点寻找是否存在有指定定位设置的元素作为祖先参考,直到找到html根节点

绝对定位脱离文档流,因此后面的元素会占据该元素之前的位置,而元素本身将叠加在现有元素上面,因此z-index也就专门为这些脱离文档流的元素所设计

相对定位:相对定位并不脱离文档流,相应的常常用来设定元素的定位,或者设置左上右下的位置进行偏移,但是但是,即便是该元素在显示效果上偏移了,但是实际本身原有位置任然属于该元素本身,也就是说

后续元素不会占据该元素原有位置。

css那些事儿2 盒子模型的更多相关文章

  1. css的两种盒子模型

    css的两种盒子模型:W3C标准盒子模型.IE盒子模型 两者的相同之处:都包含margin.border.padding.content 两者的不同之处:W3C标准盒子模型的content部分不包含其 ...

  2. CSS Box Model(盒子模型)

    CSS Box Model(盒子模型) 一.简介 所有HTML元素可以看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用. CSS盒模型本质上是一个盒子,封 ...

  3. [CSS属性设置,盒子模型,网页布局]

    [CSS属性设置,盒子模型,网页布局] CSS属性设置 1. 宽和高 width:属性可以为元素设置宽度. height:属性可以为元素设置高度. 块级标签的宽度不修改的情况下默认占浏览器的一整行,块 ...

  4. CSS魔法堂:盒子模型简介

    本文讨论的是块级盒子(Block-level box)的盒子模型(Box Model) 一.W3C标准的盒子模型   二.IE盒子模型 三.两种模型的区别 W3C标准盒子模型: 外盒模型 元素空间宽度 ...

  5. 【转】CSS(10)盒子模型

    CSS中, Box Model叫盒子模型(或框模型),Box Model规定了元素框处理元素内容(element content).内边距(padding).边框(border) 和 外边距(marg ...

  6. css笔记17:盒子模型加强版的案例

    1.先看看经典案例效果图,导出思路: 分析:思路 基本结构 <div> <ul> <li><img src=""/> </li ...

  7. css笔记16:盒子模型的入门案例

    1.案例一: 效果图如下: (1)box1.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&quo ...

  8. css笔记15:盒子模型

    1.流 流:html元素在网页中显示的顺序 标准流:在html文件中,写在前面的元素在前面显示,写在后面的html元素在后面显示. 非标准流:在html之中,当某个元素脱离了标准流,那么它处于非标准流 ...

  9. css案例学习之盒子模型

    定义:每个盒子都有:边界.边框.填充.内容四个属性: 每个属性都包括四个部分:上.右.下.左:这四部分可同时设置,也可分别设置:里的抗震辅料厚度,而边框有大小和颜色之分,我们又可以理解为生活中所见盒子 ...

随机推荐

  1. CentOS7 宝塔搭配git 实时更新项目源码

    上一篇文章 介绍了如何在CentOS7上 搭建GIT环境 详见链接:https://www.cnblogs.com/mverting/p/10206532.html 本章主要介绍git如何和wdcp搭 ...

  2. JavaScript&jQuery 基本使用

    * 最近连续加班加点三周* 遭不住了 ...* 来点 js / jq 的货* 一个人撸PHP 撸HTML 撸CSS 撸JavaScript 撸jQuery* 不管有没有用记录一下** 1:jQuery ...

  3. ElasticSearch5插件安装

    http://blog.csdn.net/napoay/article/details/53896348 #更新 sudo yum update -y sudo rpm -ivh http://dl. ...

  4. CRM2Stark组件

    CRM stark组件 开启新项目:CRM 再创建一个应用app02(python manage.py startapp app02 或者是工具栏:run...task:执行startapp app0 ...

  5. python七类之整型布尔值

    整型与布尔值 一.关键字:整型 --->int     布尔值----->bool  : True  真  False  假 1.整形和布尔值都是不可变得不可迭代的数据类型 2.整型: 主 ...

  6. mysql库地址

    https://dev.mysql.com/downloads/connector/

  7. (数据科学学习手札41)folium基础内容介绍

    一.简介 folium是js上著名的地理信息可视化库leaflet.js为Python提供的接口,通过它,我们可以通过在Python端编写代码操纵数据,来调用leaflet的相关功能,基于内建的osm ...

  8. dubbo之监控中心(monitor)

    一.monitor是dubbo框架中的一个监控中心.这个只是针对于消费者和提供者进行一个数据记录,不参与业务和使用.当然当monitor挂掉之后,也不会影响服务的正常运行. 二.在阿里的dubbo中也 ...

  9. 一个只有十行的精简MVVM框架

    本文来自网易云社区. 前言 MVVM模式相信做前端的人都不陌生,去网上搜MVVM,会出现一大堆关于MVVM模式的博文,但是这些博文大多都只是用图片和文字来进行抽象的概念讲解,对于刚接触MVVM模式的新 ...

  10. android 几个工具方法

    集合几个工具方法,方便以后使用. 1.获取手机 分辨率屏幕: public static void printScreenInfor(Context context){ DisplayMetrics ...