块状元素与内联元素的差别

                           独占一行         能设置宽高     竖直方向的margin,padding     水平方向的margin,padding

块状元素:               是                      是                       有。能够设置                           有,能够

 

内联元素:               否                      否                           不能够                                  有,能够

 

 

问题:将下边这首诗词的九天变为红色字体。

日照香炉生紫烟,遥看瀑布挂前川。


飞流直下三千尺,疑是银河落九天。

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="
http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style>
#jiutian{
color:red;
}
</style>
</head>
<body>
<div>
日照香炉生紫烟,遥看瀑布挂前川。
飞流直下三千尺。疑是银河落<div id="jiutian">九天</div>。
</div>
</body>
</html>

 

凝视:用div的话尽管能够将文字显示为红色,但会换行。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="
http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style>
#jiutian{
color:red;
}
</style>
</head>
<body>
<div>
日照香炉生紫烟。遥看瀑布挂前川。
飞流直下三千尺,疑是银河落<span id="jiutian">九天</span>。
</div>
</body>
</html>

凝视:用内联元素span 将实现要求。

内联转块砖:设置display:block。块状转内联:设置display:inline

******html中哪些元素是块状的。哪些元素是内联的???

块元素(block element)
·address - 地址
·blockquote - 块引用
·center - 举中对齐块
·dir - 文件夹列表
·div - 经常使用块级easy。也是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 - 定义变量

 

当内联元素。在CSS中定义下列属性中的一种。便具有块元素的特征
 1)display:block;
 2)float:left; (不但具有块元素的特征,同一时候像左側浮动)
 可是这时候的内联元素。尽管具有块状元素的特征。可是这两种有一点差别。第一种。彻头彻尾和块元素一模一样,都要单独占一行,从左至右,前提没有width和height属性,严格遵循流动布局模型块状元素的流动方式。自上至下流动,另外一种,大小是恰好能将内容包括。而且右側浮动,能够多个在一行。
 
当加上position:absolute/relative的时候,块状元素和内联元素,就不受父级区域的限制了,能够移动到不论什么位置,此时假设加上width和height属性,那么就具有层的特征了。

(加上width和height另一点优点,就是能够兼容IE浏览器了,全部的浏览器现实效果都一样了)

 

块元素(block element)通常是其它元素的容器元素,块元素一般都从新行開始。它能够容纳内联元素和其它块元素,内联元素(inline element)一般都是基于语义级(semantic)的基本元素。

内联元素仅仅能容纳文本或者其它内联元素                   

块元素(block element)通常是其它元素的容器元素,块元素一般都从新行開始,它能够容纳内联元素和其它块元素,常见块元素是段落标签'P"。“form"这个块元素比較特殊。它仅仅能用来容纳其它块元素。


  假设没有css的作用,块元素会顺序以每次另起一行的方式一直往下排。而有了css以后,我们能够改变这样的html的默认布局模式,把块元素摆放到你想要的位置上去。

而不是每次都愚蠢的另起一行。须要指出的是,table标签也是块元素的一种,table based layout和cssbased layout从一般使用者(不包含视力障碍者、盲人等)的角度来看这两种布局,除了页面加载速度的区别外,没有其它的区别。可是假设普通使用者不经意点了查看页面源代码button后。两者所表现出来的差异就很大了。基于良好重构理念设计的css布局页面源代码。至少也能让没有web开发经验的普通使用者把内容高速的读懂。从这个角度来说,css layout code应该有更好的美学体验。


  你可以把块容器元素div想象成一个个box,或者假设你玩过剪贴文载的话,那就更加easy理解了。

我们先把须要的文章从各种报纸、杂志总剪 下来。每块剪下来的内容就是一个block。

然后我们把这些纸块依照自己的排版意图。用胶水又一次贴到一张空白的新纸上。这样就形成了你自己独特的文摘快报了。作为一种技术的延伸,网页布局设计也遵循了相同的模式。

内联元素(inline element)一般都是基于语义级(semantic)的基本元素。

内联元素仅仅能容纳文本或者其它内联元素,常见内联元素 “a”。
  须要说明的是:inline element的中文叫法,有多种内联元素、内嵌元素、行内元素、直进式元素。基本上没有统一的翻译,爱怎么叫怎么叫吧。另外提到内联元素,我们会想到有个display的属性是display:inline;这个属性可以修复著名的IE双倍浮动边界问题。
  块元素(block element)和内联元素(inline element)都是html规范中的概念。

块元素和内联元素的基本差异是块元素一般都从新行開始。而当增加了css控制以后。块元素和内联元素的这种属性差异就不成为差异了。比方。我们全然能够把内联元素cite加上display:block这种属性,让他也有每次都从新行開始的属性。

 


