關於HTML面試題彙總之H5

来源:http://www.cnblogs.com/cqhaibin/archive/2016/07/30/5720168.html
-Advertisement-
Play Games

一、H5有哪些新特性,移除了哪些元素?如何處理h5新標簽的瀏覽器相容性問題,如何區分html和html5 1. html5不在是SGL(通用標記語言)的一個子集,而包含了:圖像、位置、存儲、多任務等功能 2. 新增的圖像為canvas類,媒體回放video和audio元素;本地離線存儲localSt ...


一、H5有哪些新特性,移除了哪些元素?如何處理h5新標簽的瀏覽器相容性問題,如何區分html和html5

1. html5不在是SGL(通用標記語言)的一個子集,而包含了:圖像、位置、存儲、多任務等功能

2. 新增的圖像為canvas類,媒體回放video和audio元素;本地離線存儲localStorage,在瀏覽器關閉後也可以保存數據;而sessionStorage在瀏覽器關閉後會自動刪除數據

3.新增內容標簽:article、footer、header、nav、section;新增加表單控制項:calendar、date、time、email、url、search;控制項元素:webworker、websocket、Geolocation。

4、移除的元素:basefont、big、center、font、s、strike、tt、u等內容修改標簽、以及性能較差的frame、frameset、noframes。

5、處理h5新標簽瀏覽器的相容性問題

   5.1、IE8-可以通過document.createElement來創建標簽,並給標簽預設的樣式和能力
   5.2、也可以引用html5shim框架

6、區分html與html5:主要是通過doctype頭、新標簽和功能元素。

二、html語義化的好處

1、在樣式丟失的情況下,頁面呈現的結構也是清晰的

2、屏幕閱讀器完全可以根據語義標簽來讀取內容(如盲人網站)

3、pad、手機可以根據語義標簽做不同的處理,如手機上標題顯示粗體,而pad上標題顯示較大字體

4、對搜索引擎和爬蟲的友好

三、iframe優缺點

1、優點

  1.1、在不刷新的情況下重新載入的新的頁面;
  1.2、方便用於後臺管理,或不用於對搜索引擎友好的系統

2、缺點:

   2.1、不利用搜索引擎,因為爬蟲只能看到框架而見不到框架的鏈接
   2.2、框架有時候會讓人迷惑,尤其是多個框架出滾動條的時候
   2.3、不容易列印(暫時只能分框架頁的列印,而不能列印整個frameset)
   2.4、瀏覽器後退按鈕無效(他只能後退當前獲得游標的iframe)
   2.5、多數pad、手機不支持框架
   2.6、增加http請求
   2.7、iframe會阻塞頁面的載入,包含iframe的頁面的window.onload事件,只有等待iframe載入完成後才能觸發,但可以通過js來動態設置iframe的src屬性可以避免這種情況(chrome和safari支持)

3、iframe和frame的區別
  3.1、iframe和frame實現的功能相同;
  3.2、iframe可以單獨使用,而frame必須和frameset一起使用
  3.5、在html5中iframe僅支持src屬性,而對frameset和frame不在受支持

四、label標簽的作用、應用

1、lable標簽主要是作為一種標題說明元素存儲的,通常有:for關聯、以及將form control放在label標簽中的方式
2、lable標簽主要屬性:
   2.1、for屬性,做標簽關聯,但for關聯的必須是一個form control標簽
   2.2、accesskey屬性:用於設置熱鍵,但不能與瀏覽器熱鍵衝突,否則會先觸發瀏覽器的熱鍵
3、label的嵌套
   3.1、labe標簽內不能再嵌套label
   3.2、label只能包含一個input子孫(包含checkbox、text等元素)、button、select、textarea元素
   3.3、label嵌套時,事件的觸發遵循冒泡原則

<label id="inputOne" >
    <input id="inputOne_inner" type="button" value="Test" />
</label>
<script type="text/javascript">
    $(function(){
        $('#inputOne').click(function(){
            console.log('label.........');
        });
        $('#inputOne_inner').click(function(event){
            event.stopPropagation();
            console.log('input.........')
        });
    });
