以文本方式查看主题 - ╋艺 镇╋ (http://zyzsky.com/bbs/index.asp) -- ┣◇网站建设&Web语言 (http://zyzsky.com/bbs/list.asp?boardid=4) ---- CSS块元素(block)、内联元素(inline)、可变元素 (http://zyzsky.com/bbs/dispbbs.asp?boardid=4&id=3288) |
-- 作者:admin -- 发布时间:2011/12/5 13:36:46 -- CSS块元素(block)、内联元素(inline)、可变元素 块元素(block element)一般是其他元素的容器元素,块元素一般都从新行开始,它可以容纳内联元素和其他块元素,常见块元素是段落标签\'P"。“form"这个块元素比较特殊,它只能用来容纳其他块元素。 如果没有css的作用,块元素会顺序以每次另起一行的方式一直往下排。而有了css以后,我们可以改变这种html的默认布局模式,把块元素摆放到你想要的位置上去。而不是每次都愚蠢的另起一行。需要指出的是,table标签也是块元素的一种,table based layout和css based layout从一般使用者(不包括视力障碍者、盲人等)的角度来看这两种布局,除了页面载入速度的差别外,没有其他的差别。但是如果普通使用者不经意点了查看页面源代码按钮后,两者所表现出来的差异就非常大了。基于良好重构理念设计的css布局页面源码,至少也能让没有web开发经验的普通使用者把内容快速的读懂。从这个角度来说,css layout code应该有更好的美学体验。 你能够把块容器元素div想象成一个个box,或者如果你玩过剪贴文载的话,那就更加容易理解了。我们先把需要的文章从各种报纸、杂志总剪 下来。每块剪下来的内容就是一个block。然后我们把这些纸块按照自己的排版意图,用胶水重新贴到一张空白的新纸上。这样就形成了你自己独特的文摘快报了。作为一种技术的延伸,网页布局设计也遵循了同样的模式。 内联元素(inline element)一般都是基于语义级(semantic)的基本元素。内联元素只能容纳文本或者其他内联元素,常见内联元素 “a”。 需要说明的是:inline element的中文叫法,有多种内联元素、内嵌元素、行内元素、直进式元素。基本上没有统一的翻译,爱怎么叫怎么叫吧。另外提到内联元素,我们会想到有个display的属性是display:inline;这个属性能够修复著名的IE双倍浮动边界问题。 块元素(block element)和内联元素(inline element)都是html规范中的概念。块元素和内联元素的基本差异是块元素一般都从新行开始。而当加入了css控制以后,块元素和内联元素的这种属性差异就不成为差异了。比如,我们完全可以把内联元素cite加上display:block这样的属性,让他也有每次都从新行开始的属性。 可变元素是基于以上两者随环境而变化的,它的基本概念就是他需要根据上下文关系确定该元素是块元素或者内联元素。可变元素还是属于上述两种元素类别,一旦上下文关系确定了他的类别,他就要遵循块元素或者内联元素的规则限制。 html标签的block、inline分类明细: 块元素(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 - 定义变量 可变元素 可变元素为根据上下文语境决定该元素为块元素或者内联元素。 ◎ applet - java applet ◎ button - 按钮 ◎ del - 删除文本 ◎ iframe - inline frame ◎ ins - 插入的文本 ◎ map - 图片区块(map) ◎ object - object对象 ◎ script - 客户端脚本 [此贴子已经被作者于2012-11-20 16:25:11编辑过]
|
-- 作者:admin -- 发布时间:2011/12/5 14:12:41 -- 块元素(block element): 块级元素生成一个元素框,(默认地)它会填充其父级元素的内容,旁边不能有其他元素。换句话说,他在元素框之前和之后生成了“分隔”符。我们最熟悉的HTML元素是p和div. 内联元素(inline element),也叫行内元素 内联元素在一个文本行内生成元素框,而不会打断这行文本。内联元素最好的例子就是XHTML中的a元素。strong和em也属于内联元素。这些元素不会在它本身之前或之后生成“分隔符”,所以可以出现在另一个元素的内容中,而不会破坏其显示。 尽管“块”和“内联”这两个词与HTML和XHTML中的块级和行内元素有很多共同点,但也存在一个重要的差别。在HTML和XHTML中,块级元素不能继承自内联元素(即不能嵌套在行内元素中)。但是CSS中,对于显示角色如何嵌套不存在任何限制。 另外提到内联元素,我们会想到有个display的属性是display:inline;这个属性能够修复著名的IE双倍浮动边界问题。 块元素(block element)和内联元素(inline element)都是html规范中的概念。块元素和内联元素的基本差异是块元素一般都从新行开始。而当加入了css控制以后,块元素和内联元素的这种属性差异就不成为差异了。比如,我们完全可以把内联元素cite加上display:block这样的属性,让他也有每次都从新行开始的属性。也可以把块元素div加上display:inline,让他显示为内联元素。 可变元素是基于以上两者随环境而变化的,它的基本概念就是他需要根据上下文关系确定该元素是块元素或者内联元素。可变元素还是属于上述两种元素类别,一旦上下文关系确定了他的类别,他就要遵循块元素或者内联元素的规则限制。 html中元素是可以被分为块状元素和内联元素,块状元素的默认display属性为block,内联元素默认display属 性为inline。
块元素(block element)
[此贴子已经被作者于2012-3-14 14:04:56编辑过]
|
-- 作者:admin -- 发布时间:2011/12/5 14:23:34 -- 新文章:CSS文档流与块级元素和内联元素 CSS文档流与块级元素(block)、内联元素(inline),之前翻阅不少书籍,看过不少文章, 看到所多的是零碎的CSS布局基本知识,比较表面.看过O\'Reilly的<CSS权威指南>,发现里面提到的文档流概念让我很敏感. 可恶的是书中并没有解释文档流是什么东西,或许作者觉得这个太简单了以至于不值一提.但我觉得,这个概念实在太重要了.理解了它,一堆CSS布局的理论都 变得易于理解,并且体会到CSS这套设计的合理性所在. 于是我根据猜测,再加实验,得出一下说法.如有错误,纯属正常. 文档流 将窗体自上而下分成一行行, 并在每行中按从左至右的顺序排放元素,即为文档流. 每个非浮动块级元素都独占一行, 浮动元素则按规定浮在行的一端. 若当前行容不下, 则另起新行再浮动. 内联元素也不会独占一行. 几乎所有元素(包括块级,内联和列表元素)均可生成子行, 用于摆放子元素. 有三种情况将使得元素脱离文档流而存在,分别是浮动,绝对定位, 固定定位. 但是在IE中浮动元素也存在于文档流中(还让我觉得这样很合理><). 浮动元素不占任何正常文档流空间,而浮动元素的定位还是基于正常的文档流,然后从文档流中抽出并尽可能远的移动至左侧或者右侧。文字内容会围绕在浮动元素周围。当一个元素从正常文档流中抽出后,仍然在文档流中的其他元素将忽略该元素并填补他原先的空间。 浮动概念让人迷惑根源在于浏览器对理论的解读造成的。只能说很多人以IE做标准,其实它不是。 基于文档流, 我们可以很容易理解以下的定位模式:
接下来还有几个问题我搞不明白的
[此贴子已经被作者于2012-3-14 14:24:25编辑过]
|
-- 作者:admin -- 发布时间:2011/12/5 14:25:37 -- 精通Web标准网页布:块元素和内联元素
块元素 块元素是指那些在默认的情况下会换行显示的元素,比如<div>元素、<p>元素等。之所以要将元素区分为块元素,是因为在样式表中有部分属性是只对块元素起作用的。下面是一个使用块元素的实例。其代码如下。 在该实例中,为了使块元素显示得更加明显,使用样式表定义元素的边框。其代码运行后,显示效果如图13-21所示。
从图13-21可以看出,在默认的情况下,块元素在水平方向上不允许任何元素与其同行显示。 内联元素 内联元素是指那些在默认的情况下显示方式类似于文本的元素。内联元素默认情况下同行显示,直到总体的宽度大于父元素的宽度时才换行显示。同样,在样式表中,也有只使用于内联元素的相关属性。下面是一个使用内联元素的实例。其代码如下。 其代码运行后,显示效果如图13-22所示。
从图13-22中可以看出,内联元素在默认的情况下是同行显示的。 |