`
zzc1684
  • 浏览: 1220848 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

盒子模型,块级元素和行内元素

阅读更多

 

总结

块级元素和行内元素区别

  1. 行内元素同一行水平排列。
  2. 块级元素各占据一行,垂直方向排列。
  3. 块级元素可以包含行内元素和块级元素。但行内元素不能包含块级元素。
  4. 行内元素与块级元素属性的不同,主要是盒模型属性上。
  5. 行内元素设置width无效,height无效(可以设置line-height),margin上下无效,padding上下无效

可以通过修改样式display属性改变元素是以块级还是行内元素呈现,当display的值设为block时,元素将以块级方式呈现;当display值设为inline时,元素将以行内形式呈现。

如果想让一个元素可以设置宽度高度,又让它以行内形式显示,我们可以设置display的值为inline-block。

 

一个例子

a{display:inline-block; width:100px; height:100px;}

 

 

 

概述

在div+css中,了解块级元素和行内元素还是非常有必要的,比如:对行内元素使用width属性就会失效。虽然自己不是做前端的,但是,在项 目中,曾经也弄过从前端布局,也吃过这方面的亏。今天,群里有朋友问起这个,就趁着学习一下,也算是查漏补缺吧,虽然,谈不上精通,但是了解,还是很有必 要的。

盒子模型

css盒子模型分为两种,一种是遵循w3c标准的标准盒子模型,另外一种就是IE盒子模型。

标准盒子模型

IE盒子模型

通过上面两张图可以看出,两种盒子模型都包括padding,margin,border,content,但是ie盒子模型的content包括border和padding。

一个例子

一个盒子的 margin 为 20px,border 为 1px,padding 为 10px,content 的宽为 200px、高为 50px。

标准盒子模型

盒子需要占据的位置为:宽 20*2+1*2+10*2+200=262px、高 20*2+1*2*10*2+50=112px,

盒子的实际大小为:宽 1*2+10*2+200=222px、高 1*2+10*2+50=72px;

IE盒子模型

盒子需要占据的位置为:宽 20*2+200=240px、高 20*2+50=70px,

盒子的实际大小为:宽 200px、高 50px。

选择多了,就要比个哪个好?

当然是“标准 W3C 盒子模型”了。怎么样才算是选择了“标准 W3C 盒子模型”呢?很简单,就是在网页的顶部加上 DOCTYPE 声明。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

如果不加 DOCTYPE 声明,那么各个浏览器会根据自己的行为去理解网页,即 IE 浏览器会采用 IE 盒子模型去解释你的盒子,而 FF 会采用标准 W3C 盒子模型解释你的盒子,所以网页在不同的浏览器中就显示的不一样了。反之,如果加上了 DOCTYPE 声明,那么所有浏览器都会采用标准 W3C 盒子模型去解释你的盒子,网页就能在各个浏览器中显示一致了。

块级元素block element

块状元素排斥其他元素与其位于同一行,可以设定元素的宽(width)和高(height),块级元素一般是其他元素的容器,可容纳块级元素和行内元素。常见的块级元素有div, p ,h1~h6等。

块级元素有哪些?

 1 <address>//定义地址
 2 <caption>//定义表格标题
 3 <dd>    //定义列表中定义条目
 4 <div>     //定义文档中的分区或节
 5 <dl>    //定义列表
 6 <dt>     //定义列表中的项目
 7 <fieldset> //定义一个框架集
 8 <form> //创建 HTML 表单
 9 <h1>    //定义最大的标题
10 <h2>    // 定义副标题
11 <h3>     //定义标题
12 <h4>     //定义标题
13 <h5>     //定义标题
14 <h6>     //定义最小的标题
15 <hr>     //创建一条水平线
16 <legend>    //元素为 fieldset 元素定义标题
17 <li>     //标签定义列表项目
18 <noframes>    //为那些不支持框架的浏览器显示文本,于 frameset 元素内部
19 <noscript>    //定义在脚本未被执行时的替代内容
20 <ol>     //定义有序列表
21 <ul>    //定义无序列表
22 <p>     //标签定义段落
23 <pre>     //定义预格式化的文本
24 <table>     //标签定义 HTML 表格
25 <tbody>     //标签表格主体(正文)
26 <td>    //表格中的标准单元格
27 <tfoot>     //定义表格的页脚(脚注或表注)
28 <th>    //定义表头单元格
29 <thead>    //标签定义表格的表头
30 <tr>     //定义表格中的行

行内元素inline element

行内元素不可以设置宽(width)和高(height),但可以与其他行内元素位于同一行,行内元素内一般不可以包含块级元素。行内元素的高度一般由元素内部的字体大小决定,宽度由内容的长度控制。常见的行内元素有a, em ,strong等。

行内元素有哪些?

 1 <a>     //标签可定义锚
 2 <abbr>     //表示一个缩写形式
 3 <acronym>     //定义只取首字母缩写
 4 <b>     //字体加粗
 5 <bdo>     //可覆盖默认的文本方向
 6 <big>     //大号字体加粗
 7 <br>     //换行
 8 <cite>     //引用进行定义
 9 <code>    // 定义计算机代码文本
10 <dfn>     //定义一个定义项目
11 <em>     //定义为强调的内容
12 <i>     //斜体文本效果
13 <img>     //向网页中嵌入一幅图像
14 <input>     //输入框
15 <kbd>     //定义键盘文本
16 <label>     //标签为 input 元素定义标注(标记)
17 <q>     //定义短的引用
18 <samp>     //定义样本文本
19 <select> // 创建单选或多选菜单
20 <small>     //呈现小号字体效果
21 <span>     //组合文档中的行内元素
22 <strong> //加粗
23 <sub>     //定义下标文本
24 <sup>     //定义上标文本
25 <textarea>     //多行的文本输入控件
26 <tt>     //打字机或者等宽的文本效果
27 <var>    // 定义变量

可变元素

根据上下文语境决定转为块级元素还是行内元素。

1 <button>     //按钮
2 <del>    // 定义文档中已被删除的文本
3 <iframe>     //创建包含另外一个文档的内联框架(即行内框架)
4 <ins>     //标签定义已经被插入文档中的文本
5 <map>     //客户端图像映射(即热区)
6 <object>     //object对象
7 <script>     //客户端脚本
分享到:
评论

相关推荐

    微信小程序布局之行内元素和块级元素

    元素按照显示方式主要可以分为块级元素和行内元素,元素的显示方式由display属性控制。 块级元素特点总结: ...5、可以容纳行内元素和其他块级元素。   行内元素(diaplay:inline)特点总结: 1、和

    浅谈CSS块级元素与行内元素(内联元素)的区别和联系

    在css盒子模型中,我们提到了html元素中的块元素(block element)和内联元素(inline element)。那么它们究竟是什么呢? 其实,这两种元素都是html规范中的概念。块元素(block element)一般是其他元素的容器元素...

    css盒模型和块级、行内元素深入理解

    块级元素和行内元素是HTML布局的两大基本类别。块级元素,如`div`和`p`,它们独占一行,可以设置宽度和高度,并能容纳其他块级和行内元素。行内元素,如`a`、`em`和`strong`,它们不会占据整行,其宽度由内容决定,...

    CSS盒子模型教程PPT课件.pptx

    标准文档流包括块级元素和行内元素两种类型。块级元素是指浏览器显示时在该元素的前后会自动换行,因此多个块级元素不会排在一行。行内元素则默认显示在一行内,只有在最右端才自动换行。 7. 盒子模型的案例 盒子...

    深入理解css盒子模型1

    行内元素和块级元素可以通过CSS的`display`属性相互转换,例如将行内元素设置为`display: block`使其变为块级元素,或者将块级元素设置为`display: inline`使其变为行内元素。 水平格式化是指元素在水平方向上的...

    CSS下盒子模型定位浅析.pdf

    理解盒子模型的构成、类型以及margin和padding如何影响元素位置,有助于创建出层次分明、布局合理的网页。在实际应用中,还需要掌握浮动(float)、定位(position)等高级布局技巧,以应对更复杂的设计需求。通过熟练...

    CSS盒子模型详解.pdf

    二、块级元素与行内元素的区别 1. 块级元素 块级元素在HTML文档流中表现为块级显示,它会占据一整行的空间,并且其后的元素会另起一行显示。块级元素可以设置宽度和高度,常见的块级元素有、、至、、等。块级元素...

    替换元素与非替换元素

    值得注意的是,通过CSS的`display`属性,可以改变元素的默认行为,使得替换元素表现得像非替换元素,或者让块级元素和行内元素互相转换,这为网页设计提供了极大的灵活性。例如,将一个`&lt;div&gt;`的`display`属性设为`...

    div+css盒子模型标签解析.docx

    理解并熟练运用CSS盒模型以及块级元素和内联元素的概念,能帮助开发者更精确地控制网页的布局,实现复杂的设计需求。在实际开发中,经常需要根据需要调整元素的`display`属性,以达到理想的视觉效果。

    div+css盒子模型标签解析.pdf

    - CSS 盒子模型包括元素的内容(content)、内边距(padding)、边框(border)和外边距(margin)。理解这个模型对于精确布局至关重要。 - 内容区域包含实际的文本或图像,内边距在内容周围增加额外空间,边框...

    CSS布局之盒子模型属性.docx

    关于最小和最大宽度(高度),`min-width`和`min-height`的初始值为0,适用于块级元素和替换元素。百分数值是相对于包含块的宽度(高度)。同样,`max-width`和`max-height`初始值为`none`,它们也遵循相同的百分比...

    CSS面试须知盒子模型、浮动及定位.docx

    "CSS盒子模型、浮动及定位" CSS盒子模型是指将HTML页面中的布局元素看作是一个矩形的...盒子模型、浮动和定位是CSS布局的三个重要机制,盒子模型将HTML元素转换为矩形的盒子,浮动和定位则用于实现元素的布局和定位。

    ch6 弹性盒子模型3-30

    首先,弹性盒子模型的主要目标是解决传统CSS布局(如块级元素和行内元素)在处理复杂多变的网页布局时遇到的困难。通过Flexbox,我们可以更容易地创建响应式设计,使内容适应不同屏幕尺寸和设备。 1. **容器属性**...

    CSS盒子模型教程PPT学习教案.pptx

    理解盒子模型和标准文档流后,可以使用CSS的定位技术来改变元素的排列。例如,通过设置`margin`属性可以调整元素与周围元素的距离,而`id`和`class`属性则可以帮助你选择并控制特定的页面元素。在Dreamweaver等工具...

    css基础、选择器介绍、样式介绍

    元素显示模式:块级元素、行内元素、行内块元素; CSS三大特性:继承性、层叠性、优先级; 盒子模型:内容、边框、内边距、外边距; CSS布局:结构伪类选择器、伪元素、标准流、浮动; 定位:绝对定位、相对定位、...

    css 盒子模型理解1

    - 只有在普通文档流中的块级元素才会发生外边距合并,行内元素、浮动元素或绝对定位的元素之间不会发生这种情况。 - CSS重置(CSS Reset)中常用`* { margin: 0; padding: 0; }`来消除默认的外边距和内边距,以...

    HTML+CSS知识(3)

    `允许元素同时具有行内元素和块级元素的特性。 - 可以设置宽度和高度。 - 不会独占一行,但元素之间会有默认的空白间隔。 - 通常需要清除空白间隔,可以通过设置`font-size: 0;`或者使用`vertical-align`属性调整...

    前端 60 道面试题及答案.docx

    六、 行内元素和块级元素 * 行内元素(display:inline):宽度和高度是由内容决定,与其他元素共占一行的元素,如、、等。 * 块级元素(display:block):在平时,我们经常使用 CSS 的 display:inline-block,使...

Global site tag (gtag.js) - Google Analytics