header標籤 nav標籤 section標籤 article標籤 aside標籤 widget標籤 footer標籤
可以便於開發者閱讀和寫出更優雅的代碼,代碼如詩 同時讓瀏覽器或是網絡爬蟲能夠很好地解析,從而更好分析其中的內容 更好地搜索引擎優化 切記:HTML的職責是描述一塊內容是什麼(或其意義)而不是它長的什麼樣子,它的外觀應該由CSS來決定。
datalist數據列表的呈現須要載體javascript
<input type="text" list="input_list"> <datalist id="datalist"> <option value="選項框1"></option> <option value="選項框2"></option> </datalist> <input type="text" list="input_list"> <datalist id="datalist"> <option value="選項框1"></option> <option value="選項框2"></option> </datalist>
要改變他的樣式,須要先將-webkit-appearance設置爲nonephp
<style> .my_progress{ -webkit-appearance:none; } .my-progress::-webkit-progress-bar{ //樣式 } </style> <progress class="my_progress" value="10" max="100"></progress>
不多瀏覽器支持css
<meter min="0" max="100" low="40" hign="90" optimun="100" value="91"></meter>
顯示器的最大最小值:max,min
顯示器可以到達的最大最小值:hign,low
顯示器的測量範圍的最佳值:optimum
顯示器顯示的當前值:valuehtml
火狐兼容html5
點開一個內容能夠展開面板,在火狐和谷歌兼容java
常見的連接關係表web
alternate 文檔的可選版本(例如打印頁、翻譯頁或鏡像) stylesheet 文檔的外部樣式表 start 集合中的第一個文檔 next 集合中的下一個文檔 prev 集合中的前一個文檔 contents 文檔目錄 index 文檔索引 glossary 文檔中所用字詞的術語表或解釋 copyright 包含版權信息的文檔 chapter 文檔的章 section 文檔的節 subsection 文檔的子段 appendix 文檔附錄 help 幫助文檔 bookmark 相關文檔 nofollow 用於指定 Google 搜索引擎不要跟蹤連接 licence 通常用於文獻,表示許可證的含義 tag 標籤集合 friend 友情連接 案例 <link rel="prev" href="#"> <link rel="next" href="#"> <a rel="prev" href="#">上一頁</a> <a rel="next" href="#">下一頁</a> <link rel="stylesheet" href="style.css"> <link rel="alternate" type="application/rss+xml" href="http://myblog.com/feed"> <link rel="shortcut icon" href="favicon.ico"> <link rel="pingback" href="http://myblog.com/xmlrpc.php"> <link rel="prefetch" href="http://myblog.com/main.php"> <a rel="archives" href="http://myblog.com/archives">old posts</a> <a rel="external" href="http://notmysite.com">tutorial</a> <a rel="license" href="http://www.apache.org/licenses/LICENSE-2.0">license</a> <a rel="nofollow" href="http://notmysite.com/sample">wannabe</a> <a rel="tag" href="http://myblog.com/category/games">games posts</a>
高級東西,暫時只有谷歌支持
是爲了使得容易抓取網頁上的數據ajax
<div itemscope itemtype="http://example.com/hello"> <p>我叫 <span itemprop="主人">汪磊</span>。 </p> <p>我養了一條叫 <span itemprop="狗名">旺財</span>的 <span itemprop="品種">金毛</span>犬。 </p> </div> 好比抓取出: 主人:汪磊 狗名:旺財 品種:金毛
####Accessible Rich Internet Application (無障礙富互聯網應用程序) 主要針對於屏幕閱讀設備(e.g. NVDA),更快更好地理解網頁 不只僅是爲了盲人用戶,更多語義化 1.數據註解,相似lable,只不過label是針對表格 2.能夠經過aria知道數據的強相關 aria由一套屬性組成,屬性分爲role以及對應的states和properties, aria將html元素分爲六種role,每種有對應的states和properties, 但有一些是共用的,好比 aria-atomic aria-busy(state) aria-describedby aria-disabled(state) aria-dropeffect aria-flowto aria-haspopup aria-hidden(state) aria-invalid(state) aria-label aria-labelledby aria-owns aria-relevant 舉個僞元素例子, <div role="radio" aria-checked="true" aria-label="單選2" tabindex="0">單選tabindex="0"</div> 這個div模擬了radio的功能,在平時讀屏軟件是分辨不出來的, 可是加上role及aria-checked狀態, 在讀屏軟件(NVDA)中讀出來就是: 單選2 單選按鈕 選中 第1頁 共1項
詳細屬性見:ARIA財付通設計中心.htmlapache
經過DOM存儲與DOM對象強相關的數據 1.能夠給html裏的全部dom對象均可以添加一些data-xxx的屬性 2.用來記錄與當前DOM強相關的數據 <ul id="users"> <li data-id="1" data-age="18" data-gender="true">張三</li> <li data-id="2" data-age="18" data-gender="false">李四</li> <li data-id="3" data-age="18" data-gender="true">王二</li> </ul>
案例一:
編程
<script> //鍵是ID 值是信息 var data = { 01:{ name:"偉哥哥", age:"18" }, 02:{ name:"偉哥哥", age:"19" }, 03:{ name:"偉哥哥", age:"20" } //jQuery操做必定要作變量本地化 var list = document.getElementById("list"); for(var id in data){ var item = data[id]; var liElement = document.createElement("li"); //liElement.innerHTML = item.name; liElement.appendChild(document.createTextNode(item.name)); liElement.setAttribute("data-age",item.age); liElement.setAttribute("data-id",item.id); list.appendChild(liElement);//變量本地化 //此處纔將元素加到界面上 liElement.addEventListener("click",function(){ //alert(this.name); //this 是當前點擊的元素 //alert(this.getAttribute("data-age")); console.log(this.dataset["age"]); }) } }; </script>
案例二:
<body> <ul id="users"> <li class="item" data-id="1" data-age="18" data-gender="true"> 張三 <pre></pre> </li> <li class="item" data-id="2" data-age="18" data-gender="false"> 李四 <pre></pre> </li> <li class="item" data-id="3" data-age="18" data-gender="true"> 王二 <pre></pre> </li> </ul> </body> <script> var ul = document.getElementById('users'); for (var i = 0; i < ul.children.length; i++) { var li = ul.children[i]; // JS 添加data屬性 i.setAttribute('data-name', li.innerText); i.children[0].innerText = ''; or (var key in li.dataset) { li.children[0].innerText += key + ':' + li.dataset[key] + '\n'; } } </script>
案例三:
<body> <div class="tabs"> <ul> <li data-target=".panel-new">新聞</li> <li data-target=".panel-bagua">八卦</li> <li data-target=".panel-sport">體育</li> </ul> <div class="panel-new"></div> <div class="panel-bagua"></div> <div class="panel-sport"></div> </div> <script> $(function(){ //寫這個是爲了有一個單獨做用於,避免污染 //api是應用程序編程接口 var $lis = $('.tabs>ul>li'); $lis.on("click",function(){ //獲取目標對象的選擇器 var targetSelector = $(this).data('target'); var $target = $(targetSelector); }); }); </script> </body>
<form action="#"> //repuired表示必須的,表示填寫框不能爲空,會有提示可是提示不能更改 <label>text:<input type="text" required></label></br> //只能判斷中間是否有@ <label>email:<input type="email" value="ice@wedn.net"></label><br> <label>date:<input type="date" min="2014-10-14" max="2020-10-14" value="2016-08-14"></label><br> //拖動條,能夠得到拉到的地方的數字 <label>range:<input type="range" min="0" max="50" value="10"></label> <br> <label>search:<input type="search" results="10" placeholder="搜點啥?"></label><br> <label>tel:<input type="tel" placeholder="(010) 888-888" pattern="^\(?\d{3}\)?[-\s]\d{3}[-\s]\d{4}.*?$"></label><br> <label>color:<input type="color" placeholder="e.g. #bbbbbb"></label><br> <label>number:<input type="number" step="1" min="-5" max="10" value="0"></label><br> <input type="submit" value="提交"> </form>
手機鍵盤會根據不一樣的type類型彈出不一樣鍵盤類型 如打開數字鍵盤,密碼鍵盤,郵件鍵盤 <input type="text" name="txt_text" id="txt_text"> <input type="number" name="txt_number" id="txt_number"> <input type="email" name="txt_email" id="txt_email"> <input type="tel" name="txt_tel" id="txt_tel"> <input type="url" name="txt_url" id="txt_url">
多媒體的dom對象有一些新的方法能夠去作播放暫停
默認界面: <audio src="music.mp3" controls="controls"></audio> 自定義一個: <audio id="audio" src="music.mp3"></audio> <button id="btn">播放</button> <button id="btn_pause">暫停</button> <script> var btn = document.getElementById("btn"); var btn_pause = document.getElementById("btn_pause"); var audio = document.getElementById("audio"); btn.addEventListener("click",function(){ //播放音頻 audio.play(); }); btn_pause.addEventListener("click",function(){ // 暫停音頻 audio.pause(); }); </script>
<audio controls="controls"> <source src="img/music.mp3" type="audio/mpeg"/> </audio>
<video src="fun.mp4" controls="controls"></video>
<video controls="controls" poster="top.png" autoplay="autoplay"> 不一樣瀏覽器支持格式不同,由於版權問題 <source src="fun.ogg" type="video/ogg"></source> <source src="fun.mp4" type="video/mp4"></source> 當瀏覽器不兼容video標籤,就會將他以div方式解析 用第三方組件代替 <object type="application/x-shockwave-flash" data="http://static.youku.com/v1.0.0557/v/swf/loader.swf" width="100%" height="100%" id="movie_player"> <param name="allowFullScreen" value="true"> <param name="allowscriptaccess" value="always"> <param name="allowFullScreenInteractive" value="true"> <param name="flashvars" value="VideoIDS=XMTMwNDAzNzM4NA==&ShowId=0&category=85&Cp=0&ev=1&Light=on&THX=off&unCookie=0&frame=0&pvid=1439005764768c9QpaT&uepflag=1&Tid=0&isAutoPlay=true&Version=/v1.0.1080&show_ce=0&winType=interior&Type=Folder&Fid=25977506&Pt=0&Ob=1&plchid=z&openScanCode=1&scanCodeText="限時" 掃碼免廣告&embedid=AjMyNjAwOTM0NgJ3d3cueW91a3UuY29tAi8=&vext=bc%3D%26pid%3D1439005764768c9QpaT%26unCookie%3D0%26frame%3D0%26type%3D1%26fob%3D1%26fpo%3D0%26svt%3D0%26emb%3DAjMyNjAwOTM0NgJ3d3cueW91a3UuY29tAi8%3D%26dn%3D%E7%BD%91%E9%A1%B5%26hwc%3D1%26mtype%3Doth&pageStartTime=1439005764766"> <param name="movie" value="http://static.youku.com/v1.0.0557/v/swf/loader.swf"> <div class="player_html5"> <div class="picture" style="height:100%"> <div style="line-height:460px;"><span style="font-size:18px">您尚未安裝flash播放器,請點擊<a href="http://www.adobe.com/go/getflash" target="_blank">這裏</a>安裝</span></div> </div> </div> </object> </video>
屬性 值 描述 autoplay autoplay 若是出現該屬性,則視頻在就緒後立刻播放 controls controls 若是出現該屬性,則向用戶顯示控件,好比播放按鈕 height pixels 設置視頻播放器的高度 loop loop 若是出現該屬性,則當媒介文件完成播放後再次開始播放 muted muted 規定視頻的音頻輸出應該被靜音。【即:靜音】 poster URL 規定視頻下載時顯示的圖像,或者在用戶點擊播放按鈕前顯示的圖像 preload preload 若是出現該屬性,則視頻在頁面加載時進行加載,並預備播放 若是使用"autoplay",則忽略該屬性 src url 要播放的視頻的URL width pixels 設置視頻播放器的寬度
字幕案例: <video id="clip" controls> <source src="fun.mp4" type="video/mp4" /> <track label="English subtitles" kind="subtitles" srclang="en" src="video-subtitles-en.vtt" default /> </video> 字幕文件內容示例: WEBVIT FILE 1 00:00:00.000 --> 00:00:12.000 D:vertical A:start 2 00:00:12.000 --> 00:00:15.300 你們好,我是偉哥哥
能夠藉助三個標籤載入: <iframe src="demo.svg" frameborder="0"></iframe> //推薦 <object data="demo.svg" type=""></object> <embed src="demo.svg" type=""> 學完ajax以後推薦方式: 學習完異步請求以後,咱們能夠遍歷全部SVG節點,把src引入進來,自己他是一個document對象,能夠把它直接append到文檔中。 window.addEventListener('load',function(){ var svgs = document.getElementByTagName('svg'); for (var i = 0;i < svgs.length; i++){ //console.log(svg[i].dataset); var src = $(svgs[i].data('src')); //向服務器發送請求 獲得svg $.get(src,function(data){ var el = data.documentElement; $(document.body).append($(el)); }); } }); 同時將svg文件裏面的style刪除,以便咱們進行更改樣式
一、sublime server插件安裝
安裝完不要stop serber,不用的時候直接要退出sublime,否則sublime會崩潰
二、谷歌瀏覽器開發者工具右上角展開欄的settings,給show useragent shadow DOM選上鉤後能夠看到虛擬出來的DOM
3.僞類對象
至關於在weigege後面插入一個
<style> .content::after{ content: 'zuishuai'; color: #465; } </style> <div class="content">weigege</div>
4.h5新標籤
h5新標籤由於太新,可能在低級瀏覽器不能識別,不能識別的標籤瀏覽器會自動識別爲div進行加載,能夠經過如下方式生成標籤
方式一:本身定義
方式二:引入第三方組件html5shiv.js
裏面是將全部h5新標籤經過方式一的方式進行建立
5.在谷歌控制檯輸入一次輸入下面代碼
1.
document.body (回車)
document.body.contentEditable = true; (回車)
而後能夠在頁面上直接編輯文字
2.
直接在鏈接處輸入
data:text/html, (回車)
能夠直接在頁面上編輯文字
6.第三方多媒體播放器庫:jwplayer
7.專門爲移動端使用的組件 zepto?
實現的api與jQuery基本相同
冗餘處理兼容的代碼都砍掉了
彷佛能夠代替jQuery
8.!important在老版本是頂不掉行內樣式的
9.Markdown
開源項目說明文件都是用這種寫的
語法連接:http://wowubuntu.com/markdown/
用普通文本描述富文本的語法
擴展名md,markdown
案例
h標籤
段落直接寫前面不用加東西
特定的編輯器能夠加javascript表明特定的語法,用於編寫代碼
10.iframe 至關於挖了一個坑把其餘頁面載入進來