css的两种盒模型介绍CSS中Box model是分为两种,第一种是W3C的标准模型,另一种是IE的传统模型,他们相同之处都是对元素计算尺寸的模型,具体说就是对元素的width,height,padding,border以及元素实际尺寸的计算关系;他们不同之处呢?两者的计算方法不一至:

1、W3C的标准Box Model:

复制代码代码如下:

/*外盒尺寸计算(元素空间尺寸)*/ Element空间高度 = content height + padding + border + margin Element 空间宽度 = content width + padding + border + margin /*内盒尺寸计算(元素大小)*/ Element Height = content height + padding + border (Height为内容高度) Element Width = content width + padding + border (Width为内容宽度)

2、IE)传统下Box Model(IE6以下,不含IE6版本或“QuirksMode下IE5.5+”):

复制代码代码如下:

/*外盒尺寸计算(元素空间尺寸)*/ Element空间高度 = content Height + margin (Height包含了元素内容宽度,边框宽度,内距宽度) Element空间宽度 = content Width + margin (Width包含了元素内容宽度、边框宽度、内距宽度) /*内盒尺寸计算(元素大小)*/ Element Height = content Height(Height包含了元素内容宽度,边框宽度,内距宽度) Element Width = content Width(Width包含了元素内容宽度、边框宽度、内距宽度)

其实原则上来说Box Model是分得很细的,我们这里主要分了两个比较明显的地方,就是外盒模型和内合模型,如上面计算公式所示(后面我将会详细介绍一下CSS中的Box Model)。这样说大家可能还不太好理解,下面我们一起来看一个实际的例子,比如说现在有一个叫boxtest的Div,其具有下面一个属性

