整合營銷服務商

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

          免費咨詢熱線:

          重學前端基礎:瀏覽器的兼容,CDN資源網站,html5shiv插件

          愛生命,遠離IE.拒絕IE瀏覽器,Edge改邪歸正也不看。

          瀏覽器兼容:

          主流瀏覽器都兼容 HTML5 的新標簽,對于 IE8 及以下版本不認識 HTML5的新元素,可以使用 JavaScript 創建一個沒有的元素來解決,例如:

          <script>
           document.createElement("header");
          </script>
          

          bootstrap模板:

          瀏覽器會進行能力檢測:

          <!--[if lt IE 9]>
           <script src="https://cdn.jsdelivr.net/npm/html5shiv@3.7.3/dist/html5shiv.min.js"></script>
           <script src="https://cdn.jsdelivr.net/npm/respond.js@1.4.2/dest/respond.min.js"></script>
           <![endif]-->
          

          就是參考shiv 來解決兼容性問題,打開CDN庫:https://www.bootcdn.cn/,直接搜索需要的資源就可以了。。。。。。比如:

          TML5 現在已經不是 SGML 的子集,主要是關于圖像,位置,存儲,多任務等功能的增加。

          本地離線存儲 localStorage 長期存儲數據,瀏覽器關閉后數據不丟失;sessionStorage 的數據在瀏覽器關閉后自動刪除;新的技術webworker, websocket, Geolocation.

          新增標簽

          1、<article> 標記定義一篇文章

          2、<header> 標記定義一個頁面或一個區域的頭部

          3、<nav> 標記定義導航鏈接

          4、<section> 標記定義一個區域

          5、<aside> 標記定義頁面內容部分的側邊欄

          6、<hgroup> 標記定義文件中一個區塊的相關信息

          7、<figure> 標記定義一組媒體內容以及它們的標題

          8、<figcaption> 標簽定義 figure 元素的標題。

          9、<footer> 標記定義一個頁面或一個區域的底部

          10、<dialog> 標記定義一個對話框(會話框)類似微信

          11、<video> 標記定義一個視頻

          12、<audio> 標記定義音頻內容

          13、<source> 標記定義媒體資源

          14、<canvas> 標記定義畫布

          15、<menu> 右鍵菜單

          16、<meter> 范圍條

          17、<progress> 進度條

          18、<datalist> 為input標記定義一個下拉列表,配合option

          表單類型:

          1、email 郵箱地址

          2、url URL地址

          3、date,time,month,week,datetime,datetime-local 日期類型

          4、number 數字(max min step)

          5、range 范圍滑塊(max min step)

          6、search 搜索輸入框

          7、tel 電話號碼輸入框

          8、color 顏色拾取器

          表單屬性

          1、placeholder 輸入框默認內容

          2、required 必填內容(必須加name)

          3、pattern 正則驗證(必須加name)

          4、autofocus 自動聚焦

          5、autocomplete 自動完成(autocomplete="on/off")

          6、novalidate 不驗證此表單(form屬性)

          7、multiple 多個值上傳

          移除的元素:

          純表現的元素:basefont,big,center,font, s,strike,tt,u;

          對可用性產生負面影響的元素:frame,frameset,noframes;

          支持HTML5新標簽:

          IE8/IE7/IE6支持通過document.createElement方法產生的標簽,可以利用這一特性讓這些瀏覽器支持HTML5新標簽,瀏覽器支持新標簽后,還需要添加標簽默認的樣式

          當然也可以直接使用成熟的框架、比如html5shiv,地址:https://cdn.bootcss.com/html5shiv/r29/html5.min.js。

          用語義化代碼更直觀,而且更方便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標簽設計的界面。


          主站蜘蛛池模板: 无码少妇一区二区性色AV| 精品少妇人妻AV一区二区三区| 精品无人乱码一区二区三区| 久久综合一区二区无码| 日本精品一区二区三区在线视频一| 色婷婷一区二区三区四区成人网 | 91香蕉福利一区二区三区| 国产精品主播一区二区| 一区二区三区在线免费| 亚洲午夜日韩高清一区| 99久久精品国产一区二区成人| 中文字幕AV一区中文字幕天堂 | 国产精品无码AV一区二区三区| 99久久无码一区人妻a黑| 日韩一区精品视频一区二区 | 国产精品一区二区综合| 亚洲一区二区三区高清视频| 波多野结衣AV一区二区三区中文| 精品一区二区三区自拍图片区| 欧美日本精品一区二区三区| 精品国产伦一区二区三区在线观看 | 少妇人妻精品一区二区| 亚洲爆乳无码一区二区三区| 国产精品一区二区av不卡| 国产成人一区二区三区电影网站 | 无码国产精品一区二区免费16 | 精品欧洲av无码一区二区14 | 国产成人精品一区二区三区| 国产伦精品一区二区三区免费迷 | 中文字幕aⅴ人妻一区二区| 久久成人国产精品一区二区| jazzjazz国产精品一区二区| 国产精品自在拍一区二区不卡| 国产精品被窝福利一区| 亚洲影视一区二区| 亚洲一区精品无码| chinese国产一区二区| 亚洲一区二区三区高清在线观看 | 九九无码人妻一区二区三区| 精品一区二区在线观看| 看电影来5566一区.二区|