zoukankan      html  css  js  c++  java
  • HTML5+CSS3入门学习(一)——HTML5

    什么是 HTML5?

    HTML5 将成为 HTML、XHTML 以及 HTML DOM 的新标准。

    HTML 的上一个版本诞生于 1999 年。自从那以后,Web 世界已经经历了巨变。

    HTML5 仍处于完善之中。然而,大部分现代浏览器已经具备了某些 HTML5 支持。

    HTML5 是如何起步的?

    HTML5 是 W3C 与 WHATWG 合作的结果。

    编者注:W3C 指 World Wide Web Consortium,万维网联盟。

    编者注:WHATWG 指 Web Hypertext Application Technology Working Group。

    WHATWG 致力于 web 表单和应用程序,而 W3C 专注于 XHTML 2.0。在 2006 年,双方决定进行合作,来创建一个新版本的 HTML。

    为 HTML5 建立的一些规则:

    1.新特性应该基于 HTML、CSS、DOM 以及 JavaScript。

    2.减少对外部插件的需求(比如 Flash)

    3.更优秀的错误处理

    4.更多取代脚本的标记

    5.HTML5 应该独立于设备

    6.开发进程应对公众透明

    新特性

    HTML5 中的一些有趣的新特性:

    1.用于绘画的 canvas 元素

    2.用于媒介回放的 video 和 audio 元素

    3.对本地离线存储的更好的支持

    4.新的特殊内容元素,比如 article、footer、header、nav、section

    5.新的表单控件,比如 calendar、date、time、email、url、search

    浏览器支持

    最新版本的 Safari、Chrome、Firefox 以及 Opera 支持某些 HTML5 特性。Internet Explorer 9 将支持某些 HTML5 特性。

    HTML5 <video> - 使用 DOM 进行控制

    HTML5 <video> 元素同样拥有方法、属性和事件。

    其中的方法用于播放、暂停以及加载等。其中的属性(比如时长、音量等)可以被读取或设置。其中的 DOM 事件能够通知您,比方说,<video> 元素开始播放、已暂停,已停止,等等。

    下例中简单的方法,向我们演示了如何使用 <video> 元素,读取并设置属性,以及如何调用方法。

    <!DOCTYPE html> 
    <html> 
    <body> 
    
    <div style="text-align:center;">
      <button onclick="playPause()">播放/暂停</button> 
      <button onclick="makeBig()"></button>
      <button onclick="makeNormal()"></button>
      <button onclick="makeSmall()"></button>
      <br /> 
      <video id="video1" width="420" style="margin-top:15px;">
        <source src="/example/html5/mov_bbb.mp4" type="video/mp4" />
        <source src="/example/html5/mov_bbb.ogg" type="video/ogg" />
        Your browser does not support HTML5 video.
      </video>
    </div> 
    
    <script type="text/javascript">
    var myVideo=document.getElementById("video1");
    
    function playPause()
    { 
    if (myVideo.paused) 
      myVideo.play(); 
    else 
      myVideo.pause(); 
    } 
    
    function makeBig()
    { 
    myVideo.width=560; 
    } 
    
    function makeSmall()
    { 
    myVideo.width=320; 
    } 
    
    function makeNormal()
    { 
    myVideo.width=420; 
    } 
    </script> 
    
    </body> 
    </html>

    HTML 5 拖放

    拖放(Drag 和 drop)是 HTML5 标准的组成部分。

    拖放

    拖放是一种常见的特性,即抓取对象以后拖到另一个位置。

    在 HTML5 中,拖放是标准的一部分,任何元素都能够拖放。

    下面的例子是一个简单的拖放实例:

    <!DOCTYPE HTML>
    <html>
    <head>
    <script type="text/javascript">
    function allowDrop(ev)
    {
    ev.preventDefault();
    }
    
    function drag(ev)
    {
    ev.dataTransfer.setData("Text",ev.target.id);
    }
    
    function drop(ev)
    {
    ev.preventDefault();
    var data=ev.dataTransfer.getData("Text");
    ev.target.appendChild(document.getElementById(data));
    }
    </script>
    </head>
    <body>
    
    <div id="div1" ondrop="drop(event)"
    ondragover="allowDrop(event)"></div>
    <img id="drag1" src="img_logo.gif" draggable="true"
    ondragstart="drag(event)" width="336" height="69" />
    
    </body>
    </html>

    拖动什么 - ondragstart 和 setData()

    然后,规定当元素被拖动时,会发生什么。

    在上面的例子中,ondragstart 属性调用了一个函数,drag(event),它规定了被拖动的数据。

    dataTransfer.setData() 方法设置被拖数据的数据类型和值:

    在这个例子中,数据类型是 "Text",值是可拖动元素的 id ("drag1")。

    放到何处 - ondragover

    ondragover 事件规定在何处放置被拖动的数据。

    默认地,无法将数据/元素放置到其他元素中。如果需要设置允许放置,我们必须阻止对元素的默认处理方式。

    这要通过调用 ondragover 事件的 event.preventDefault() 方法:

    进行放置 - ondrop

    当放置被拖数据时,会发生 drop 事件。

    在上面的例子中,ondrop 属性调用了一个函数,drop(event)。

    调用 preventDefault() 来避免浏览器对数据的默认处理(drop 事件的默认行为是以链接形式打开)

    通过 dataTransfer.getData("Text") 方法获得被拖的数据。该方法将返回在 setData() 方法中设置为相同类型的任何数据。

    被拖数据是被拖元素的 id ("drag1")

    把被拖元素追加到放置元素(目标元素)中

    HTML 5 Canvas

    HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像。

    画布是一个矩形区域,您可以控制其每一像素。

    canvas 拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。

    建 Canvas 元素

    向 HTML5 页面添加 canvas 元素。

    规定元素的 id、宽度和高度:

    <canvas id="myCanvas" width="200" height="100"></canvas>

    通过 JavaScript 来绘制

    canvas 元素本身是没有绘图能力的。所有的绘制工作必须在 JavaScript 内部完成:

    <script type="text/javascript">
    var c=document.getElementById("myCanvas");
    var cxt=c.getContext("2d");
    cxt.fillStyle="#FF0000";
    cxt.fillRect(0,0,150,75);
    </script>

    JavaScript 使用 id 来寻找 canvas 元素:

    var c=document.getElementById("myCanvas");

    然后,创建 context 对象:

    var cxt=c.getContext("2d"); 

    ---------暂时先写到这里-----------

  • 相关阅读:
    A Bug's Life-----poj2492(关系并查集)
    食物链--poj1182(并查集含有关系)
    How Many Answers Are Wrong----hdu3038(并查集)
    Parity game---poj1733
    使用FFmpeg类库实现YUV视频序列编码为视频
    JNA调用DLL函数遇到的几个问题
    从一个MFC工程移植对话框类到另一个MFC工程
    X264 输出的统计值的含义(X264 Stats Output)
    毕业生必知二三事。给即将毕业的师弟师妹看看,很有用的~~~~
    网络视频传输的服务质量(QoS)
  • 原文地址:https://www.cnblogs.com/Yaucheun/p/10716301.html
Copyright © 2011-2022 走看看