.boxtest {     border: 20px solid;     padding: 30px;     margin: 30px;     background: #ffc;     width: 300px;  }

我们先来看一下W3C标准浏览器(Firefox,Safari,Chrome,Opera,IE6+)和传统浏览器(IE6以下版本浏览器)的Layout截图

上图中明显可以看出IE6以下版本浏览器的宽度包含了元素的padding,border值,换句话来说在IE6以下版本其内容真正的宽度是(width-padding-boder)。用内外盒来说的话,W3C标准浏览器的内盒宽度等于IE6以下版本浏览器的外盒宽度。

盒模型的子元素控制

1.子元素上下对齐方式 box-align例子:

CSS Code复制内容到剪贴板

.demo {

-webkit-box-align:center;

-moz-box-align:center;

-ms-box-align:center;

box-align:center;

}

值::

baseline – 基线

center – 居中

end – 底部

inherit – 继承

initial – 默认

start – 顶部

stretch – 拉伸

2.子元素左右对齐方式 box-pack例子:

CSS Code复制内容到剪贴板

.demo {

-webkit-box-pack:center;

-moz-box-pack:center;

-ms-box-pack:center;

box-pack:center;

}

值:

center – 居中

end – 底部

inherit – 继承

initial – 默认

start – 顶部

justify – 拉伸

3.子元素排列方式 box-orient例子:

CSS Code复制内容到剪贴板

.demo {

-webkit-box-orient: horizontal;

-moz-box-orient: horizontal;

-ms-box-orient: horizontal;

box-orient: horizontal;

}

值:

horizontal – 水平

vertical – 垂直

inherit – 继承

initial – 默认

inline-axis – 内轴

block-axis – 块轴

4.子元素排列顺序 box-ordinal-group例子:

CSS Code复制内容到剪贴板

.child {

-webkit-box-ordinal-group:2;

-moz-box-ordinal-group:2;

box-ordinal-group:2;

}

5.规定框的子元素的显示方向 box-direction例子:

CSS Code复制内容到剪贴板

.demo {

-webkit-box-direction:reverse;

-moz-box-direction:reverse;

-ms-box-direction:reverse;

box-direction:reverse;

}

值:

reverse – 反方向

normal – 默认

inherit – 继承

html盒子中盒子排列,解析CSS的box model盒模型及其内的子元素布局控制相关推荐

  1. css盒模型(css的两种盒模型:标准盒模型、怪异盒模型)和 css3指定盒子模型种类的box-sizing属性

    所有HTML元素可以看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用. CSS盒模型本质上是一个盒子,封装周围的HTML元素,它包括:外边距(margin ...

  2. CSS基础语法和盒模型

    CSS基础语法和盒模型 CSS简介 Cascading Style Sheet 层叠样式表 用于给HTML标签添加样式 CSS3是CSS的最新版本 增加了大量的样式/动画/3D特效以及移动端特性 前端 ...

  3. 网页中的盒模型css属性,详解CSS中的Box Model盒属性的使用

    页面上显示的每个元素(包括内联元素)都可以看作一个盒子,即盒模型( box model ).请看 Chrome DevTools 里的截图: 可以显而易见的看出盒模型由 4 部分组成.从内到外分别是: ...

  4. CSS 常用语法与盒模型分析

    CSS基础知识 CSS规则由两个主要的部分构成:选择器,以及一条或者多条声明 selector {property: value;property: value;... property: value ...

  5. css盒模型只能应用于html,iframe,css样式表,盒模型的使用方法-2019年9月3日

    实例演示:标签的使用 实例演示: css样式设置的优先级 实例演示: css的id, class与标签选择器的使用规则 实例演示盒模型的五大要素: width, height, padding, bo ...

  6. extjs中滚动条属性_前端学习随笔6 盒模型及相关属性

    注:测试浏览器版本号--chrome 75.0.3770.80:opera 60.0.3255.109:firefox 67.0:ie 11. 一 心得体会 最大的收获是第一次知道了outline(轮 ...

  7. CSS基础五(盒模型)

    目录 盒子模型 1 什么是盒模型 2 内容区(content) 3 盒子边框(border) 边框大小 border-width 边框样式 border-style 边框颜色 border-color ...

  8. DIV + CSS 学习笔记(盒模型)

    本文目录 一.盒模型 (一)盒边框(border) (二)内边距(padding) (三)外边距(margin) (四)盒内容(element) (五)盒模型计算 (六)块级元素与内联元素的区别和转换 ...

  9. 再读《精通css》04:盒模型和空白边叠加

    第二章:可视化格式模型                 2.1 框模型概述 1.框模型:在页面上的每一个元素被看做是一个矩形的框.这个框由元素的内容(content),填充(padding),边框(b ...

  10. html盒子中盒子排列,css3中弹性盒排布使用方法

    首先,我们来对弹性盒中的称呼做一些了解 如图,弹性盒分为两个轴,一个是主轴,一个是交叉轴,主轴方向可以改变(左右改上下),主轴方向改变后,交叉轴方向也会随之改变 然后,我们来看下浏览器的大概支持情况 ...

最新文章

  1. 11: facebook原生登录
  2. android时间轴折线图,带时间轴的折线图
  3. 怎样使用CSS3媒体查询(Media Queries)制作响应式网站
  4. InfluxDB 开源分布式时序、事件和指标数据库
  5. 单E1光端机,V.35光端机,以太网光端机介绍及技术指标详解
  6. 高性能MySQL(3)——创建高性能索引
  7. “ create-react-app”和创建React应用程序的未来
  8. uni-app开发开发h5,小程序,app,注意事项
  9. 3种常用的Redis缓存读写策略
  10. 使用canvas把照片旋转任意角度
  11. ZooKeeper 客户端: GUI+命令行两大类(史上最全,值得收藏)
  12. 西门子 Process Simulate学习笔记(一)
  13. 15、AutoLayout使用UIScrollView
  14. 怎么将CAD中的两条直线拉成弧形呢?
  15. 前端激荡三十年,从无到有,从单一到炫彩,技术从未停止!
  16. mysql2014汉化版_SQLServer2014企业版下载
  17. iOS从零开始与Swift:简而言之的Swift
  18. 关于python中的三个点【...】
  19. 聊聊如何实施负载均衡
  20. 如何查看数据库中表的前5行,3-8行,随机3行记录?

热门文章

  1. C++中main函数中参数argc和argv的使用实例
  2. 算法题:(1) 有一个集合R = [a, b, c, d, e, f, g, h, i, j, k, l, m, n, ],....请写出求解这样的一个子集的通用算法。
  3. CVPR 2022|只用一张图+相机走位,AI就能脑补周围环境!
  4. 火灾检测、人流量统计、安全帽检测,飞桨开源一键运行的产业案例教程
  5. Realsense D455 修改分辨率和FPS
  6. 简述this,call,apply,bind之间的关系
  7. android studio run的时候一直卡在waiting for debug
  8. RobotFramework:App九宫格滑动解锁
  9. Java基础语法三 输入输出
  10. Adobe Reader 的直接下载地址