CSS 布局_1 盒模型

作者&投稿:邹娴 (若有异议请与网页底部的电邮联系)
~

盒模式是 CSS 中一个重要的概念,即元素在页面所占据的空间位置,盒模型的属性包括:内容 (content)、填充 (padding)、边框 (border)、边界 (margin),盒模型一共分为两种,一种是 W3C 标准盒模型,另一种是 IE 盒模型(又称怪异盒模型)

元素盒模型宽高 = 内容的宽高 + 内边距padding + 边框border + 外边距margin

背景颜色从 border-box 开始生效的,背景图像从 padding-box 开始生效的,CSS 3 属性 : content-box / padding-box / border-box 可以改变背景图像从盒模型的哪部分开始生效

通过盒模型的外边距 margin 拉开各元素之间的间隙、距离,使用 padding 来撑开自身的宽高

在低版本 IE 里,若不添加 <!DOCTYPE html> 的文档声明,就会按照 IE 盒模型进行解析

元素盒模型宽高 = 内容的宽高【元素的宽高 + padding + border】 + 外边距margin

IE 盒模型的计算方式和 W3C 的盒模型很相似,但有一点是非常不同的,这就是:内边距和边框并不被包含在计算的范围内,这就意味着,如果元素也有内边距 padding 和边框 border ,那么实际内容区域将会缩小,为它们腾出空间

在实际设计中,我们会发现,IE 盒模型更容易进行控制,我们一般先将整个容器的尺寸先确定,然后再填充具体的内容,通过 padding 来调整内容的具体位置,通过 margin 来调整容器与其他元素之间的间隙,无论如何调整,整个容器的结构是固定的,不会改变的;而在标准盒模型中,我们在调整 padding 和 margin 的同时,往往会将容器本身的结构打乱,需要重新设置内容 content 的尺寸

CSS 3 属性: box-sizing: border-box; 可以让元素按照 IE 盒模型进行解析,即设置的宽高包括了 border 以及 padding 的值

display 属性,元素的显示方式,规定元素应该生成的框的类型,这个属性用于定义建立布局时元素生成的显示框类型

注释 : inline-block 在 IE7 开始支持,在 IE6 下设置 _display:inline; 也可以实现相同效果,下划线 _ 是只针对 IE6 所设置的 CSS 样式,例: _width:100px;

我们来回顾下块元素和行元素的特点,块元素的特点: 竖直排列,可以设置宽高,宽度占满整行,即宽度 100%,另起新行 ;行元素的特点: 水平排列,设置宽高不生效,宽度由内容决定,高度由行高决定 ,这是我们之前已经了解过的,那么它们设置内外边距的特点又是什么呢?我们来尝试一下

由运行结果可以得知, 行元素在竖直方向上设置的 margin 不生效,水平方向上设置的 margin 叠加

由运行结果可以得知, 行元素在水平方向上设置的 padding 生效,竖直方向上的不生效 ,虽然元素的范围增大了,但是,由于行元素的高度是由内容决定的,所以加了上下 padding 以后会与临近行的元素产生干涉

所以,行元素建议尽量不要设置上下的内 / 外边距,即 padding-top , padding-bottom 和 margin-top , margin-bottom ,因为要么起不到效果,要么看起来有效实则容易引起布局混乱

由运行结果可以得知, 块元素在竖直方向上设置的 margin 以大的 margin 来计算 ,因为块元素宽度默认占满整行,设置内边距 padding 和水平方向上的外边距 margin 只会调整元素的位置,在这里就不再验证

行元素在竖直方向上设置的 margin / padding 不生效,水平生效
块元素在竖直方向上设置的 margin 会重叠,大的那个值生效
行元素在水平方向上设置的 margin / padding 不会重叠,水平相加

设置了 inline-block 属性之后,行元素就具有块元素的特点【可以设置宽高;竖直方向上的 padding/margin 生效】,块元素就可以水平排列

display:none; 和 visibility:hidden; 都能把网页上某个元素隐藏起来,但两者是有区别的:

display:none; 不为被隐藏的对象保留其物理空间,即该对象在页面上彻底消失,不占据空间位置,完全消失

visibility:hidden; 使对象在网页上不可见,但该对象在网页上所占的空间没有改变,还占据原来的空间位置,可以理解为透明

让有宽度【非宽度100%】的 块元素水平居中 : margin:0 auto;
设置 单行文本的竖直居中 : line-height: 该元素高度;
行元素水平居中 :给行元素的父级添加 text-alingn:center;
text-align:center/left/right; 设置块元素中的内容文本、图片的对齐方式,只能设置在块元素,在行元素中设置无效

行文过程中出现错误或不妥之处在所难免,希望大家能够给予指正,以免误导更多人,最后,如果你觉得我的文章写的还不错,希望能够点一下 喜欢 关注 ,为了我能早日成为优秀作者献上一发助攻吧,谢谢!^ ^




沙坪坝区13425815442: 用HTML和CSS定义网页的盒状模型 -
啜嵇泰索: 简单代码如下: <html> <head> <title>网页标题</title> <style type="text/css"> <!-- #DIV_BOX{height:500px;width:200px} --> </style> </head> <body> <div id="DIV_BOX">盒状模型区</div> </body> </html>说明:首先在<head></head>内定义...

沙坪坝区13425815442: CSS盒子模型的介绍 -
啜嵇泰索: 在网页中,一个元素占有空间的大小由几个部分构成,其中包括元素的内容(content),元素的内边距(padding),元素的边框(border),元素的外边距(margin)四个部分.这四个部分占有的空间中,有的部分可以显示相应的内容,而有的部分只用来分隔相邻的区域或区域.4个部分一起构成了css中元素的盒模型.

沙坪坝区13425815442: 如何通过css改变盒子模型布局 -
啜嵇泰索: box-sizing:border-box; box-sizing:content-box;

沙坪坝区13425815442: 介绍一下标准的css的盒子模型?与低版本ie的盒子模型有什么不同的
啜嵇泰索: 1.网页设计中常听的属性名:内容(content)、填充(padding)、边框(border)、边界(margin), CSS盒子模式都具备这些属性.2.这些属性我们可以用日常生活中的常见事物——盒子作一个比喻来理解,所以叫它盒子模式.3.CSS盒子模...

沙坪坝区13425815442: css中盒子模型位置布局常用的三个样式属性是什么,各自的作用
啜嵇泰索: margin:调整外边距 padding:内边框 float:浮动点 最常用的是上面三个,也是核心和重点

沙坪坝区13425815442: CSS+DIV写盒子模型图 -
啜嵇泰索: 网页盒子模型存在两种: 1:标准W3C盒子模型; 2:IE盒子模型(IE浏览器默认的模型). 在两种不同模型网页里,定义了相同CSS属性的元素显示效果是不一样的,下面就用公式来区分这两种不同的盒子模型. 1:标准W3C盒子模型 宽=...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网