前端基礎總結之HTML

HTML語義化

        語義化的含義就是用正確的標籤做正確的事情,html語義化就是讓頁面的內容結構化,便於對瀏覽器、搜索引擎解析;在沒有樣式CSS情況下也以一種文檔格式顯示,並且是容易閱讀。
        搜索引擎的爬蟲依賴於標記來確定上下文和各個關鍵字的權重,利於SEO。

        使閱讀源代碼的人對網站更容易將網站分塊,便於閱讀維護理解。

XHTML和HTML有什麼區別
        HTML是一種基本的WEB網頁設計語言,XHTML是一個基於XML的置標語言
        最主要的不同:
            功能上的差別,主要是XHTML可兼容各大瀏覽器、手機以及PDA,並且瀏覽器也能快速正確地編譯網頁。 
            在XHTML中,所有的標籤都必須小寫
            XHTML 元素必須被正確地嵌套,標籤順序必須正確
            XHTML 元素必須被關閉,標籤必須成雙成對
            所有屬性都必須使用雙引號
            XHTML 文檔必須擁有根元素

內核(渲染引擎)

1、Trident內核:代表作品是IE,因IE捆綁在Windows中,此內核只能用於Windows平臺,且不是開源的,存在很多的兼容性問題。
2、Gecko內核:代表作品是Firefox,即火狐瀏覽器。因火狐是最多的用戶,故常被稱爲firefox內核它是開源的,最大優勢是跨平臺,在Microsoft Windows、Linux、MacOs X等主要操作系統中使用。
3、Webkit內核:代表作品是Safari、曾經的Chrome,是開源的項目。
4、Presto內核:代表作品是Opera,Presto是由Opera Software開發的瀏覽器排版引擎,它是世界公認最快的渲染速度的引擎。
5、Blink內核:由Google和Opera Software開發的瀏覽器排版引擎,2013年4月發佈。現在Chrome內核是Blink。

文檔聲明的作用

        DOCTYPE 是document type(文檔類型)的縮寫。用來說明文檔是什麼版本。建立符合標準的網頁 DOCTYPE聲明是必不可少的。一般放在文檔的最頂部。

        <!DOCTYPE html>一定要在HTML文檔的最前面,在<html>標籤之前。聲明之後表明你的內容使用HTML5。會讓不支持html5的瀏覽器採用標準模式解析。

HTML5 爲什麼只需要寫 !DOCTYPE HTML?
        HTML5 不基於 SGML(標準通用標記語言),因此不需要對DTD(文檔類型定義)進行引用,但是需要doctype來規範瀏覽器的行爲(讓瀏覽器按照它們應該的方式來運行);而HTML4.01基於SGML,所以需要對DTD進行引用,才能告知瀏覽器文檔所使用的文檔類型。
        !DOCTYPE聲明位於位於HTML文檔中的第一行,處於html 標籤之前。告知瀏覽器的解析器用什麼文檔標準解析這個文檔。DOCTYPE不存在或格式不正確會導致文檔以兼容模式呈現。


盒子模型

        元素的內容(content),元素的內邊距(padding),元素的邊框(border),元素的外邊距(margin)

元素分類:

行內元素:a、b、span、img、input、strong、select、label、em、button、textarea
塊級元素:div、ul、li、dl、dt、dd、p、h1-h6、blockquote
空元素:即系沒有內容的HTML元素,例如:br、meta、hr、link、input、img

src與href

        href 是指向網絡資源所在位置,建立和當前元素(錨點)或當前文檔(鏈接)之間的鏈接,用於超鏈接。
        src是指向外部資源的位置,指向的內容將會嵌入到文檔中當前標籤所在位置;在請求src資源時會將其指向的資源下載並應用到文檔內,例如js腳本,img圖片和frame等元素。當瀏覽器解析到該元素時,會暫停其他資源的下載和處理,直到將該資源加載、編譯、執行完畢,圖片和框架等元素也如此,類似於將所指向資源嵌入當前標籤內。這也是爲什麼將js腳本放在底部而不是頭部。

