HTML5_CSS3

题目1: HTML5是什么?有哪些新特性?有哪些新增标签?如何让低版本的 IE 支持 HTML5新标签

HTML5是HTML标准最新的(第五次)修订版本,2014年10月由万维网联盟(W3C)完成标准制定。目标是取代1999年所制定的HTML 4.01和XHTML 1.0标准,将互联网语义化,以便更好地被人类和机器阅读,并同时提供更好地支持各种媒体的嵌入。

新特性

  • 语义特性
    HTML5赋予网页更好的意义和结构。更加丰富的标签将随着对RDFa的,微数据与微格式等方面的支持,构建对程序、对用户都更有价值的数据驱动的Web。
  • 本地存储特性
    基于HTML5开发的网页APP拥有更短的启动时间,更快的联网速度,这些全得益于HTML5 APP Cache,以及本地存储功能。Indexed DB(html5本地存储最重要的技术之一)和API说明文档。
  • 设备兼容特性
    从Geolocation功能的API文档公开以来,HTML5为网页应用开发者们提供了更多功能上的优化选择,带来了更多体验功能的优势。HTML5提供了前所未有的数据与应用接入开放接口。使外部应用可以直接与浏览器内部的数据直接相连,例如视频影音可直接与microphones及摄像头相联。
  • 连接特性
    更有效的连接工作效率,使得基于页面的实时聊天,更快速的网页游戏体验,更优化的在线交流得到了实现。HTML5拥有更有效的服务器推送技术,Server-Sent Event和WebSockets就是其中的两个特性,这两个特性能够帮助我们实现服务器将数据“推送”到客户端的功能。
  • 网页多媒体特性、
    支持网页端的Audio、Video等多媒体功能, 与网站自带的APPS,摄像头,影音功能相得益彰。
    三维、图形及特效特性(Class: 3D, Graphics & Effects)
    基于SVG、Canvas、WebGL及CSS3的3D功能,用户会惊叹于在浏览器中,所呈现的惊人视觉效果。
  • 性能与集成特性
    没有用户会永远等待你的Loading——HTML5会通过XMLHttpRequest2等技术,解决以前的跨域等问题,帮助您的Web应用和网站在多样化的环境中更快速的工作。
  • CSS3特性
    在不牺牲性能和语义结构的前提下,CSS3中提供了更多的风格和更强的效果。此外,较之以前的Web排版,Web的开放字体格式(WOFF)也提供了更高的灵活性和控制性。

新增标签

标签 使用场景
canvas 标签定义图形,比如图表和其他图像。基于 JavaScript 的绘图 API
audio 定义音频内容
video 定义视频(video 或者 movie)
source 定义多媒体资源
embed 定义嵌入的内容,比如插件
track 为诸如 元素之类的媒介规定外部文本轨道
datalist 定义选项列表。与 input 元素配合使用该元素,来定义 input 可能的值
keygen 规定用于表单的密钥对生成器字段
output 定义不同类型的输出,比如脚本的输出
article 定义页面正文内容
aside 定义页面内容之外的内容
bdi 设置一段文本,使其脱离其父元素的文本方向设置
command 定义命令按钮,比如单选按钮、复选框或按钮
details 用于描述文档或文档某个部分的细节
dialog 定义对话框,比如提示框
summary 标签包含 details 元素的标题
figure 规定独立的流内容(图像、图表、照片、代码等等)
figcaption 定义
元素的标题
footer 定义 section 或 document 的页脚
header 定义了文档的头部区域
mark 定义带有记号的文本
meter 定义度量衡。仅用于已知最大和最小值的度量
nav 导航
progress 定义任何类型的任务的进度
ruby 定义 ruby 注释(中文注音或字符)
rt 定义字符(中文注音或字符)的解释或发音
rp 在 ruby 注释中使用,定义不支持 ruby 元素的浏览器所显示的内容
section 定义文档中的节(section、区段)
time 定义日期或时间
wbr 规定在文本中的何处适合添加换行符

兼容IE9以下老版本
1.htnl5shiv主要解决HTML5提出的新的元素不被IE6-8识别,这些新元素不能作为父节点包裹子元素,并且不能应用CSS样式。让CSS 样式应用在未知元素上只需执行 document.createElement(elementName) 即可实现。html5shiv就是根据这个原理创建的。只需要在页面head中添加如下代码即可:

  

添加css样式:

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}

2.如果需要的元素可知,并且是很少,只需要添加以下js代码在头部就可以:


题目2: input 有哪些新增类型?

email:定义用于 e-mail 地址的文本字段
url:定义用于 URL 的文本字段。
tel:定义用于电话号码的文本字段。
search:定义用于搜索的文本字段。
number:定义带有 spinner 控件的数字字段
range:定义带有 slider 控件的数字字段。
Date:定义日期字段(带有 calendar 控件)
month:定义日期字段的月(带有 calendar 控件)
week:定义日期字段的周(带有 calendar 控件)
time:定义日期字段的时、分、秒(带有 time 控件)
datatime:定义日期字段(带有 calendar 和 time 控件)

题目3: 浏览器本地存储中 cookie 和 localStorage 有什么区别? localStorage 如何存储删除数据。

共同点:都是保存在浏览器端,且同源的。
区别:

  • cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递;cookie数据还有路径(path)的概念,可以限制cookie只属于某个路径下。localStorage不会自动把数据发给服务器,仅在本地保存。
  • 存储大小限制也不同。cookie数据不能超过4k,同时因为每次http请求都会携带cookie,所以cookie只适合保存很小的数据,如会话标识。localStorage 虽然也有存储大小的限制,但比cookie大得多,可以达到5M或更大。
  • 数据有效期不同。localStorage:始终有效,窗口或浏览器关闭也一直保存,因此用作持久数据;cookie只在设置的cookie过期时间之前一直有效,即使窗口或浏览器关闭。
  • 作用域不同。localStorage 在所有同源窗口中都是共享的;cookie也是在所有同源窗口中都是共享的。

localStorage 存储数据

localStorage.name ='vanida;
//localStorage["name"]='vanida';
localStorage.setItem("name","vanida");

localStorage删除数据

//清除name的值
localStorage.removeItem("name");
//localStorage.name='';
//localStorage清除所有值方法
localStorage.clear()

参考1
参考2

题目4: 写出如下 CSS3效果的简单事例

1. 圆角, 圆形
2. div 阴影
3. 2D 转换:放大、缩小、偏移、旋转
4. 3D 转换:移动、旋转
5. 背景色渐变
6. 过渡效果
7. 动画

demo

题目5: 实现如下全屏图加过渡色的效果(具体效果随意)

demo

题目6: 写出如下 loading 动画效果

demo

你可能感兴趣的:(HTML5_CSS3)