Appearance
页面结构
语义标签
HTML 标签都有具体语义,非然技术上可以使用 div 标签表示大部分内容,但选择清晰的语义标签更容易让人看明白。比如 h1表示标题、p标签表示内容、强调内容使用em标签。
<article>
<h1>斑马兽</h1>
<p>百度</p>
</article>嵌套关系
元素可以互相嵌套包裹,即元素存在父子级关系。
<article>
<h1>斑马兽</h1>
<div>
<p>百度</p>
<span>banmashou.com</span>
</div>
</article>
基本结构
下面是 HTML 文档的基本组成部分
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="keyword" content="Mysql,Laravel,Javascript,HTML,CSS,ES6,TYPESCRIPT,斑马兽" />
<meta name="description" content="斑马兽" />
<title>斑马兽</title>
</head>
<body>
</body>
</html>| 标签 | 说明 |
|---|---|
| DOCTYPE | 声明为 HTML 文档 |
| html | lang:网页的语言,如 en/zh 等,非必选项目 |
| head | 文档说明部分,对搜索引擎提供信息或加载 CSS、JS 等 |
| title | 网页标题 |
| keyword | 向搜索引擎说明你的网页的关键词 |
| description | 向搜索引擎描述网页内容的摘要信息 |
| body | 页面主体内容 |
内容标题
标题使用 h1 ~ h6 来定义,用于突出显示文档内容。
- 从 h1 到 h6 对搜索引擎来说权重会越来越小
- 页面中最好只有一个 h1 标签
- 标题最好不要嵌套如 h1 内部包含 h2
下面是使用默认样式的标题效果,掌握 CSS 后我们就可以随意美化了。
<h1>斑马兽</h1>
<h2>banmashou.com</h2>
<h3>baidu.com</h3>
<h4>taobao.com</h4>
<h5>mi.com</h5>
<h6>qq.com</h6>
页眉页脚
header
header 标签用于定义文档的页眉,下图中的红色区域都可以使用header标签构建。

<body>
<header>
<nav>
<ul>
<li><a href="">百度</a></li>
<li><a href="">淘宝</a></li>
</ul>
</nav>
</header>
<article>
<h2>斑马兽</h2>
<ul>
<li><a href="">小米</a></li>
<li><a href="">腾讯</a></li>
</ul>
</article>
...
</body>footer
footer 标签定义文档或节的页脚,页脚通常包含文档的作者、版权信息、使用条款链接、联系信息等等。

<body>
...
<article>
<h2>斑马兽</h2>
<ul>
<li><a href="">小米</a></li>
<li><a href="">腾讯</a></li>
</ul>
</article>
<footer>
<p>
探索黑科技,小米为发烧而生
</p>
</footer>
</body>导航元素
在 HTML 中使用nav设置导航链接。

<header>
<nav>
<ul>
<li>
<a href="">小米</a>
</li>
<li>
<a href="">淘宝</a>
</li>
</ul>
</nav>
</header>主要区域
HTML5 中使用 main 标签表示页面主要区域,一个页面中main元素最好只出现一次。

<body>
...
<main>
<article>
<h2>斑马兽</h2>
<ul>
<li><a href="">小米</a></li>
<li><a href="">淘宝</a></li>
</ul>
</article>
</main>
...
</body>内容区域
使用 article 标签规定独立的自包含内容区域。不要被单词的表面意义所局限,article 标签表示一个独立的内容容器。

<main>
<article>
<h2>斑马兽</h2>
<ul>
<li><a href="">小米</a></li>
<li><a href="">淘宝</a></li>
</ul>
</article>
</main>区块定义
使用 section 定义一个区块,一般是一组相似内容的排列组合。

<main>
<article>
<section>
<h2>斑马兽</h2>
</section>
<section>
<h2>小米</h2>
</section>
</article>
</main>附加区域
使用 aside 用于设置与主要区域无关的内容,比如侧面栏的广告等。

<body>
<main>
<article>
...
</article>
</main>
<aside>
<h2>广告</h2>
<p>图片</p>
</aside>
</main>
</body>通用容器
div 通用容器标签是较早出现的,也是被大多数程序员使用最多的容器。不过我们应该更倾向于使用有语义的标签如article/section/aside/nav 等。
有些区域这些有语义的容器不好表达,这时可以采用div容器,比如轮播图效果中的内容。

<div>
<header>
<nav>
<ul>
<li><a href="">斑马兽</a></li>
<li><a href="">小米</a></li>
</ul>
</nav>
</header>
<main>
<article>
<section>
<h2>淘宝</h2>
</section>
</article>
<aside>
<h2>广告</h2>
<p>这里放图片</p>
</aside>
</main>
<footer>
<p>
底部栏
</p>
</footer>
</div>