HTML5

新特性
    1.語意特性,添加<header><header/><nav><nav>等標籤
    2.多媒體, 用於媒介回放的 video 和 audio 元素
    3.圖像效果,用於繪畫的 canvas 元素,svg元素等
    4.離線 & 存儲,對本地離線存儲的更好的支持,local Store,Cookies等
    5.設備兼容特性 ,HTML5提供了前所未有的數據與應用接入開放接口,使外部應用可以直接與瀏覽器內部的數據直接相連。
    6.連接特性,更有效的連接工作效率,使得基於頁面的實時聊天,更快速的網頁遊戲體驗,更優化的在線交流得到了實現。HTML5擁有更有效的服務器推送技術,Server-Sent Event和WebSockets就是其中的兩個特性,這兩個特性能夠幫助我們實現服務器將數據“推送”到客戶端的功能
    7.性能與集成特性,HTML5會通過XMLHttpRequest2等技術,幫助您的Web應用和網站在多樣化的環境中更快速的工作

新增標籤
1.多媒體:<audio></audio>, <video><video>,<source></source>, <embed></embed>, <track></track>
2.新表單元素:<datalist> ,<output> , <keygen>
3.新文檔節段和綱要:<header>頁面頭部、<section>章節、<aside>邊欄、<article>文檔內容、<footer>頁面底部、<section>章節、<aside>邊欄、<article>文檔內容、<footer>頁面底部等


meta標籤
        作用:可提供有關頁面的元信息(meta-information),比如針對搜索引擎和更新頻度的描述和關鍵詞,用於鑑別作者, 設定頁面格式,標註內容提要和關鍵字,以及刷新頁面
<meta>標籤有兩個屬性:name和http-equiv。
    name="viewport",主要是爲了適應移動設備。
    name="description",主要是用來告訴搜索引擎,網站的主要內容是什麼。
    name="keywords",用來告訴搜索引擎,網站的主題是什麼,比如說偏重於前端後端或者是某種編程語言等等。
    name="robots",告訴爬蟲哪些頁面需要索引,哪些頁面不需要索引。提供HTML文檔的元數據, 常用於告知瀏覽器如何顯示內容和搜索引擎優化
    <meta charset="UTF-8"> //聲明文檔的編碼方式
    <meta http-quiv="X-UA-Compatible" content="IE=edge,chrome=1"/> //告知瀏覽器以什麼版本渲染文檔
    <meta name="renderer" content="webkit|ie-comp|ie-stand"> //告知瀏覽器選擇什麼內核渲染
    <meta http-quiv="Pragma" content="no-cache"> //禁止瀏覽器從本地計算機的緩存中訪問頁面內容。大概就是你訪問一個頁面後本地會有緩存,此時斷網瀏覽該網站將會無法顯示內容。
    共有以下幾種用法:
        no-cache: 先發送請求,與服務器確認該資源是否被更改,如果未被更改,則使用緩存。
        no-store: 不允許緩存,每次都要去服務器上,下載完整的響應。(安全措施)
        public : 緩存所有響應,但並非必須。因爲max-age也可以做到相同效果
        private : 只爲單個用戶緩存,因此不允許任何中繼進行緩存。(比如說CDN就不允許緩存private的響應)
        maxage : 表示當前請求開始,該響應在多久內能被緩存和重用,而不去服務器重新請求。例如:max-age=60表示響應可以再緩存和重用 60 秒。
    <meta http-equiv="Cache-Control" content="no-siteapp"/>
//禁止百度轉碼。
 <meta http-equiv=”Set-Cookie” content=”cookievalue=xxx; expires=Friday,12-Jan-2018 18:18:18 GMT; path=/”> //cookies的有效期。過了這個時間,網頁存儲在本地的cookies將會被刪除。時間格式必須是GMT的時間格式。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章