RECENT 最新发表
- 昆明网站建设技术研发中心将 说一说在网站建设时如何正确 搜索引擎指数对网站优化的作 从哪些方面着手来降低客户离 网站内容布局做好了才会有良 响应式网页设计拥有哪些特点 看看哪些因素会影响网站关键 盘点那些“非法”的网站优化 哪些网站优化手段是作弊的?是 对于深度链接能够为网站带来 我们在做网站的友情链接时有 比较常见的网站推广策略主要 如何擦亮眼睛选择靠谱的网站 发现网站权重下降后如何及时 导致网站排名起伏不定的因素
LOVE 猜你也喜欢
CSS中Block块级元素的表示-盒子模型,什么是css盒子模型?
什么是CSS的盒子模式呢?为什么叫它是盒子?先说说我们在网页设计中常听的属性名:内容(content)、填充(padding)、边框(border)、边界(margin), CSS盒子模式都具备这些属性。在介绍这些以前我们先引入一些基本的块级元素和内联元素的知识。
什么是block块级元素、inline内联元素
Block块级元素
如果一个Html文件里面不包含Css作用,那么块级元素的顺序都是另起一行的形式出现。Table也是块级元素的一种,块级元素可以容纳内联元素和其他元素。P和form标签特殊些,他们的作用是容纳其他的块级元素。Table同样可以布局你所制作的网页,但无论怎么说Css具有更好的美学体验。就像小时候我们买的贴画一样,我们将不同的贴画贴在我们喜爱的日记本的某一张纸上,按照我们喜欢的方式。
常用的块级元素
◎ 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内联元素
值得一提的是Display:inline;这个属性能够修复臭名昭著的IE双倍浮动边界问题。
常用的内联元素
◎ 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 - 定义变量
我们可以看出,如果内联元素也用了display:inline;这个属性,那么内联元素就变成了块级元素,我说的这些只是一种规范。好了,下面我们开始来介绍css盒子模型。
div这样的块级元素,就会自动占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形的样子;
与之相反,
像“span”这样的行内元素,则没有自己的独立空间,它是依附于其他块级元素存在的,因此,对行内元素设置高度、宽度、内外边距等属性,都是无效的。
其实你需要知道的行内元素就是 span 和 a ,其他的行内元素,比如 strong、b、font 这些都是以前在HTML中用来设定文字样式的标记,而使用CSS以后,这些标记应该都不用了,所以知道它们没有什么用,弄不好反而让初学者混淆了一些概念。
block表现出来的特点是折行的。 inline表现出来是不换行的。 但如果给一个元素加入了浮动(float)的话.他们就会排在一行,按自然顺序.不管是block还是inline定义了浮动之后,可以定义高度,宽度。 inline单独存在的条件下是定义不了宽度高度的.block可以. |
例如: a正常情况下是不能定义高度的。宽度倒是可以定义,但是对鼠标有反应的只有文字部分 如果加上display:block的话,高度可以定义,但是不在一行了,整个块对鼠标都有反应了 如果加上float:left的话,能定义高宽,整块对鼠标有反应 但是 它是横向菜单, |
所有允许被 BODY 元素包含的元素,要么是块级的;要么是内联的;要么既可以算作块级的,也可以算作内联的。但是绝对不存在一个能被BODY包含,但即非块级,又非内联的元素。
常见的块级元素有 DIV, FORM, TABLE, P, PRE, H1~H6, DL, OL, UL 等等。
常见的内联元素有 SPAN, A, STRONG, EM, LABEL, INPUT, SELECT, TEXTAREA, IMG, BR 等等。
另外,SCRIPT, OBJECT, MAP, BUTTON, DEL, INS 这些元素,既可以作为块级元素,也可以作为内联元素。
一般来说块级元素可以包含块级元素和内联元素;
但内联元素只能包含内联元素。
要注意的是,每个特定的元素,能包含的元素也是特定的,所以具体到个别元素上,这条规律是不适用的。
比如 P 元素,只能包含内联元素,而不能包含块级元素。
块元素(block element) |
一般是其他元素的容器元素,块元素一般都从新行开始,它可以容纳内联元素和其他块元素,常见块元素是段落标签'P。"form"这个块元素比较特殊,它只能用来容纳其他块元素。 |
内联元素(inline element) |
一般都是基于语义级(semantic)的基本元素。内联元素只能容纳文本或者其他内联元素,常见内联元素"a"。 ps:关于inline element的中文叫法,有多种内联元素、内嵌元素、行内元素、直进式元素。 另外提到内联元素,我们会想到有个display的属性是display:inline;这个属性能够修复著名的IE双倍浮动边界问题。 |
可变元素 |
需要根据上下文关系确定该元素是块元素或者内联元素。可变元素还是属于上述两种元素类别,一旦上下文关系确定了他的类别,他就要遵循块元素或者内联元素的规则限制。 |
css盒子模型
css盒子模型示意图
这些属性我们可以把它转移到我们日常生活中的盒子(箱子)上来理解,日常生活中所见的盒子也就是能装东西的一种箱子,也具有这些属性,所以叫它盒子模式。
CONTENT
那么内容(CONTENT)就是盒子里装的东西;
PADDING
而填充(PADDING)就是怕盒子里装的东西(贵重的)损坏而添加的泡沫或者其它抗震的辅料;
BORDER
边框(BORDER)就是盒子本身了;
MARGIN
至于边界(MARGIN)则说明盒子摆放的时候的不能全部堆在一起,要留一定空隙保持通风,同时也为了方便取出。
在网页设计上,内容常指文字、图片等元素,但是也可以是小盒子(DIV嵌套),与现实生活中盒子不同的是,现实生活中的东西一般不能大于盒子,否则盒子会 被撑坏的,而CSS盒子具有弹性,里面的东西大过盒子本身最多把它撑大,但它不会损坏的。填充只有宽度属性,可以理解为生活中盒子里的抗震辅料厚度,而边 框有大小和颜色之分,我们又可以理解为生活中所见盒子的厚度以及这个盒子是用什么颜色材料做成的,边界就是该盒子与其它东西要保留多大距离。