Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 天天操天天干天天摸,夜夜艹天天干,亚洲伊人成综合成人网

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          解決舊版IE(678)不兼容HTML5標簽的方法

          用語義化代碼更直觀,而且更方便SEO優化。但是此HTML5新標簽在IE6/IE7/IE8上并不能識別,需要進行JavaScript處理。以下就介紹幾種方式。

          方式一:Coding JavaScript

          <!--[if lt IE 9]>
          <script>
             (function() {
               if (! 
               /*@cc_on!@*/
               0) return;
               var e = "abbr, article, aside, audio, canvas, datalist, details, dialog, eventsource, figure, footer, header, hgroup, mark, menu, meter, nav, output, progress, section, time, video".split(', ');
               var i= e.length;
               while (i--){
                   document.createElement(e[i])
               } 
            })() 
          </script>
          <![endif]-->

          如果是IE9以下的IE瀏覽器將創建HTML5標簽, 這樣非IE瀏覽器就會忽視這段代碼,也就不會有無謂的http請求了。

          方法二:使用Google的html5shiv包(推薦)

          <!--[if lt IE 9]>
            <script type="text/javascript" src="http://cdn.bootcss.com/html5shiv/r29/html5.min.js"></script>
          <![endif]-->

          上面這段代碼僅會在IE瀏覽器下運行,還有一點需要注意,在頁面中調用html5.js文件必須添加在頁面的head元素內,因為IE瀏覽器必須在元素解析前知道這個元素,所以這個js文件不能在頁面底部調用。

          不管使用以上哪種方法,都要初始化新標簽的CSS。因為HTML5在默認情況下表現為內聯元素,對這些元素進行布局我們需要利用CSS手工把它們轉為塊狀元素方便布局

          /*html5*/
          article,aside,dialog,footer,header,section,footer,nav,figure,menu{display:block}

          如果IE6/7/8 禁用腳本的用戶,那么就變成了無樣式的"白板"網頁,我們該怎么解決呢?

          我們可以參照facebook的做法,即引導用戶進入帶有noscript標識的 “/?_fb_noscript=1”頁面,用 html4 標簽替換 html5 標簽,這要比為了保持兼容性而寫大量 hack 的做法更輕便一些。

          <!--[if lte IE 8]>
          <noscript>
            <style>
              .html5-wrappers{display:none!important;}
            </style>
            <div class="ie-noscript-warning">您的瀏覽器禁用了腳本,請<a href="#">查看這里</a>來啟用腳本!或者<a href="/?noscript=1">繼續訪問</a>.
            </div>
          </noscript>
          <![endif]-->

          這樣可以引導用戶開啟腳本,或者直接跳轉到HTML4標簽設計的界面。

          版本瀏覽器不識別新的語義化標簽。

          上面這些標簽, 都是塊級元素, 沒有任何默認樣式, 容器級標簽, 可以包裹任何東西, 在語義上都比div大, 它們能包裹div, 但是div不能包裹它們。

          新的提綱標簽, IE9開始兼容, IE8還是不能用這些標簽, 移動端中可以正常使用, 因為手機沒有IE。

          解決方案:利用html5shiv.js

          下載地址: https://www.bootcdn.cn/html5shiv/

          .HTML5是什么

          HTML是web開發中三大規范之一,可以參考:Web前端開發-HTML入門干貨 。

          HTML產生于1990年,1997年的HTML4.0成為互聯網標準并廣泛應用,HTML5是在HTML4.01(1999年發布)的基礎上發展而來,在2008年正式發布,在2012年形成了穩定版本。

          其實在HTML4.01之后,W3C組織除了HTML5之外,為了嚴格html編寫規范,發布了XHTML。經過了跌宕起伏的分歧、融合之路,本來預計要逐步被XHTML替代的HTML5,最終成了W3C組織確認的html規范。

          在HTML5規范中添加了很多新元素及功能,比如: 更好的頁面結構(語義化標簽)、圖形的繪制(畫布)、多媒體(音頻、視頻)內容、智能表單、地理位置、數據存儲以及多線程等。

          2.支持HTML5的瀏覽器版本

          可以通過html5test.com網站,測試HTML5各標簽在各類瀏覽器中支持程度。

          html5test.com

          PC瀏覽器各版本支持HTML5考量

          移動瀏覽器各版本支持HTML5考量

          對于IE6、7、8來講,支持極少部分的HTML5新標簽,IE9也是部分支持。

          3.如何解決低版本瀏覽器兼容HTML5標簽

          在低版本瀏覽器中兼容使用HTML5標簽,有兩種方案,一:自定義標簽;二:使用第三方js插件

          (1)自定義標簽

          可以利用添加自定義標簽的方式為IE 瀏覽器添加 HTML5 元素。

          <script>
          //可以使用自定義標簽
          document.createElement("header");
          document.createElement("article");
          document.createElement("aside");
          document.createElement("section");
          document.createElement("footer");
          </script>

          但是Internet Explorer 8 及更早 IE 版本的瀏覽器不支持以上的方式,所以采用以下方式。

          (2)利用第三方js插件

          html5shiv.js是第三方插件,能夠解決IE9以下瀏覽器對html5新增標簽的不識別,并導致CSS不起作用的問題。

          <head>
          <meta charset="utf-8">
          <title>渲染 HTML5</title>
          <!-- 專門針對IE瀏覽器的語句,且只能被IE9識別,其他瀏覽器將以下if endif語句認為是注釋 -->
           <!--[if lt IE 9]>
           <script src="http://apps.bdimg.com/libs/html5shiv/3.7/html5shiv.min.js"></script>
           <![endif]-->
          </head>

          <!--[if !IE]><!--> 除IE外都可識別 <!--<![endif]-->

          <!--[if IE]> 所有的IE可識別 <![endif]-->

          <!--[if IE 6]> 僅IE6可識別 <![endif]-->

          <!--[if lt IE 6]> IE6以及IE6以下版本可識別 <![endif]-->

          <!--[if gte IE 6]> IE6以及IE6以上版本可識別 <![endif]-->

          <!--[if IE 9]> 僅IE9可識別 <![endif]-->

          4.新增常用的HTML5標簽

          (1)語義化標簽

          相對于無具體含義的div和span標簽,語義化標簽的優點是方便搜索引擎能識別頁面結構,有利于SEO。

          header:該標簽定義了頁面的頭部區域;

          nav:該標簽定義了頁面的導航鏈接區域;

          footer:該標簽定義了頁面或section的頁腳;

          section:該標簽定義了頁面區域;

          article:該標簽定義了頁面的內容區域;

          (2)多媒體標簽

          1)視頻標簽

          video:用來定義視頻內容,支持多種視頻格式,包括.mp4、.ogg、.webm等,最常用的是.mp4。

           <body>
           <!-- src屬性設置視頻源,
          width、height設置視頻大小,單位是像素,
          autoplay屬性設置自動播放,
          對于google瀏覽器需要添加muted屬性,表示靜音播放,
          controls屬性設置播放控件,包括播放、暫停等,
          loop屬性設置視頻循環播放, 
          poster屬性設置視頻封面,
          -->
          <video
          src="media/xiaomitv.mp4"
          width="300"
          height="100"
          autoplay="autoplay"
          muted="muted"
          controls="controls"
          loop="loop"
          poster="images/a.jpg"
          ></video>
          </body>

          還可以采用如下代碼,兼容多種格式的視頻文件

          <video width="320" height="240" controls="controls">
          <source src="movie.mp4" type="video/mp4" />
          <source src="movie.ogg" type="video/ogg" />
          <source src="movie.webm" type="video/webm" />
          Your browser does not support the video tag.
          </video>

          2)音頻標簽

          audio:用來定義音頻內容,支持多種音頻格式,包括.mp3、.wav、.ogg等,最常用的是.mp3。

          音頻標簽的用法和視頻標簽的基本一樣,屬性及屬性值含義也基本一樣。

          Google的chrome瀏覽器將音頻、視頻自動播放給默認禁止了,視頻可以通過添加靜音播放折中解決,但是音頻單獨通過html標簽和屬性是不能解決的,需要js配合使用。

          (3)智能表單標簽

          1)新增input類型

          tel:限制輸入電話號碼,目前只有 Safari 8 支持 tel 類型;

          email:在提交時驗證輸入內容是否符合郵箱格式;

          date:限制輸入的內容為日期,瀏覽器會彈出日期選擇器;

          time:限制輸入的內容為時間,瀏覽器會彈出日期選擇器;

          number:限制輸入的內容僅為數字;

          url:在提交時驗證輸入內容是否符合url格式;

          <form action="">
          <ul>
          <li>搜索:<input type="search" name="" id="" /></li>
           <li>電話:<input type="tel" /></li>
           <li>郵箱:<input type="email" /></li>
          <li>日期:<input type="date" /></li>
          <li>時間:<input type="time" /></li>
          <li>數量:<input type="number" min="1" max="5"/></li>
          <li>網址:<input type="url" /></li>
          <li>附件:<input type="file" /></li>
          <li><input type="submit" /></li>
          </ul>
          </form>


          2)新增input的屬性

          min和max屬性可以限制數字的最值,可以限制日期、時間類型的最值;其屬性值為具體內容。

          required屬性表示必填項;其屬性值為required。

          placeholder屬性表示提示信息,其屬性值為提示信息。

          multiple屬性表示input類型為file時,可以文件多選;其屬性值為multiple。

          autocomplete屬性表示是否顯示之前提及過的文本信息;其屬性值為on或者off。


          主站蜘蛛池模板: 一本AV高清一区二区三区| 国产在线观看一区二区三区| 性盈盈影院免费视频观看在线一区| 一区二区三区四区精品| 久久久av波多野一区二区| 一区二区三区在线|日本| 一区二区三区在线观看| 性色av一区二区三区夜夜嗨| 一区二区三区内射美女毛片| 免费无码一区二区三区蜜桃大| 久久精品午夜一区二区福利 | 国产成人精品无人区一区| 在线观看国产一区二三区| 岛国无码av不卡一区二区| 极品少妇伦理一区二区| 日韩精品一区二区三区在线观看| 99偷拍视频精品一区二区| 精品成人乱色一区二区| 久久久久人妻一区二区三区| 无码成人一区二区| 久久精品亚洲一区二区三区浴池| 亚洲AV无码一区二区乱孑伦AS| 精品一区二区在线观看| 国产精品无码AV一区二区三区| 久久久久人妻精品一区蜜桃| 亚洲国产精品一区第二页 | 国产主播在线一区| 无码人妻一区二区三区一| 国产精品久久久久一区二区三区 | 日韩内射美女人妻一区二区三区| 国产乱码一区二区三区爽爽爽| 日韩一本之道一区中文字幕| 免费精品一区二区三区第35| 日本内射精品一区二区视频| 伊人久久精品一区二区三区| 国产aⅴ精品一区二区三区久久| 日本一区午夜爱爱| 国产一区二区三区91| 精品深夜AV无码一区二区| 亚洲国产欧美国产综合一区| 波多野结衣一区二区免费视频|