在谈论CSS布局时,我们需要提前知道一些东西。对于html各种标签/元素,可以从块的层面做一个分类:要么是block(块元素),要么是inline(内联元素):
block元素的特点:
1. 总是另起一行开始;
2. 高度,行高以及顶、底边距都可控制;
3. 宽度缺省是它所在容器的100%,除非设定一个宽度。
inline元素的特点:
1. 和其它元素都在一行上;
2.高度,行高以及顶、底边距不可改变;
3. 宽度就是它所容纳的文字或图片的宽度,不可改变。
下面对它们的性质及应用做进一步说明:
块元素(block element) 通常作为其它元素的容器,它可以容纳内联元素和其它块元素。
我们知道默认情况下,块元素会顺序以每次另起一行的方式往下排,而通过CSS控制其样式,我们可以改变这种默认布局模式,把块元素摆放到你想要的位置上去。需要指出的是,table标签也是块元素的一种,基于table表格和基于CSS+DIV的布局,在使用者看来除了页面载入速度的差别(table 在所有内容元素加载完成后才显示),没有其它的差别。但是从页面的源代码来看,这种差异就非常大了。基于良好结构理念设计的CSS布局源码,至少能让没有 web开发经验的用户很容易找到连续的页面内容。从这个角度来说,CSS layout code应该有更好的美学体验。
我们可以把模块化的DIV想象成一个个box,然后把它们按自己的意愿排列组成完整的内容,网页布局设计就是遵循了同样的模式。
块元素(block element) HTML标签分类明细
* 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) 一般都是基于语义级(semantic)的基本元素,只能容纳文本或者其它内联元素。
* 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 - 客户端脚本
但是通过CSS,我们可以摆脱上面表格里HTML标签归类的限制,自由地在不同标签/元素上应用我们需要的属性。例如,我们可以对块元素[ ul ]标签加上 display:inline 属性,让原本垂直的列表水平显示,这在我们设置Blog导航条时得到了广泛应用;我们也完全可以把内联元素[ cite ]加上 display:block 这样的属性,让它也有每次都从新行开始的属性。
分享到:
相关推荐
可变元素是基于块状元素和内联元素的特点,它可以根据上下文关系确定该元素是块状元素或者内联元素。可变元素包括: * applet - java applet * button - 按钮 * del - 删除文本 * iframe - inline frame * ins - ...
块元素是指占据一整行空间的元素,而行内元素是指只占据所需空间的元素。下面我们将对块元素和行内元素进行详细的介绍。 块元素(block element) 块元素是指占据一整行空间的元素。块元素通常具有以下特点: * ...
HTML中的元素可以分为两大类:内联元素(Inline Elements)和块级元素(Block Elements),它们在网页布局中扮演着...在实际工作中,合理运用内联元素、块级元素和可变元素,结合CSS,可以创建出丰富多彩的网页界面。
块元素(block element) p – 段落 pre – 格式化文本 table – 表格 ol – 排序表单 ul – 非排序列表 address – 地址 blockquote – 块引用 center – 居中对齐块 div – 常用块级 ...
- **块元素和内联元素**:了解这两种类型的元素如何影响布局。 - **实用技巧**:例如使用盒模型、浮动等技术简化布局过程。 - **调试CSS**:使用开发者工具等手段检查和调整样式。 ### 网页头部元素的详细定义 ###...
此外还有一些可变元素,它们根据上下文环境决定自身是否作为块级或内联元素显示。 ##### 2.3 `float` 属性 `float`属性可以应用于块级元素,使其脱离正常的文档流,并向左或向右浮动。当元素设置了`float`属性后,...
相反,块元素如`<h1>`、`<div>`和`<hr>`等,它们各自占据一整行,前后有换行符,可以包含内联元素或其它块级元素。 在默认情况下,HTML元素的布局是自上而下、从左到右展开。内联元素会根据浏览器宽度和自身宽度来...
《jQuery.syntaxify:元素与内联JS的语法高亮详解》 在Web开发中,代码的可读性和清晰性是至关重要的。为了提高代码的可读性,开发者常常需要对代码进行语法高亮处理,使其在网页上显示时更加醒目、易懂。jQuery是...
- **创建仪表板**:使用自由形式元素和网格来创建可变尺寸内容,自动调整大小和位置,并探讨了文本项目布局、容器定位、网格、表格和矩阵大小以及列表大小的计算方法。 - **块状与内联节**:对比分析了两种不同类型...
`inline-block`是行内块元素,允许高度调整。 12. **float** 属性控制元素的浮动方向。`left`元素向左浮动;`right`向右浮动;`none`不浮动,元素按正常流定位;`inherit`继承父元素的浮动设置。 这些CSS属性提供...
transform属性可用于内联元素和块元素。其默认值为none,表示不元素不进行变形。transform另一个属性值是一系列的。表示一个或多个变形函数,以空格分开;我们可以同时对一个元素进行变形的多种属性操作,如rotate...
`<li>`元素作为列表的基本构建块,可以承载各种类型的内容,如文本、图像、链接等,常用于展示信息、步骤指南、菜单选项等。 ### 1. 无序列表 (`<ul>`) 无序列表通常用于展示不涉及顺序的信息,如导航菜单、网站...
可变元素(根据上下文语境决定该元素为块元素或者内联元素):button、iframe、script、del等 块级元素会独占一行,其宽度自动填满其父元素宽度;行内元素不会独占一行,相邻的行内元素会排列在同一行里,知道一行排...
- **inline-block**:内联块元素。 #### 8. `position`属性的值 - **static**:按照正常文档流进行排列。 - **relative**:相对定位,不脱离文档流。 - **absolute**:绝对定位,脱离文档流。 - **fixed**:固定...
内联元素如`<span>`、`<a>`,它们在一行内显示,不占据整行空间;而块级元素如`<div>`、`<p>`,每个都独占一行,形成独立的块。W3C(万维网联盟)是一个制定Web标准的国际组织,其规定了HTML4的规范,要求网页应遵循...
2. **内联元素与块元素的转换**:CSS中的`display`属性允许我们将元素从内联(如`<a>`标签)转换为块级(如`<div>`),以便控制它们的布局。 3. **元素盒模型**:理解盒模型(包括边距、内边距、宽度和高度)对于...
- **规则、选择器和声明块**:构成CSS规则的三个主要部分,分别定义了应用哪些元素、哪些样式以及具体的样式内容。 ### CSS注释 - **单行注释**:以`/*`开始,以`*/`结束,用于解释代码或暂时禁用某段代码。 - **...
元素的分类包括块级元素和内联元素,以及它们如何影响页面布局。文档标题(`<head>`和`<title>`)用于设置网页的标题,元数据(`<meta>`)用于提供关于页面的附加信息,如字符编码和关键词。插入样式(`<style>`)和...