html标签大多可分为块级元素和行内元素,有些标签在页面属于不可见的如<link>等,面试时说块级元素和行内元素就够了。
块级元素
可以设置宽高,默认宽度100%,部分有独有的子元素标签。
典型的有<div><p><ul>
行内元素
一般不可以设置宽高,多个行内元素显示时会在同一行显示,但是部分行内元素可以设置宽高,如<input>< img>,而不可设置的如<span><a>。按照规范,行内元素内不可以有块级元素,不过有的话有时也没啥事,但最好还是规范的来。
万能的div和span
作为典型的容器元素,单靠div和span几乎能完成所有的布局,但是他们归根到底还是容器元素,厨师能切菜,但是有切菜工还是让切菜工去做吧。了解其他标签可以从这两个入手。
--块级派---
div与类div
浏览器表现为一个占了一整行的矩形,没有边距,而且他的块级元素如p等浏览器可能会添加一些边距。一个纯粹的块级容器元素,没有什么特殊的语义,跟他一样的还有html5新增的一些语义化标签,如header 、footer、section等,他们都是单纯的容器标签,了解就可以用来替代div,不然直接用div就行。
当你想表示页面内的一整行的容器时推荐用div或者header 、footer、section等语义化且无特殊表现的容器元素
p与h1-h6的标签
这两个在浏览器表现也是占一行,但是可能会自带一些边距,也就是跟其他元素上下保持一些距离。p是段落,h系列是标题,自带加粗,且字号h1最大,h6最小。标签内不可包含其他块级元素。
当你想表示一段话的时候用p标签,表示标题时用h系列,建议标题从h2开始而不是h1
ul ol dl 列表元素
ul无序列表 ol有序列表,浏览器表现为自带内边距padding,和上下外边距,其特有子元素为li标签,li自带标记点,无序列表为小黑点,有序为123等,可通过样式修改。一般用于文章列表排行榜导航等部分。
dl自定义列表,特有子元素有dt和dd,我用的不多,可后续了解。
当你需要列表,排行榜,条款等那些连续且样式都差不多的时候可以用列表元素,有序ol无序ul,子元素都是li
table 大表哥
table 表格元素,不设置属性的话浏览器表现为很丑的一个表格,多年以前是网页布局的常客,现被div替代,特有子元素非常多,非常多,非常多,如下,
<table>
<caption>九宫</caption>
<colgroup>
<col></col>
<col span="2" width="100px"></col>
</colgroup>
<thead>
<tr><th>1</th><th>2</th><th>3</th></tr>
</thead>
<tbody>
<tr><td>4</td><td>5</td><td>6</td></tr>
</tbody>
<tfoot>
<tr><td>7</td><td>8</td><td>9</td>
</tr>
</tfoot>
</table>
自带属性非常多,非常多,非常多,反正我是没记住。
当你需要表格的时候就用吧,需要注意的就是多了解自带的一些属性,尤其合并单元格
form 表单
后面跟部分行内元素单独写。
--行内派--
span
浏览器没啥表现形式,无法设置宽高,内容多大就占多大地方,但可以通过padding来修改所占空间。
用来包裹一些文本或行内元素来修改样式时常用span
网友评论