Html5与Css3知识点拾遗(二)
页面title
选择能简要概括文档内容的文字作为title文字,title核心内容放在前60个字符
分级标题
1.创建分级标题时,避免跳过级别,如h3直接跳到h5,但允许从低级别跳到高级别。
2.不用h1~h6标记副标题、标语,应该用段落或其他非标题元素
<h1>Hello World</h1>//标题
<p class="subhead">This is a html .</p>//副标题,class命名为subhead
页面构成
1.页眉
header:介绍性或导航性内容的区域。用来包括内容区块的标题,还有数据表格、搜素表单、相关logo
可选的属性role=“banner”显示地指出该页眉为页面级的,提高可访问性
<body>
<header role="banner"> //页面级的header
<nav>
<ul>
<li><a href="#">首页</a></li>
<li><a href="#">登录</a></li>
</ul>
</nav>
</header>
</body>
<main role="main">
<article>
<header> //页面深处介绍性或导航性的内容
<h1>js介绍</h1>
<a href="#">js文档</a>
<nav>
<ul>
<li><a href="#">语法</a></li>
<li><a href="#">结构</a></li>
</ul>
</nav>
</header>
</article>
</mian>
注意1:不能在header里嵌套footer或另外的header,不能在footer或address嵌套header
注意2:只在必要时用header,header与h1~h6不能互换
2.标记导航
nav:仅标记文档主要的、基本的、重要链接群
可选的role=“navigation”提高可访问性,能帮助阅读器识别页面的主导航
应用情景:
- 传统导航栏
- 侧边导航栏
- 页内导航
- 翻页操作
<nav role="navigation">
<ul>
<li><a href="#">主页</a></li>
<li><a href="#">文档</a></li>
</ul>
</nav>
<article>
<header>
<h1>Html5和css3</h1>
<nav>
<ul>
<li><a href="#">Html5</a></li>
<li><a href="#">css3</a></li>
</ul>
</nav>
</header>
<section>
<h1>Html5</h1>
<p>This is a Html5 section.</p>
</section>
<section>
<h1>Css3</h1>
<p>This is a Css3 section.</p>
</section>
<footer>
<a href="#">删除</a>
<a href="#">修改</a>
</footer>
</article>
<footer>
<p><small>版权</small></p>
</footer>
注意1:不建议对辅助性页脚连接使用,若包含“商店位置”、“招聘信息”等重要链接可以用nav
注意2:不允许address嵌套nav
注意3:Html5不要用menu元素(用于发出一些命令的菜单,交互性的,用于与web应用程序中)代替nav元素
3.页面主要区域
main:主要内容,在一个页面仅使用一次
最好加上的属性role=”main”,代表页面主题
注意1:不能将mian放置在article、asiide、footer、header、nav中
注意2:role=”main”与ARIA地标有关,帮助阅读器定位页面的主要区域
4.创建文章
article:表示文档、页面、应用甚至是独立容器。一篇帖子、一则评论,甚至是一个交互性的小部件或小工具以及插件。
注意1:article可以嵌套article,原则上要内容相关联。也可以有非页面级的footer
注意2:一个页面可以有多个article
注意3:一个article可以包括多个section,section里可以嵌套article,可以包含独立的h1~h6
<article><!--外层article开始-->
<header>
<h1>My article</h1>
<p>Hello World </p>
</header>
<article><!--内层article开始-->
<header>
<h2>用户</h2>
<p>评论 </p>
</header>
<footer>
<p>发布时间</p>
</footer>
</article><!--内层article结束-->
<footer>
<p>This is my footer</p>
</footer>
</article><!--外层article结束-->
//表示插件
<article>
<h1>这是一个内嵌页面</h1>
<object>
<embed src="#" wigth="100" height="200"></embed>
</object>
</article>
5.定义区块
section:用于对应用程序页面上的内容进行分块。具有像似主题的一组内容,通常包含标题和内容
注意:若只是为了添加样式或脚本行为,则用div而不是section
<section>
<h1>this is an apple</h1>
<p>We can eat it!</p>
</section>
<article>
<h1>this is an apple</h1>
<p>We can eat it!</p>
<section>
<h2>Brand 1</h2>
<p>It is red</p>
</section>
<section>
<h2>Brand 2<</h2>
<p>It is red</p>
</section>
</article>
/*互换嵌套
*article可以看成特殊的section元素,更加强调独立性
*section元素强调分段或分块
*如果一块内容相对比较独立,则用article;如果想将内容分为几段,则用section
*不要将section作为设置页面样式的容器,那是div的工作
*如果article、aside、nav元素更符合使用条件,不用section
*没有标题内容,不要使用section元素
*/
<section>
<h1>fruit</h1>
<article>
<h2>Apple</h2>
<p>Taste good!</p>
</article>
<article>
<h2>Banana</h2>
<p>Taste good!</p>
</article>
</section>
6.指定附注栏
aside:内容与主题相关性不是很强的。引述、广告、相关产品列表等
可选的属性role=“complementary”,可表示侧栏附属信息
注意1:一般放在main内容之后
注意2:不允许将aside嵌套在address内
/*第一种用法:在article以内*/
<header/>
<h1>js入门</h1>
<header>
<article>
<h1>语法</h1>
<p>综述</p>
<aside>
<h1>名词解释</h1>
<p>语法:对一种语言来说很重要的内容体</p>
</aside>
</article>
/*第二种用法:侧边栏评论,附属信息,广告单元弹出框*/
<aside>
<nav>
<h2>评论</h2>
<ul>
<li><a href="#">2017-7-7</a></li>
<li><a href="#">Adeline:我在学习</a></li>
</ul>
</nav>
</aside>
7.页脚
footer:内容的底部。包括作者、 版权申明、隐私政策;附录、索引、许可协议
属性role=”contentinfo”,可表示页面的页脚。
注意1:不能在footer里嵌套header或者另一个footer,也不能将footer嵌套在header或address里
8.通用容器
div:没有语义
注意1:div对js实现特定的交互行为有帮助,主要是为便于css分配样式
9.地标角色ARIA改善可访问性
role:无障碍访问。
role="banner" //横幅,在页面级header中,只用一次
role="navigation" //导航,应添加到每个nav中
role="main" //主体,最好添加到main中,也可加到div中,只用一次
role="complementary" //补充,添加到aside或div中
role="contentinfo" //内容,在页面级页脚中,只用一次
10.为元素指定类别和ID名称
class:推荐使用为元素添加样式
id:唯一标识符,便于js访问
11.title属性
title属性:可以有声阅读,提升无障碍访问功能。可以为任何元素添加title元素,不过多为链接。
鼠标显示。IE7的alt属性也有相同功能,但如果同时出现,显示的是title的内容
12.分组元素
hgroup:将标题及其子标题按h1~h6进行分组。
<article>
<header>
<hgroup>
<h1>主标题</h1>
<h2>子标题</h2>
</hgroup>
<p><time datetime="2017-07-07">2017-07-07</time></p>
</header>
<div>内容</div>
<footer>
<p>作者</p>
</footer>
</article>
Html5与Css3知识点拾遗(二)的更多相关文章
- Html5与Css3知识点拾遗(八)
css5新增的元素与属性 表单内元素的属性 1. form属性 之前必须书写在表单内部.而在Html5中,可以放在任何位置,为元素指定一个form属性,属性值为该表单的id,就可以声明该元素属于指定表 ...
- Html5与Css3知识点拾遗(七)
布局 实例:规范的命名和编排 <body> <div class="page"><!--page开始--> <header class=& ...
- Html5与Css3知识点拾遗(六)
web字号 px() 百分比(较常用) em(最常用):一般1em=16px,相对单位.以父元素作参照系,父元素大小是不确定的 body{ font-size:100%; /*父元素默认为16px*/ ...
- Html5与Css3知识点拾遗(五)
css3更新的颜色 RGBA:红.绿.蓝.不透明度 rgba(89,0,127,0.4); HSL和HSLA:色相.饱和度.亮度.不透明度 hsl(282,100%,25%); hsl(282,100 ...
- Html5与Css3知识点拾遗(九)
css布局 控制元素的显示类型和可见性 块级元素 dispaly:block: 行内元素(不能设置宽度) display:inline: 不接受padding设置,但padding-top和paddi ...
- Html5与Css3知识点拾遗(四)
web图像 JPEG:适用于大多数照片,颜色较多,可接受质量损失的图像 PNG-8:适用标识.重复的图案以及其他颜色较少的图像或具有连续颜色的图像 PNG-24:不支持颜色更多的图像,适用与颜色丰富且 ...
- Html5与Css3知识点拾遗(三)
文本 small:包括免责申明.注意事项.法律限制.版权信息,只适用于短于,常包含在页面级的footer里 H5对i和b的重新定义 b:提醒文字.不传达任何额外的语气.文档摘要关键词.评论中的产品名. ...
- Html5与Css3知识点拾遗(一)
1.元素 空元素: 可选的空格空格和斜杠 <img src="x.jpg" width="300" alt="pic" /> & ...
- HTML5与CSS3知识点总结
好好学习,天天向上 本文已收录至我的Github仓库DayDayUP:github.com/RobodLee/DayDayUP,欢迎Star 原文链接:https://blog.csdn.net/we ...
随机推荐
- Android 异步加载数据 AsyncTask异步更新界面
官方文档: AsyncTask enables proper and easy use of the UI thread. This class allows to perform backg ...
- 基于vue的悬浮碰撞窗口(用于打广告的)组件
由于项目需要改写了一个悬浮碰撞弹窗组件 <template> <div class="floatLayer"> <a class="clos ...
- mysql 查看mysql相关信息
登入数据库的时候: select @@version; select version(); 复制代码 mysql> select @@version; +-----------+ | @@ver ...
- PAT 1042 字符统计(20)(思路)
1042 字符统计(20)(20 分) 请编写程序,找出一段给定文字中出现最频繁的那个英文字母. 输入格式: 输入在一行中给出一个长度不超过1000的字符串.字符串由ASCII码表中任意可见字符及空格 ...
- Activity(活动)
- MacDev.GetArchOfLibrary
1. static library How to check target architecture of a static library http://changhoward.blogspot.c ...
- web框架--MVC、MTV
一.MVC框架: MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式:[1] Model(模型)表示应用程序核心(比如数据库记 ...
- java1.8 版本改成 java1.7版本
以前先安装的java1.7 大部分程序应该都是只支持1.7 不支持1.8 但是因为要跑一个别人的项目 要求是java1.8 所以想在电脑上同时装1.7和1.8 到官网上下载1.8 安装 安装完成后 并 ...
- 洛谷1894 [USACO4.2]完美的牛栏The Perfect Stall
原题链接 二分图最大匹配板子. 每个奶牛向它愿意去的牛棚连边,跑二分图最大匹配即可. 这里我用的是匈牙利算法. #include<cstdio> #include<cstring&g ...
- The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone问题解决
从错误即可知道是时区的错误,因此只要将时区设置为你当前系统时区即可 因此使用root用户登录mysql,按照如下图所示操作即可. 把时区设置为所在地时区(即东八区的时区)后,再连接数据库就可以了