我们就从HTML5的基础总结起。希望可以提高自身的基础。

HTML5 新增的通用属性

1. contentEditable 属性

  HTML5 为大部分HTML元素都增加了contentEditable属性,如果将该属性设为true,那么浏览器将会允许开发者直接编辑该HTML元素里的内容。此处的HTML元素并不是指那些原本就允许用户输入的表单元素,如文本框、文本域之类的,而是可以把<table.../>、<div.../>等元素变成可编辑状态。

  contentEditable属性具有“可继承”的特点:如果一个HTML元素的父元素是“可编辑”的,那么它默认也是可以编辑的,除非显示指定contentEditable="false"。

  除此之外,HTML5为允许设置contentEditable属性的元素提供了isContentEditable属性,当元素处于可编辑状态时,该属性返回true;否则返回false。

  当用户编辑完成后,用户编辑的内容就会直接显示在该页面中(不要刷新页面,一旦刷新页面就会重新加载,编辑的内容会丢失),开发者可以通过该元素innerHTML属性获取编辑后的内容。

2. designMode 属性

  designMode 属性相当于一个全局的contentEditable属性,如果把整个页面的designMode属性设置为on时,该页面上所可支持contentEditable属性的元素都变成可编辑状态;designMode属性默认为off。在JavaScript代码中只能修改整个HTML页面的designMode属性。

    document.designMode = "on";

3. hidden 属性

  HTML5为所有元素都提供了一个hidden属性,这个hidden属性支持true、false两个属性值,一旦把某个HTML元素的hidden设为true,就意味着通知浏览器不显示该组件,浏览器也不会保留该组件所占用的空间。

4. spellcheck 属性

  HTML为<input.../>、<textarea.../>等元素增加了spellcheck属性。该属性可支持true、false两个属性值,如果设置spellcheck="true",浏览器将会负责对用户输入的文本内容执行输入检查,如果检查不通过,浏览器会对拼错的单词进行提示。

HTML5 新增的常用元素

  为了更好地表达HTML的文档结构、文档语义,HTML5也新增了大量元素,这些元素更好地丰富了HTML文档语义。

1. 文档结构元素

  在HTML5以前,HTML页面只能使用<div.../>元素作为结构元素,而HTML5则提供了<article.../>、<section.../>、<nav.../>、<aside.../>、<header.../>、<footer.../>等文档结构元素。下面先简单列出这些元素的概要功能。

  <article> 该元素用于代表页面上独立、完整的一篇“文章”,该元素表示的内容可以是一个帖子、一篇Blog文章、一篇短文、一条完整的回复等。总之,只要是一篇独立的文档内容,就应该使用<article.../>元素来表示。关于<article.../>的简单规则如下:

    <article.../>元素内部可使用<header.../>定义文章“标题”部分。

    <article.../>元素内部可使用<footer.../>定义文章“脚注”部分。

    <article.../>元素内部可使用多个<section.../>把文章内容分成几个“段落”。

    <article.../>元素内部可嵌套多个<article.../>作为它的附属“文章”,比如一篇Blog文章后面可以有多篇回复文章。

  <section> 该元素用于对页面的内容进行分块。<section.../>元素通常也可由标题和内容组成。关于<section.../>元素的简单规则如下:

    1. 通常建议<section.../>元素包含一个标题(也就是<h1.../>~<h6.../>元素定义的标题)。

    2. <section.../>元素可以包含多个<article.../>元素,表示该“分块”内容包含多篇文章。

    3. <section.../>元素可以嵌套<section.../>元素,用于表示该“分块”包含多个“子分块”。

  小对比:<article.../>和<section.../>两个元素非常容易混淆,因为它们都可以包含很多子元素,而且可以互相嵌套。但<article.../>和<section.../>的侧重点不同:<article.../>侧重于表达一篇独立的、完整的文章,而<section.../>则侧重于对页面内容进行分块。换句话来说,如果想表达一块独立、完整的内容时,应该使用<article.../>元素;如果想把一块内容分成几个部分,则应该使用<section.../>元素。

  <nav> 该元素专门用于定义页面上的“导航条”,包含页面上方的“主导航条”、侧边的“边栏导航”、页面内部的“页面导航”、页面下方的“底部导航”等,HTML5推荐将这些导航链接分别放在相应的<nav.../>元素中进行管理。

  <aside> 该元素专门用于定义当前页面或当前文章的附属信息,通常来说,推荐<aside.../>元素使用CSS渲染成侧边栏。

  <header> 该元素主要用于为<article.../>元素定义文章“头部”信息。该元素内部即可包含多个<h1.../>~<h6.../>这样的标题元素,也可包含<hgroup.../>元素,还可以包含普通的<p.../>、<span.../>等元素。

  <hgroup> 该元素主要用于组织多个<h1.../>~<h6.../>这样的标题元素。当<header.../>需要包含多个标题元素时,可以考虑使用<hgroup.../>把它们组成一组。

  <footer> 该元素主要用于为<article.../>元素定义“脚注”部分,包括该文章的版权信息、作者授权信息等。

  <figure.../> 该元素用于表示一块独立的“图片区域”,该元素内部可包含一个或多个<img.../>元素所代表的图片。除此之外,该元素内部还可以包含一个<figcaption.../>元素,用于定义该“图片区域”的标题。

  <figcaption> 该元素通常放在<figure.../>内部,用于定义“图片区域”的标题。

