`
a137268431
  • 浏览: 147607 次
文章分类
社区版块
存档分类
最新评论

块状元素与内联元素

 
阅读更多
在用CSS布局页面的时候,我们会将HTML标签分成两种,块状元素和内联元素(我们平常用到的div和p就是块状元素
,链接标签a就是内联元素)。是在CSS布局页面中很重要的两个概念,必须要理解透彻!既然说到概念就先看看块状
元素和内联元素的定义。

注:这节课看似挺长,其实内容很少,通过举例子让大家更容易理解而已,不要被眼前的文字和代码吓到哟~


块状元素
一般是其他元素的容器,可容纳内联元素和其他块状元素,块状元素排斥其他元素与其位于同一行,宽度(width)高度(height)起作用。常见块状元素为div和p。

内联元素
内联元素只能容纳文本或者其他内联元素,它允许其他内联元素与其位于同一行,但宽度(width)高度(height)不起作用。常见内联元素为“a”。


做了个对比表,帮助大家更容易理解。


块状元素 内联元素
是否允许其他元素同处一行 no yes
width和height是否起作用 yes no



对于上面的概念,我们用实例的方式给大家讲明白,要注意听哟~
要求:ID为div1的红色(#900)区域,宽度和高度均为300像素,并且包含一个ID为div2的绿色区域,长度宽度
均为100像素的div2。


CSS代码如下:
  1. #div1{width:300px; height:300px; background:#900;}
  2. #div2{width:100px; height:100px; background:#090;}
复制代码
HTML代码如下:
  1. <div id="div1">
  2. <div id="div2"></div>
  3. </div>
复制代码
为了方便初学者更好的学习,我把完整的代码发出来
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
  6. <title>CSS学习网---“可容纳内联元素和其他块状元素”</title>
  7. <style type="text/css">
  8. <!--
  9. #div1{width:300px; height:300px; background:#900;}
  10. #div2{width:100px; height:100px; background:#090;}
  11. -->
  12. </style>
  13. </head>
  14. <body>
  15. <div id="div1">
  16. <div id="div2"></div>
  17. </div>
  18. </body>
  19. </html>
复制代码
怎么样,是不是下面的效果


如果你做出来了,就继续往下看,咱们给刚才的要求再加一个条件,在div1里放入一个链接a,内容为“可容纳内联
元素和其他块状元素”颜色为白色
CSS代码如下:
  1. #div1{width:300px; height:300px; background:#900;}
  2. #div2{width:100px; height:100px; background:#090;}
  3. a{color:#fff;}
复制代码
HTML代码如下:
  1. <div id="div1">
  2. <div id="div2"></div>
  3. <a href="#">可容纳内联元素和其他块状元素</a>
  4. </div>
复制代码
是不是下面的效果


到这里,我们可以看得到div1这个块状元素里面拥有两个元素,一个是块状元素div2,另一个是内联元素a,这就是
块状元素概念里面说的“一般是其他元素的容器,可容纳内联元素和其他块状元素”,为什么要说一般呢,因为块状
元素不只是用来做容器,有时还有其他用途,比如利用块状元素将上下两个元素隔开些距离,再比如利用块状元素来
实现父级元素的高度自适应,这方面的内容会在后面详细讲解,因为不属于本节知识,就不多说。

好~!我们继续加条件,在div1里面div2的后面再放入一个ID为div3的长宽均为100像素的蓝色(#009)区域块,代码如

CSS代码如下:
  1. #div1{width:300px; height:300px; background:#900;}
  2. #div2{width:100px; height:100px; background:#090;}
  3. #div3{width:100px; height:100px; background:#009;}
  4. a{color:#fff;}
复制代码
HTML代码如下:
  1. <div id="div1">
  2. <div id="div2"></div>
  3. <div id="div3"></div>
  4. <a href="#">可容纳内联元素和其他块状元素</a>
  5. </div>
复制代码
是不是下面这个效果


是不是和自己事先想象的不一样,本以为蓝色会处于绿色的右侧,可是却位于下侧,如果你再加几个div4,div5同样
的他们还是继续位于前一个下面,垂直排列,这就是块状元素概念中说的“块状元素排斥其他元素与其位于同一行”
说白了,就是块状元素比较霸道,谁都别想和他坐同一行,甭管你是和他有亲戚关系的块状元素还是毫无联系的内联
元素,都不行,都到下面一行待着去,看看例子中,绿色方块和蓝色方块是不是各处同一行,内联元素a也别想和他
处一行,但是事情是没有绝对的,块状元素不是不允许其他元素和他处一行嘛,不是比较霸道嘛,没关系,咱有办法
,具体什么办法,我们后面会详细讲解,知识不属于本节内容,就也不多说了,大家留意后面的教程唷~

到这里,我想大家对“块状元素”的概念已经比较清楚了,下面通过例子给大家继续解释“内联元素”的概念,当然
还是继续加条件,加个什么条件呢,在a的后面再加一个内容为“LoveCSS”的链接,所有链接的背景设置为淡橙色
(#F93)
CSS代码如下:
  1. #div1{width:300px; height:300px; background:#900;}
  2. #div2{width:100px; height:100px; background:#090;}
  3. #div3{width:100px; height:100px; background:#009;}
  4. a{color:#fff; background:#F93;}
复制代码
HTML代码如下:
  1. <div id="div1">
  2. <div id="div2"></div>
  3. <div id="div3"></div>
  4. <a href="#">可容纳内联元素和其他块状元素</a>
  5. <a href="#">Love CSS</a>
  6. </div>
复制代码
效果是不是下面这个


两个连接a是不是处于同一行(不要忘记a是内联元素哟~),这就解释了概念上说的“内联元素允许其他内联元素与其
位于同一行”,为什么不说“内联元素允许其他元素与其位于同一行”,因为其他元素包括两种元素,内联元素和块
状元素,它如果和内联元素在一块那就肯定在一行了,如果和块状元素在一块,即使它同意,他后面的块状元素也不
同意,块状元素会另起一行位于它的下一行。

我们继续添加条件,现在大家给内联元素a在css中加上宽度和高度,比如width:100px;height:50px;看看有什么变化
CSS代码
  1. #div1{width:300px; height:300px; background:#900;}
  2. #div2{width:100px; height:100px; background:#090;}
  3. #div3{width:100px; height:100px; background:#009;}
  4. a{color:#fff; background:#F93;width:100px;height:50px;}
复制代码
看到效果了没有,是不是没有任何变化呢,这就说明了概念中的内联元素的宽度(width)高度(height)不起作用,它
的大小只随内部文本或者其他内联元素变化,具体证明算是给大家一个作业,自己来证明一下。

如果要让定义好的宽度和高度对内联元素起作用,有什么办法没有?答案是:当然。因为事情没有绝对的在CSS上面
也成立,因为CSS中有两种元素,内联元素和块状元素,但是宽度和高度只对块状元素起作用,内联元素不起作用,
如果我们把内联元素转化成块状元素,他不就具有了块状元素的特性了嘛,当然宽度和高度也就起作用了,如果你能
想到这个思路,证明你的大脑现在非常活跃哟,这时候我们只需要给相应的内联元素加上一个属性display:block就
可以了,如下
  1. a{color:#fff; background:#F93;width:100px;height:50px; display:block;}
复制代码
怎么样,起作用了吧,和下面的效果一样嘛~


为什么两个a不处于同一行了呢,那是因为这两个内联元素a都被转化成了块状元素,既然成功转化为块状元素,就应
该具有块状元素最显著的一个特点,不允许其他元素与他同一行,所以这两个a垂直排列喽~
那有没有把法让他们处于同一行?当然有啦,后面课程会告诉大家^_^
好了,到这里,大家通过实例对内联元素的概念理解的也应该很透彻了,后面就列出所有的内联元素和块状元素,方
便以后大家查阅


块元素(block element)
address - 地址
blockquote - 块引用
center - 举中对齐块
dir - 目录列表
div - 常用块级容易,也是CSS layout的主要标签
dl - 定义列表
fieldset - form控制组
form - 交互表单
h1 - 大标题
h2 - 副标题
h3 - 3级标题
h4 - 4级标题
h5 - 5级标题
h6 - 6级标题
hr - 水平分隔线
isindex - input prompt
menu - 菜单列表
noframes - frames可选内容,(对于不支持frame的浏览器显示此区块内容
noscript - 可选脚本内容(对于不支持script的浏览器显示此内容)
ol - 排序表单
p - 段落
pre - 格式化文本
table - 表格
ul - 非排序列表


内联元素(inline element)
a - 锚点
abbr - 缩写
acronym - 首字
b - 粗体(不推荐)
bdo - bidi override
big - 大字体
br - 换行
cite - 引用
code - 计算机代码(在引用源码的时候需要)
dfn - 定义字段
em - 强调
font - 字体设定(不推荐)
i - 斜体
img - 图片
input - 输入框
kbd - 定义键盘文本
label - 表格标签
q - 短引用
s - 中划线(不推荐)
samp - 定义范例计算机代码
select - 项目选择
small - 小字体文本
span - 常用内联容器,定义文本内区块
strike - 中划线
strong - 粗体强调
sub - 下标
sup - 上标
textarea - 多行文本输入框
tt - 电传文本
u - 下划线
var - 定义变量
分享到:
评论

相关推荐

    块状元素与内联元素大全

    块状元素与内联元素大全 html标签中所有块状元素与内联元素 对前端的开发设计有很大帮助

    css块状元素与内联元素以及inline-block

    CSS 块状元素、内联元素和 inline-block elementos CSS 中的块状元素(Block Elements)和内联元素(Inline Elements)是两种基本的元素类型,它们在网页布局和样式设计中扮演着非常重要的角色。块状元素和内联元素...

    CSS 盒模型、块状元素与内联元素、CSS选择器

    CSS实例 盒模型、块状元素与内联元素、CSS选择器.

    css 块状元素和内联元素

    注:这节课看似挺长,其实内容很少,通过举例子让大家更容易理解而已,不要被眼前的文字和代码吓到哟~ 块状元素 一般是其他元素的容器,可容纳内联元素和其他块状元素,块状元素排斥其他元素与其位于同一行,宽度...

    2天掌握DIV CSS网页制作技术

    【基础八】块状元素和内联元素 ================================= 课程 【第一课】盒模型、块状元素与内联元素、CSS选择器 【第二课】浮动 【第三课】清除浮动 【第四课】导航条 【第五课】浮动(float)页面布局 ...

    HTML5&CSS3网页制作:元素的类型.pptx

    标签独自占据一行,相邻块状元素不会并列显示,且它的顺序是自上而下的排列; 在网页中以块的形式显示为矩形区域; 所有块状元素都可以定义自己的宽度和高度; 作为其他元素的容器,可以容纳其他内联和块状元素。 ...

    html内联元素和块级元素的基本概念及使用示例

    常见块状元素为“div” 内联元素(行内元素):内联元素只能容纳文本或者其他内联元素,是块级元素的后代,它允许其他内联元素与其位于同一行,不能设置高度(height)和宽度(width)。常见内联元素为“a”。 根据...

    div+css快速掌握

    【基础一】DIV+CSS的叫法是不准确的 【基础二】使用Table布局是不明智的 【基础三】xHTML+CSS与SEO 【基础四】CSS如何控制页面 【基础五】CSS选择器 【基础六】CSS选择器命名及常用命名...【基础八】块状元素和内联元素

    css布局模型全面了解

    1.块状元素都在所处包含元素内自上而下按顺序垂直延伸分布。常见的块状元素有:div,p,ul,ol,h1~h6,address等 2.内联元素都会在所处包含元素内从左到右水平分布显示。常见的内联元素有:a,span,img,input,textarea等 ...

    H5+CSS3.zip

    css盒模型:块级元素,内联元素,内敛块状元素,none使元素隐身,设置宽度、高度、背景色、边框、圆角,padding内边距,margin外边距; css布局模型:流动模型flow,浮动模型float,层模型layer,层模型的绝对定位、...

    CSS 制作网页导航条(上)

    课程开始: 前三节课,我们知道了什么是“内容块状元素和内联元素”,以及XHTML+CSS布局的核心概念“盒子模型”,同时又学习了一下页面布局中两种方法中的一种方法“浮动”,这次我们就利用这三个概念,来制作一款...

    div的position属性

    块状元素这么霸道都是独占一行,如果现在我们想让两个块状元素并排显示,怎么办呢?不要着急,设置元素浮动就可以实现这一愿望。 3.层模型--绝对定位 如果想为元素设置层模型中的绝对定位,需要设置position:...

    front-end-world

    内联元素/块状元素 文档流 浮动float 元素堆叠 块格式化上下文(BFC) 响应式布局 Flex布局 网格布局 CSS动画 Java脚本 基本语法 基本类型 Javascript对象 原型和继承 作用域 闭包 这 ES6 + 单线程与异步Javascript ...

    浅析css html span 块状不换行问题

    元素display属性的常见值说明: block:块对象的默认值。将对象强制作为块对象呈递,为对象之后添加新行。 inline:内联对象的默认值。将对象强制作为内联对象呈递,从对象中删除行。 inline-block:将对象呈递为...

    CSS教程:弄懂闭合浮动元素

    按照CSS规范,浮动元素(floats)会被移出文档流,不会影响到块状盒子的布局而只会影响内联盒子(通常是文本)的排列。因此当其高度超出包含容器时,一般父容器不会自动伸长以闭合浮动元素。但是有时我们却需要这种...

    闭合浮动元素让CSS代码更规范

    按照CSS规范,浮动元素(floats)会被移出文档流,不会影响到块状盒子的布局而只会影响内联盒子(通常是文本)的排列。因此当其高度超出包含容器时,一般父容器不会自动伸长以闭合浮动元素。但是有时我们却需要这种...

    CSS教程:闭合CSS浮动元素的几种方法

    按照CSS规范,浮动元素(floats)会被移出文档流,不会影响到块状盒子的布局而只会影响内联盒子(通常是文本)的排列。因此当其高度超出包含容器时,一般父容器不会自动伸长以闭合浮动元素。但是有时我们却需要这种...

Global site tag (gtag.js) - Google Analytics