当内联元素,在CSS中定义下列属性中的一种,便具有块元素的特征
 1)display:block;
 2)float:left; (不但具有块元素的特征,同一时候像左側浮动)
 可是这时候的内联元素。尽管具有块状元素的特征,可是这两种有一点差别,第一种。彻头彻尾和块元素一模一样,都要单独占一行,从左至右,前提没有width和height属性。严格遵循流动布局模型块状元素的流动方式,自上至下流动。另外一种,大小是恰好能将内容包括,而且右側浮动,能够多个在一行。
 
当加上position:absolute/relative的时候,块状元素和内联元素,就不受父级区域的限制了。能够移动到不论什么位置,此时假设加上width和height属性。那么就具有层的特征了。(加上width和height另一点优点,就是能够兼容IE浏览器了。全部的浏览器现实效果都一样了)当内联元素。在CSS中定义下列属性中的一种,便具有块元素的特征
 1)display:block;
 2)float:left; (不但具有块元素的特征,同一时候像左側浮动)
 可是这时候的内联元素,尽管具有块状元素的特征,可是这两种有一点差别,第一种,彻头彻尾和块元素一模一样,都要单独占一行,从左至右,前提没有width和height属性,严格遵循流动布局模型块状元素的流动方式。自上至下流动。另外一种。大小是恰好能将内容包括,而且右側浮动,能够多个在一行。


 
当加上position:absolute/relative的时候。块状元素和内联元素。就不受父级区域的限制了,能够移动到不论什么位置,此时假设加上width和height属性。那么就具有层的特征了。(加上width和height另一点优点,就是能够兼容IE浏览器了,全部的浏览器现实效果都一样了)当内联元素,在CSS中定义下列属性中的一种,便具有块元素的特征
1)display:block;
2)float:left; (不但具有块元素的特征。同一时候像左側浮动)
可是这时候的内联元素,尽管具有块状元素的特征。可是这两种有一点差别,第一种。彻头彻尾和块元素一模一样,都要单独占一行,从左至右,前提没有width和height属性。严格遵循流动布局模型块状元素的流动方式。自上至下流动。另外一种,大小是恰好能将内容包括,而且右側浮动。能够多个在一行。

当加上position:absolute/relative的时候,块状元素和内联元素。就不受父级区域的限制了,能够移动到不论什么位置。此时假设加上width和height属性,那么就具有层的特征了。

(加上width和height另一点优点,就是能够兼容IE浏览器了,全部的浏览器现实效果都一样了)当内联元素,在CSS中定义下列属性中的一种,便具有块元素的特征
1)display:block;
2)float:left; (不但具有块元素的特征,同一时候像左側浮动)
可是这时候的内联元素,尽管具有块状元素的特征。可是这两种有一点差别。第一种。彻头彻尾和块元素一模一样,都要单独占一行,从左至右,前提没有width和height属性。严格遵循流动布局模型块状元素的流动方式,自上至下流动,另外一种,大小是恰好能将内容包括。而且右側浮动,能够多个在一行。

当加上position:absolute/relative的时候。块状元素和内联元素,就不受父级区域的限制了。能够移动到不论什么位置,此时假设加上width和height属性,那么就具有层的特征了。(加上width和height另一点优点,就是能够兼容IE浏览器了,全部的浏览器现实效果都一样了)当内联元素,在CSS中定义下列属性中的一种,便具有块元素的特征
1)display:block;
2)float:left; (不但具有块元素的特征,同一时候像左側浮动)
可是这时候的内联元素。尽管具有块状元素的特征。可是这两种有一点差别,第一种,彻头彻尾和块元素一模一样,都要单独占一行。从左至右,前提没有width和height属性,严格遵循流动布局模型块状元素的流动方式。自上至下流动,另外一种,大小是恰好能将内容包括。而且右側浮动。能够多个在一行。



当加上position:absolute/relative的时候,块状元素和内联元素,就不受父级区域的限制了,能够移动到不论什么位置,此时假设加上width和height属性,那么就具有层的特征了。

(加上width和height另一点优点,就是能够兼容IE浏览器了。全部的浏览器现实效果都一样了)当内联元素。在CSS中定义下列属性中的一种,便具有块元素的特征
1)display:block;
2)float:left; (不但具有块元素的特征,同一时候像左側浮动)
可是这时候的内联元素。尽管具有块状元素的特征。可是这两种有一点差别,第一种。彻头彻尾和块元素一模一样,都要单独占一行,从左至右,前提没有width和height属性,严格遵循流动布局模型块状元素的流动方式,自上至下流动。另外一种,大小是恰好能将内容包括。而且右側浮动,能够多个在一行。

当加上position:absolute/relative的时候,块状元素和内联元素。就不受父级区域的限制了。能够移动到不论什么位置。此时假设加上width和height属性,那么就具有层的特征了。(加上width和height另一点优点。就是能够兼容IE浏览器了,全部的浏览器现实效果都一样了)

 

 

 

 

 

 

原文地址:https://www.cnblogs.com/mfmdaoyou/p/6736036.html