2. 语义相关元素

  HTML5也提供了如下两个语义相关元素。

  <mark> 用于显示HTML页面中需要重点“关注”的内容,就像我们看书时喜欢用荧光笔把某些重点内容标注出来一样。该元素可以指定id、style、class和hidden等通用属性。浏览器通常会用黄色显示<mark.../>标注的内容。

  <time> 用来显示被标注内容时日期、时间或者日期时间。使用该元素时除了可以指定id、style、class和hidden等通用属性之外,还可以指定如下属性。

    datetime 该属性主要用于向机器提供时间(向浏览者呈现的时间放在<time>和</time>之间),datetime属性的属性值应该符合yyyy-MM-ddTHH:mm格式的日期时间。当然,也可以只指定日期,或只指定时间。

3.两个特殊功能的元素

  HTML5还新增了如下两个具有特殊功能的元素。

  <meter> 用于表示一个已知最大值和最小值的计数仪表。比如电池的剩余电量、速度表等。使用该元素时除了可指定id、style、class、hidden等通用属性之外,还可以指定如下属性。

    value 指定计数仪表的当前值。默认为0,可以为该属性指定一个浮点小数值。

    min 指定计数仪表的最小值。默认为0,可以为该属性指定一个浮点小数值。

    max 指定计数仪表的最大值。默认为1,可以为该属性指定一个浮点小数值。

    low 指定计数仪表指定范围的最小值。该属性值必须大于等于min属性指定的值。

    high 指定计数仪表指定范围的最大值。该属性必须小于等于max属性指定的值。

    optimum 指定计数仪表有效范围的最佳值。如果该值大于high属性指定的值,则意味值越大越好;如果该值小于low属性指定的值,则意味着值越小越好。

    progress 用于表示一个进度条。使用该元素时除了可指定id、style、class、hidden等通用属性之外,还可指定如下属性。

      max 指定进度条完成时的值。

      value 指定进度条当前完成的进度值。

