html常见元素分为两类,一类是header区的元素,一类是body区的元素
header区元素:
meta title style link scipt base
里面包括像meta,title,style,link,scipt,base这些元素。这些元素之所以在header中,是因为不会在页面上留下直接的内容,主要是页面相关的一些资源和信息描述
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=no">
name叫做viewport,viewport什么意思呢,就是view查看,port口,查看口,一般我们认为是视口,视口什么意思呢,就是一般我们的手机屏幕,电脑屏幕,这个屏幕有多大。width=device-width,表示宽度等于设备宽度。initial-scale=1,表示初始化的缩放比例是1。maximum-scale=1.0,最大缩放是1。user-scalable=no,用户不能缩放
<base href="/">
指定基础路径,后面所有路径是以这个路径为基础
body区元素:
div/section/article/aside/header/footer
p
span/em/strong
table/thead/tbody/tr/td // 表格相关
ul/ol/li/dl/dt/dd // 列表类
a // 链接
form/input/select/textarea/button // 表单
body跟header区不一样,是直接呈现在页面上,所以元素会多一些,首先是div,这是一个万能元素,只要搞不定,就上div,所以他语义并不明确,section/article/aside/header/footer及后面都有自己都语义
<p> input type="radio" name="radio1" id="radio1-1"> <label for="radio1-1">选项一</label> <input type="radio" name="radio1" id="radio1-2"> <label for="radio1-2">选项一</label> </p>
这个label里面的for就是跟radio相关联,不然点击文字,并不能选中按钮
如何理解HTML
1、HTML '文档'
2、描述文档的 ‘结构’
3、有区块 和 大纲
<body> <section> <h1>Forest elephants</h1>
<section> <h1>Introduction</h1> <p>in this section, we discuss the lesser known forest elephants</p> </section> <section> <h1>Habitat</h1> <p>forest elephants do not live in trees but among them.</p> </section> <aside> <p>adertising block</p> </aside> </section> <footer> <p>(c) 2010 the example company</p> </footer> </body>
section是区域,发现虽然这是个html,但跟我们的文档是非常像的,我们抽取一下, 这个文档的大纲大概是这个样子
1.Forest elephants
1.1 Introduction
1.2 Habitat
1.3 Section(aside)
我们能知道页面的大概结构,html5增加了这么多语义化的标签,就是为了让html的结构更清晰,语义更明显,那么同时他也推出了一份大纲的算法,规定了哪些元素是列入大纲的,用了什么样的方式去做这个大纲
http://h5o.github.io/
这个是html5的大纲算法工具,他有几种使用方式
1、chrome插件
2、书签,只要把 H5O v0.12.4 拖到书签栏上就可以用了
这样一个大纲让我们html的结构变得非常清晰,那么增这个有什么用呢,我又不会天天去看这个大纲,对,可能对用户来说,没有那么大的用处,但是你的网页是由百度去看的,是由google去看的,是由爬虫去看,这个时候发现,这个大纲其实非常有意义,他能更好的让机器或者其他的阅读器了解你这个页面的结构,当机器,搜索引擎,蜘蛛等等都能很好的了解你的html结构的时候,你自己理解起来也会非常容易,那么就说这个html文档是非常合理,所以要关注我们html的语义,这是我们要避免的事情