</script>

由於在inputOne_inner的click事件中阻止的冒泡,所以單擊時只輸出 ‘input……………….’。
   4、for關聯
      4.1、for關聯,在labe標簽上的事件,會觸發關聯元素的相應事件(並且關聯元素的冒泡阻止動作無效):

<label id="labeTow" for="inputTow" >Tow-label</label> <!--labe綁定的事件,會觸發關聯元素的事件-->
<input id="inputTow" type="button" value="Tow" />
<script type="text/javascript">
    $(function(){
        $('#labeTow').click(function(){
            console.log('labelTow.........');
        });
        $('#inputTow').click(function(event){
            event.stopPropagation();
            console.log('inputTow.........');
        });
    });
</script>

單擊labeTow會做如下輸出(label會先觸發自身的事件,然後觸發關聯元素相應的事件):
labelTow…………….
inputTow……………
單擊inpuTow會做如輸出:
inputTow………….
  5、label標簽不能為a和button標簽的後代
  6、html5中對lable標簽加了form屬性,規則label所屬的一個或多個表單


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 類是組成java程式的基本要素,是java中的一種重要的複合數據類型。它封裝了一類對象的狀態和方法,是這一類對象的原型。一個類的實現包括兩個部分:類聲明和類體,基本格式: class <class name> { 屬性 方法 } 其中,class是關鍵字,用來定義類。“class <class na ...
  • 1.背景 1.1.範圍 MODBUS 是 OSI 模型第 7 層上的應用層報文傳輸協議, 它在連接至不同類型匯流排或網路的設備之間提供客戶機/伺服器通信。 自從 1979 年出現工業串列鏈路的事實標準以來, MODBUS 使成千上萬的自動化設備能夠通信。 目前,繼續增加對簡單而雅觀的 MODBUS 結 ...
  • 學習完了簡單工廠模式以後,感覺可以用於解決大多數多演算法選擇的問題了,接下來看一個新的例子,也是借用《大話數據結構》一書的例子,要實現的是一個商場促銷的計算軟體,輸入商品的單價和數量,還有銷售策略(如打折,返現),然後計算出總的價格。 首先可以從這個問題中抽象出兩個演算法類,一個是打折演算法類,需要提供打 ...
  • 基於 Angularjs&Node.js 雲編輯器架構設計及開發實踐 ...
  • 一、概述 Redis3.0版本之後支持Cluster. 1.1、redis cluster的現狀 目前redis支持的cluster特性: 1):節點自動發現 2):slave->master 選舉,集群容錯 3):Hot resharding:線上分片 4):進群管理:cluster xxx 5) ...
  • 畢業到轉行以來有一年時間了,成為一名程式猿也有大半年了,之前在新浪上隨便寫寫簡單的學習過程,感覺不夠像那麼回事,現在接觸前端也有一段時間了,也做過幾個項目,認識到可以拓展的實在太多了,希望從這裡起步,踏踏實實,記錄好點點滴滴。 HHL Gulp使用步驟: 1 安裝node(npm),全局安裝,我使用 ...
  • 昨天公司說官網的登陸註冊每次要跳轉到另一個界面,能不能做一個簡單的,在界面彈出一個框框登陸,我想了想做了這麼一個案例,大家來看看成不成 貼上代碼,實現了在同一個彈出窗上載入了登陸註冊功能!可自由點擊!當然樣式醜了一些!還請見諒!demo在下麵 1這裡是html內容 2接下來是樣式css 後面更上js ...
  • 收拾心情,學習學習js!總結下自己的學習所得! 現有的有三種方法可以獲取元素的節點,分別是通過元素ID,通過標簽名和類名來獲取的 1.GetElmentById:將返回一個與那個有給定ID屬性的值的元素節點對應的對象,方法只有一個參數,元素的id屬性的值必須放在單引號或雙引號里 2.GetElmen ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...