HTML5-CSS3-JavaScript(2)的更多相关文章

  1. HTMl5/CSS3/Javascript 学习推荐资源

    HTMl5/CSS3/Javascript 学习推荐资源 前端的定义应该是数据内容的展示,在国内大家都觉得前端只是HTML+CSS+Javascript,但是实际上与展示有关的都是前端,所以Ruby/ ...

  2. HTML5&CSS3&JavaScript&PHP&MySQL学习笔记

    1.在文字间添加一条水平线  使用<hr />  注意该符号不是成对出现的 2.<q> </q>用来标记于段落中的较短引用,浏览器会在它之间的语句两端加上双引号. ...

  3. 检测 HTML5\CSS3\JAVASCRIPT 在浏览器的适应情况

    CSS3 Selectors Test : 这是CSS3.INFO网站提供的css选择器测试页面,它能够详细显示当前浏览器对所有CSS3选择器的支持情况.启动测试,浏览器会自动测验,并已列表的方式显示 ...

  4. HTML5 + CSS3 + JavaScript

    http://www.programmer.com.cn/14761/#more-14761 文/李晶 随着互联网产业的爆炸式增长,与之伴生的Web前端技术也在历经洗礼和蜕变.尤其是近几年随着移动终端 ...

  5. html5+css3+javascript 自定义提示窗口

    效果图: 源码: 1.demo.jsp <%@ page contentType="text/html;charset=UTF-8" language="java& ...

  6. html5+css3+javascript 自定义弹出窗口

    效果图: 源码: 1.demo.jsp <%@ page contentType="text/html;charset=UTF-8" language="java& ...

  7. 《HTML5+CSS3+JavaScript 从入门到精通(标准版)》学习笔记(二)

    这是一个应用的例子,学以致用嘛 <!--这些代码我就直接放在了博客园的"页首Html代码"中,用于自定义博客,效果就是页面左上角的白色文字--> <p> & ...

  8. 《HTML5+CSS3+JavaScript 从入门到精通(标准版)》学习笔记(一)

    以下是以代码形式书写的笔记,本系列会持续更新,主要内容预计是类似下文的笔记,兼或一些思考与小项目,希望对你会有所帮助 1 <!-- --> <!DOCTYPE html>< ...

  9. 好程序员技术分享html5和JavaScript的区别

    好程序员技术分享html5和JavaScript的区别,HTML5广义上讲是前端开发学科的代名词,包含HTML5.CSS3及JavaScript三个重要的部分,是运行在浏览器上应用的统称.如PC端网站 ...

  10. 用HTML5/CSS3/JS开发Android/IOS应用框架大全

    现在人人都想成为安卓/IOS应用开发工程师.其实,安卓/IOS应用可以用很多种语言来实现.由于我们前端开发工程师,对HTML5/CSS/JavaScript的网络编程已经相当熟悉了.所以,今天大家将会 ...

随机推荐

  1. apk反编译看包名什么的

    首先默认你是装了java环境的 到google code里面下载apktool1.5.2.tar.bz2和apktool-install-windows-r05-ibot.tar.bz2(地址:htt ...

  2. 【转载】.NET 开发者必备的工具箱

    本文作者Spencer是一名专注于ASP.NET和C#的程序员,他列举了平时工作.在家所使用的大部分开发工具,其中大部分工具都是集中于开发,当然也有一些其它用途的,比如图片处理.文件压缩等. 如果你是 ...

  3. IOS多线程之序

    版权声明:原创作品,谢绝转载!否则将追究法律责任.   我们开发的应用基本上都是多线程的,几乎没有不是多线程的应用发布在appstore.首先我们的应用启动会默认有一个主线程,你一直在里面执行很多操作 ...

  4. 【Python】协程

    协程,又称微线程,纤程.英文名Coroutine. 协程的概念很早就提出来了,但直到最近几年才在某些语言(如Lua)中得到广泛应用. 子程序,或者称为函数,在所有语言中都是层级调用,比如A调用B,B在 ...

  5. 分页SQL代码

    city_id ORDER BY city_id )

  6. C# 程序自动重启的解决方法

    很多时候,我们有这样的场景,需要让程序自动重启,有很多种方法,比如用微软自带提供的方法,或者自己开辟新的线程重新调用.下面简单介绍两种方法. 方法一. 使用方法Application.Restart( ...

  7. vscode 使用sublime风格代码

    Monokai 主题 One Dark Pro主题   vscode设置字体 "editor.fontFamily": "MONACO, Consolas, 'Couri ...

  8. 【咸鱼教程】TextureMerger1.6.6 一:Egret MovieClip的制作和使用

    几个月没写代码了.然后突然用到TextureMerger,发现不会用序列图做动画了... 于是写下过程,以防忘记... MovieClip主要是用于游戏中的动画制作和播放.支持swf.gif.序列图等 ...

  9. 【C#】浏览器源代码

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  10. MJExtension的一些实用技巧

    1.在代码文件中 引入"MJExtension.h" :解决属性中的命名和服务端传过来的数据中的key不同的问题 -(NSDcitionrary *)replacedkeyFrom ...