日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

前端知识二

發布時間:2023/12/14 HTML 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 前端知识二 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前端知識二

html,js,css前端三大件

不管你是使用市面上的熱門的框架還是公司自己開發的框架,都離不開這個要素,在深入學習框架源碼前,這是都是需要熟能上手,再去閱讀框架源碼!框架的作用是工程化,快速開發,將dom,js,css編譯成碼流!借助瀏覽器的哈希和history等來完成頁面的跳轉,原生傳統的是搭建.html頁面,現在還在使用的多為某些公司的線上商城,利于seo優化排名,隨著vue,react慢慢發展也開始出現便于seo優化的方法!沒有過多深入研究不在贅述。

前端的改變

互聯網快速發展的時代,逐漸出現各種框架,將前后端直接分離,各司其職,框架的出現將后端使用的單頁面直接搬到前端,經過框架的編譯壓縮,變成一個個js文件,所需要的頁面全以代碼的形式封存在js文件中,這也就是你看到的.html頁面只有一個的原因

三大件之一的html

發展歷史
html發展歷史1980年,物理學家蒂姆·伯納斯-李在歐洲核子研究中心(CERN)在承包工程期間,為使CERN的研究人員使用并共享文檔,他提出并創建原型系統ENQUIRE。1989年,伯納斯-李在一份備忘錄中提出一個基于互聯網的超文本系統。他規定HTML并在1990年底寫出瀏覽器和服務器軟件。同年,伯納斯-李與CERN的數據系統工程師羅伯特·卡里奧聯合為項目申請資助,但未被CERN正式批準。在他的個人筆記中伯納斯-李列舉“一些使用超文本的領域”,并把百科全書列為首位。
HTML的首個公開描述出現于一個名為“HTML標簽”的文件中,由蒂姆·伯納斯-李于1991年底提及。它描述18個元素,包括HTML初始的、相對簡單的設計。除了超鏈接標簽外,其他設計都深受CERN內部一個以標準通用標記語言(SGML)為基礎的文件格式SGMLguid的影響。這些元素在HTML 4中仍有11個存在。
伯納斯-李認為HTML是SGML的一個應用程序。1993年中期互聯網工程任務組(IETF)發布首個HTML規范的提案:“超文本標記語言(HTML)”互聯網草案,由伯納斯-李與丹·康納利撰寫。其中包括一個SGML文檔類型定義來定義語法[11]。草案于6個月后過期,不過值得注意的是其對NCSA Mosaic瀏覽器自定義標簽從而將在線圖像嵌入的行為的認可,這反映IETF把標準立足于成功原型的理念。同樣,戴夫·拉格特在1993年末提出的與之競爭的互聯網草案“HTML+(超文本標記格式)”建議規范已經實現的功能,如表格與填寫表單。
在HTML和HTML+的草案于1994年初到期后,IETF創建一個HTML工作組,并在1995年完成”HTML 2.0”,這是第一個旨在成為對其后續實現標準的依據的HTML規范。
在IETF的主持下,HTML標準的進一步發展因競爭利益而遭受停滯。自1996年起,HTML規范一直由萬維網聯盟(W3C)維護,并由商業軟件廠商出資。不過在2000年,HTML也成為國際標準(ISO/ IEC15445:2000)。HTML 4.01于1999年末發布,進一步的勘誤版本于2001年發布。2004年,網頁超文本應用技術工作小組(WHATWG)開始開發HTML5,并在2008年與W3C共同交付,2014年10月28日完成標準化。
二、版本時間線
1995年11月24日
HTML 2.0作為IETF RFC 1866發布。追加RFC的附加功能:
1995年11月25日:RFC 1867(基于表單的文件上傳)
1996年5月:RFC 1942(表格)
1996年8月:RFC 1980(客戶端圖像映射)
1997年1月:RFC 2070(國際化)
1997年1月14日
HTML 3.2 作為W3C推薦標準發布。
這是首個完全由W3C開發并標準化的版本,因IETF于1996年9月12日關閉它的HTML工作組。
最初代號為“威爾伯”(Wilbur),HTML 3.2 完全去除數學公式,協調各種專有擴展,并采用網景設計的大多數視覺標記標簽。由于兩家公司達成了協議,網景的閃爍元素和微軟的滾動元素被移除。HTML對數學公式的支持最后成為另外一種被稱為MathML的標準。
1997年12月18日
HTML 4.0作為W3C推薦標準發布。它提供三種變化:
嚴格,過時的元素被禁止。
過渡,過時的元素被允許。
框架集,大多只與框架相關的元素被允許。
最初代號“美洲獅”(Cougar), HTML 4.0采用許多特定瀏覽器的元素類型和屬性,并試圖淘汰網景的視覺標記功能,將其標記為不贊成使用。HTML 4是遵循ISO 8879 - SGML的SGML應用程序。
1998年4月24日
HTML 4.0進行微調,不增加版本號。
1999年12月24日
HTML 4.01作為W3C推薦標準發布。它同樣提供三種變化,最終勘誤版于2001年5月12日發布。
2000年5月
ISO/IEC 15445:2000(”ISO HTML”,基于HTML 4.01嚴格版)作為ISO/IEC國際標準發布。在ISO中這一標準位于ISO/IEC JTC 1/SC 34域(ISO/IEC聯合技術委員會1、小組委員會34 – 文檔描述與處理語言)。
2014年10月28日
HTML 5作為W3C推薦標準發布。
三、草案時間線
1991年10月
HTML標簽,一個非正式CERN文件首次公開18個HTML標簽。
1992年6月
HTML DTD的首個非正式草案, 后續有七個修訂版(7月15日,8月6日,8月18日,11月17日,11月19日,11月20日,11月22日)。
1992年11月
HTML DTD 1.1(首個版本號,基于RCS修訂版,版本號從1.1開始而非1.0),非正式草案。
1993年6月
超文本標記語言由IETF IIIR工作小組作為互聯網草案(一個粗略的建議標準)。在被第二版取代一個月后,IETF又發布6個草案,最終在RFC1866中發布HTML 2.0。
1993年11月
HTML+由IETF作為互聯網草案發布,是超文本標記語言草案的一個競爭性提案。它于1994年5月到期。
1995年4月 (1995年3月編寫)
HTML 3.0被提議作為IETF的標準,但直到提案在五個月過期后(1995年9月28日)仍沒有進一步的行動。它包含許多拉格特HTML+提案的功能,如對表格的支持、圍繞數據的文本流和復雜的數學公式的顯示。W3C開始開發自己的Arena瀏覽器作為HTML 3和層疊樣式表的試驗臺[,但HTML 3.0并沒有獲得成功。瀏覽器廠商,包括微軟和網景,選擇實現HTML3草案功能的不同子集并引入它們自己的插件(見瀏覽器大戰)。
2008年1月
HTML5由W3C作為工作草案(鏈接)發布。雖然HTML5的語法非常類似于SGML,但它已經放棄任何成為SGML應用程序的嘗試,除了一種替代的基于XML的HTML5序列,它已明確定義自己的“HTML”序列。
2011年 HTML5 – 最終征求
2011年5月,工作小組將HTML5推進至“最終征求”(Last Call)階段,邀請W3C社區內外人士以確認本規范的技術可靠性。W3C開發一套綜合性測試包來實現完整規范的廣泛交互操作性,完整規范的目標日期為2014年。2011年1月,WHATWG將其“HTML5”活動標準重命名為“HTML”。W3C仍然繼續其發布HTML5的項目。
2012年 HTML5 – 候選推薦
2012年7月,WHATWG和W3C的工作產生一定程度的分離。W3C繼續HTML5規范工作,重點放在單一明確的標準上,這被WHATWG稱為“快照”。WHATWG組織則將HTML5作為一個“活動標準”(Living Standard)。活動標準的概念是從未完成但永遠保持更新與改進,可以蒂姆加新特性,但功能點不會被刪除。
2012年12月,W3C指定HTML5作為候選推薦階段。 該階段的標準為“兩個100%完成,完全實現交互操作”。
2014年 HTML5 – 提案推薦與推薦
2014年9月,HTML5進入提案推薦階段。
2014年10月28日,HTML5作為穩定W3C推薦標準發布,這意味著HTML5的標準化已經完成。
四、XHTML版本
XHTML是使用XML 1.0改寫自HTML 4.01的獨立語言。它不再被作為單獨標準開發。
XHTML 1.0, 2000年1月26日作為W3C推薦標準發布。修訂版于2002年8月1日發布,它提供與HTML 4.0和4.01相同的三個變化,這些變化被重新在XML中制定。
XHTML 1.1,基于XHTML 1.0 嚴格版,2001年5月31日 作為W3C推薦標準發布。修訂版可使用模塊化XHTML的模塊,2001年4月10日作為W3C推薦標準發布。
XHTML 2.0為工作草案,但為支持HTML5與XHTML5的工作,此草案被放棄。 XHTML 2.0與XHTML 1.x不兼容,因此更確切的說這是一個XHTML風格的新語言而不是XHTML 1.x的更新。
在HTML5草案中規定一個XHTML語法,稱為“XHTML5.1”。

html的標簽 從頭開始解讀

為什么要從頭開始呢!你在工作中的時候雖然知道這些標簽,但是花費時間深入去了解的時間較少!只有慢慢工作的時間長了,才會一點點知道!在此也算是做記錄!

HTML 指的是超文本標記語言: HyperText Markup Language
HTML 不是一種編程語言,而是一種標記語言
標記語言是一套標記標簽 (markup tag)
HTML文檔的后綴名
.html
.htm
以上兩種后綴名沒有區別,都可以使用。

<!DOCTYPE html> <!--標準通用標記語言的文檔類型聲明,告訴語言解釋器以什么方式去讀取文本--> <html lang="zh-cn" style="--olcb-folder-code-block-max-height:80vh;"> <!--根元素html,經常使用的padding:0;margin:0;一般標記到這個標簽和body標簽--> <!--標簽屬性lang告知解釋器為什么區具體的區域如下: lang='en' //英文英語(English)用en表示。 lang='zh' //中文 漢語使用zh表示,來自“中文”的漢語拼音:Zhōngwén。 lang='ja' //日文 日語(Japanese)用ja表示(盡管日語的拼音是Nihongo)。 lang='en-us' //美式英文 lang='fr' //法文 lang='da' //德文 德語(Deutsch)用de表示(Deutsch是德語的本名)。 lang='it' //意大利文 lang='ko' //韓文 lang='pl' //波蘭文 lang='ru' //俄文 lang='es' //西班牙文 擴展資料: zh-cn 代表的是語言文化代碼和國家地區。 zh-cn 就是代表:zh-CN 華 - 中國。 常見的zh開頭的代碼有: zh-HK 華 - 香港的 SAR zh-MO 華 - 澳門的 SAR zh-CHS 華 (單一化) zh-SG 華 -新加坡 zh-TW 華 -臺灣 zh-CHT 華 (傳統的) ISO 639-1語言代碼:ISO 639-1是國際標準化組織ISO 639語言代碼標準的第一部分。它含有 184 個兩字母的編碼,用來標示世界上主要的語言。這些代碼在很多地方都被用作語言的簡寫,例如:英語(English)用en表示。 德語(Deutsch)用de表示(Deutsch是德語的本名)。 日語(Japanese)用ja表示(盡管日語的拼音是Nihongo)。 漢語使用zh表示,來自“中文”的漢語拼音:Zhōngwén。 ISO 639-1在 2002年成為正式標準,但在之前的草擬階段已被使用多年。最后加進ISO 639-1的代碼是在2004年10月19日加入的si,代表僧加羅語。由1995年3月起,RFC 1766推薦使用本標準,而接著在2001年1月起的RFC 3066亦推薦使用本標準。 --> <head> <!--元素包含了文檔的元(meta)數據,瀏覽器不會顯示的區域--><meta charset="utf-8"><!--<meta> 元素可提供有關某個 HTML 元素的元信息 (meta-information),比如描述、針對搜索引擎的關鍵詞以及刷新頻率、移動端的縮放等等。--><!--定義網頁編碼格式為 utf-8、utf-16等往下會有更多的編碼展示--><meta name="viewport" content="width=device-width, initial-scale=1.0"><!--定義視口name="viewport" 定義寬度content="width=device-width, 表示初始的縮放比例 initial-scale=1.0"--><meta name="referrer" content="origin-when-cross-origin"><!--referrer是用于追蹤用戶是從哪個頁面跳轉過來,空字符串no-referrerno-referrer-when-downgrade 默認值,當https到http的請求不會發送referrersame-origin 同源的請求,會發送referrerList itemorigin 會發送,但是只發送協議和域名信息strict-origin 會發送,但是只發送協議和域名信息,當https到http的請求不會發送referrerorigin-when-cross-origin 同源的請求,會發送referrer,不同源的情況下,只發送協議和域名信息strict-origin-when-cross-origin 同源的請求,會發送referrer,https到http的請求不會發送 referrer,其他時候,只發送源信息unsafe-url 任何時候都發送referrer --><meta name="description" content="元素創建的三種方式 為了提高用戶的體驗 1. document.write(&amp;quot;標簽的代碼以及內容&amp;quot;); 頁面加載的時候創建,是沒有問題的:document.write(&amp;quot;"><!--網頁描述文字,盡量用簡潔的文字描述該網頁的主要內容,一般控制在60字以內。--><meta property="og:description" content="元素創建的三種方式 為了提高用戶的體驗 1. document.write(&amp;quot;標簽的代碼以及內容&amp;quot;); 頁面加載的時候創建,是沒有問題的:document.write(&amp;quot;"><!--og是一種新的HTTP頭部標記(Open Graph協議),具體參考ogp.me(官網)即這種協議可以讓網頁成為一個“富媒體對象”(被其他社會化網站引用等),目前這種協議被眾多的社交網站采用。--><meta http-equiv="Cache-Control" content="no-transform"><!--禁止轉碼聲明http-equiv="Cache-Control" content="no-transform" content="max-age=0"頁面緩存時間的最大值是0秒,目的是不讓頁面緩存,每次訪問必須到服務器讀取--><meta http-equiv="Cache-Control" content="no-siteapp"><!--禁止搜索引擎快照緩存no-siteapp--><meta http-equiv="X-UA-Compatible" content="IE=edge"><!--X-UA-Compatible 是針對 IE=edge版本的一個特殊文件頭標記,用于為 IE8 指定不同的頁面渲染模式--><meta ke="X-UA-Compatible" content="IE=edge"><!--爬蟲搜索的關鍵字 keywords--><meta name="keywords" content="HTML DOM Link 對象"><title>頁面名稱</title><!--網頁名稱--><link id="favicon" rel="shortcut icon"href="//common.cnblogs.com/favicon.svg"type="image/svg+xml"><!--rel="shortcut icon"設置或返回當前文檔與目標 URL之間的關系。href地址 類型所連接的文檔類型type--><title>圖片地址(runoob.com)</title> <base href="http://www.runoob.com/images/" target="_blank"><script type="text/javascript" src="https://common.cnblogs.com/script/encoder.js"></script> <!--js引入、可進行跨域獲取文本最原始的JSONP跨域使用方法--> </head> <body class="skin-codinglife has-navbar"> <iframe src="https://a3e7ca4361cd17e3300b9a64d2d4b6c9.safeframe.googlesyndication.com/safeframe/1-0-38/html/container.html" style="visibility: hidden; display: none;"></iframe> <!--可以引入第三方頁面或者跨域的頁面.與其功能相同的標簽還有object(早些時候網頁運行java小游戲使用的多),embed--> <!--iframe和a標簽的區別是,a標簽描述一個連接地址,它則是展示一個網址成像--> <div></div> <a href="http://"></a><!--普通a標簽,當前頁面跳轉--> <a href="http://" target="_blank" rel="noopener noreferrer"></a><!--普通a標簽,打開一個新頁面--> <a href="mailto:"></a><!--mail a標簽,打開郵箱--> <a href="tel:"></a><!--tel a標簽,打開電話撥號,h5頁面能直接跳轉撥號系統--> <a :href="`${完整的下載地址}`" target="downloadFile">{{文件名稱}}</a><!--a標簽觸發下載--> <a href="#two" name="one">底部</a><!--錨點跳轉--> <a href="#one" name="two">頂部</a><!--錨點跳轉--> <a href="javascript:while(1){alert('循環')}">點我,javacsript死循環</a><!--協議限定--> <br /><!--換行--> <hr /><!--分割線--> <code>計算機輸出</code> <kbd>鍵盤輸入</kbd> <tt>打字機文本</tt> <samp>計算機代碼樣本</samp> <var>計算機變量</var> <b>注釋:</b>這些標簽常用于顯示計算機/編程代碼。 <pre> 此例演示如何使用 pre 標簽 對空行和 空格 進行控制 </pre> <strong>這個文本是加粗的</strong> <big>這個文本字體放大</big> <em>這個文本是斜體的(語氣的)</em> <i>這個文本是斜體的</i> <small>這個文本是縮小的</small> 這個文本包含 <sub>下標</sub> 這個文本包含 <sup>上標</sup> <address> 地址標簽 Written by <a href="mailto:webmaster@example.com">Jon Doe</a>.<br> Visit us at:<br> Example.com<br> Box 564, Disneyland<br> USA </address> <!--語義:定義英語單詞縮寫的文本。通常與tittle配合使用起到顯示縮寫詞的全寫。--> <abbr title="etcetera">etc.</abbr> <!--讓文章中的單詞呈現一個首字母縮寫的用法--> <acronym title="World Wide Web">WWW</acronym> <bdo dir="rtl">該段落文字從右到左顯示。</bdo> <p>塊引用: <q>Build a future where people live in harmony with nature.</q> We hope they succeed.</p> <p>此例演示如何標記刪除文本和插入文本。(css也可以實現) <del>blue</del> <ins>red</ins>!</p></body> </html> <!--以上有些標簽使用較少,了解即可,項目業務方向不同,使用到的也不同--> 新增元素說明
viode表示一段視頻并提供播放的用戶界面
audio表示音頻
canvas表示位圖區域
source為video和audio提供數據源
track為video和audio指定字母
svg定義矢量圖
code代碼段
figure和文檔有關的圖例
figcapton圖例的說明
mainmain標簽規定文檔的主要內容,main的主要目的是將ARIA的地標性作用main映射到HTML中的元素,這可以幫助那些屏幕閱讀
time日期和時間值
mark高亮的引用文字
datalist提供給其他控件的預定義選項
keygen秘鑰對生成器控件
output計算值
progress進度條
menuitem用戶可點擊的菜單項
menu菜單
template元素模板
section選中的文本樣式
nav標簽定義導航鏈接的部分
asideaside元素用來定義當前頁面或者文章的附屬信息部分,它可以包含與當前頁面或主要內容相關的引用、側邊欄、廣告、導航條等其他類似的有別于主要內容的部分。
article標簽定義的內容本身必須是有意義的且必須是獨立于文檔的其余部分。
footer底部標簽
progress標簽用于定義文檔中的進度條
header頭部標簽

lang語言代碼想了解更多點擊:語言代碼
unicode編碼也叫字符集:UTF-8、UTF-7、UTF-16、UnicodeLittle、UnicodeBig
ogp.me(官網):地址

css:

css是層疊樣式表(英文全稱:Cascading Style Sheets)是一種用來表現HTML(標準通用標記語言的一個應用)或XML(標準通用標記語言的一個子集)等文件樣式的計算機語言。css是建立網站不可缺少的樣式。
96年左右的時候css還不成熟,標簽上經常width和height的標簽屬性,有些完成不了的就直接使用標簽代替,并且沒有語義化,使用操作頻繁,更改個顏色和大小都使用到這個標簽,整合html是無處不在,直到后來w3c萬維網聯盟用css的font-size和color代替這標簽,頁面標簽量驟然縮減,逐步的更新替代舊的css。

c3新增

樣式類
1.圓角 radius(border-radius:50%)
2.三角型(不給盒子寬高,左右給邊框,顏色為透明,上邊框給顏色即可)

3.陰影 box-shadow(box-shadow: X軸偏移量 Y軸偏移量 [陰影模糊半徑] [陰影擴展半徑] [陰影顏色] [投影方式(inset或省略)];)

4.背景色透明度 background:rgba(165,42,42,.5)【提示:opacity屬性透明度會傳遞給后代元素,而rgba的后代元素不會繼承透明】

5.漸變色彩 background: linear-gradient(to bottom, red, yellow);

6.文本陰影 text-shadow: X軸偏移量 Y軸偏移量 模糊半徑 陰影顏色(text-shadow: 2px 2px 0 #E4F1FF;)

7.溢出文本用text-overflow,用(…)省略標記。(text-overflow:ellipsis;要有超出區域不顯示,overflow:hidden)

8.border-image使用圖片來創建邊框
9.background-size指定背景圖片尺寸與
background-size: contain; 縮小圖片以適合元素(維持像素長寬比)

background-size: cover; 擴展元素以填補元素(維持像素長寬比)

background-size: 100px 100px; 縮小圖片至指定的大小

background-size: 50% 100%; 縮小圖片至指定的大小,百分比是相對包 含元素的尺寸

10.background-origin:指定背景圖片從哪里開始顯示,背景圖片可以放置于 content-box、padding-box 或 border-box 區域
background-origin: border-box; 從border開始計算background-position

background-origin: padding-box; 從padding開始計算background-position

background-origin: content-box; 從content開始計算background-position

11.background-clip:指定背景圖片從什么位置開始裁剪
12.word-wrap:文字自動換行
13.text-overflow: ellipsis;文字在固定區域內顯示不完整加省略號需要配合overflow: hidden;使用,多用于文本描述顯示區域有限,配合title使用,也可使用第三方的插件來實現鼠標移入顯示完整信息的效果!

clip:修剪文本

ellipsis:顯示省略符號來代表被修剪的文本
14.background-break
元素可以被分成幾個獨立的盒子(如使內聯元素span跨越多行),background-break 屬性用來控制背景怎樣在這些不同的盒子中顯示

background-break: continuous; 默認值。忽略盒之間的距離(也就是像元素沒有分成多個盒子,依然是一個整體一樣)

background-break: bounding-box; 把盒之間的距離計算在內;

background-break: each-box; 為每個盒子單獨重繪背景

15.text-decoration
CSS3里面開始支持對文字的更深層次的渲染,具體有三個屬性可供設置:

text-fill-color: 設置文字內部填充顏色

text-stroke-color: 設置文字邊界填充顏色

text-stroke-width: 設置文字邊界寬度

16.顏色
css3新增了新的顏色表示方式rgba與hsla

rgba分為兩部分,rgb為顏色值,a為透明度

hala分為四部分,h為色相,s為飽和度,l為亮度,a為透明度

css3新增動畫效果

1、transform變換效果:

css3提供了元素變形效果,也叫做變換。它可以將元素實現旋轉、縮放和平移的功能。

屬性值:(1)transform ;(2)transform-origin:transform-origin 屬性可以設置變換的起點。默認情況下,使用元素的中心作為起點。
transform: translate(120px, 50%):位移

transform: scale(2, 0.5):縮放

transform: rotate(0.5turn):旋轉

transform: skew(30deg, 20deg):傾斜

2、animation動畫效果

CSS3 提供了類似 Flash 關鍵幀控制的動畫效果,通過 animation 屬性實現。那么之前的 transition 屬性只能通過指定屬性的初始狀態和結束狀態來實現動畫效果,有一定的局限性。

animation 實現動畫效果主要由兩個部分組成:1、通過類似 Flash 動畫中的關鍵幀聲明一個動畫;2、在 animation 屬性中調用關鍵幀聲明的動畫。

css3新增過渡效果

1、transition過渡效果

過渡效果一般是通過一些簡單的 CSS 動作觸發平滑過渡功能,比如::hover、:focus、:active、:checked 等。CSS3 提供了 transition 屬性來實現這個過渡功能。

對于css3新增的過渡內容和css新增動畫效果大家也可以參考CSS3 最新版參考手冊。

animation 動畫

動畫這個平常用的也很多,主要是做一個預設的動畫。和一些頁面交互的動畫效果,結果和過渡應該一樣,讓頁面不會那么生硬

animation也有很多的屬性

animation-name:動畫名稱

animation-duration:動畫持續時間

animation-timing-function:動畫時間函數

animation-delay:動畫延遲時間

animation-iteration-count:動畫執行次數,可以設置為一個整數,也可以設置為infinite,意思是無限循環

animation-direction:動畫執行方向

animation-paly-state:動畫播放狀態

animation-fill-mode:動畫填充模式

布局

一.flex彈性布局

1、flex-direction用來控制子項整體布局方向,是從左往右還是從右往左,是從上往下還是從下往上
row

默認值,顯示為行。方向為當前文檔水平流方向,默認情況下是從左往右。

row-reverse

顯示為行。但方向和row屬性值是反的

column

顯示為列

column-reverse

顯示為列。但方向和column屬性值是反的
2、flex-wrap用來控制子項整體單行顯示還是換行顯示。
nowrap

默認值,表示單行顯示,不換行。

wrap

寬度不足換行顯示

wrap-reverse

寬度不足換行顯示,但是是從下往上開始,也就是原本換行在下面的子項現在跑到上面。
flex-flow屬性是flex-direction和flex-wrap的縮寫,表示flex布局的flow流動特性。第一個值表示方向,第二個值表示換行,中間用空格隔開。
3、justify-content屬性決定了主軸方向上子項的對齊和分布方式。 常用
flex-start

默認值,表現為起始位置對齊。

flex-end

表現為結束位置對齊。

center

表現為居中對齊。

space-between

表現為兩端對齊。between是中間的意思,意思是多余的空白間距只在元素中間區域分配。

space-around

around是環繞的意思,意思是每個flex子項兩側都環繞互不干擾的等寬的空白間距,最終視覺上邊緣兩側的空白只有中間空白寬度一半。

space-evenly

evenly是勻稱、平等的意思。也就是視覺上,每個flex子項兩側空白間距完全相等。

4、align-items中的items指的就是flex子項們,因此align-items指的就是flex子項們相對于flex容器在側軸方向上的對齊方式。
stretch

默認值,flex子項拉伸。

flex-start

表現為容器頂部對齊。

flex-end

表現為容器底部對齊。

center

表現為垂直居中對齊。
5、align-content可以看成和justify-content是相似且對立的屬性,如果所有flex子項只有一行,則align-content屬性是沒有任何效果的。
stretch

默認值。每一行flex子元素都等比例拉伸。例如,如果共兩行flex子元素,則每一行拉伸高度是50%。

flex-start

表現為起始位置對齊。

flex-end

表現為結束位置對齊。

center

表現為居中對齊。

space-between

表現為兩端對齊。

space-around

每一行元素上下都享有獨立不重疊的空白空間。

space-evenly

每一行元素都完全上下等分。

作用在flex子項上的CSS屬性

1、order

可以通過設置order改變某一個flex子項的排序位置。所有flex子項的默認order屬性值是0。

2、flex-grow

屬性中的grow是擴展的意思,擴展的就是flex子項所占據的寬度,擴展所侵占的空間就是除去元素外的剩余的空白間隙。默認值為0。

3、flex-shrink

屬性中的shrink是“收縮”的意思,flex-shrink主要處理當flex容器空間不足時候,單個元素的收縮比例。默認值是1。

4、flex-basis

flex-basis定義了在分配剩余空間之前元素的默認大小。

5、flex

flex屬性是flex-grow,flex-shrink和flex-basis的縮寫。

6、align-self

align-self指控制單獨某一個flex子項的垂直對齊方式。

二.Grid柵格布局
Grid布局是一個二維的布局方法,縱橫兩個方向同時存在。

我有點懶的寫就直接放格柵的連接吧!寫的不錯

CSS3新增選擇器

  • 關系選擇器

    兄弟選擇器:選擇該元素后面的同級的兄弟元素
    例如:

    h1~p:選擇h1元素后面的所有同級p元素。

    p~p:選擇p元素后面的所有同級p元素,除了第一個p元素

  • 屬性選擇器
    E[att] 選擇具有att屬性的E元素
    E[att="val’'] 選擇具有att屬性且屬性值等于val的E元素
    E[att^=“val”] 匹配具有att屬性且值以val開頭的E元素
    E[att$=“val”] 匹配具有att屬性且值以val結尾的E元素
    E[att*=“val”] 匹配具有att屬性且值中含有val的E元素
    3.偽類選擇器
    E:first-child 匹配父元素中的第一個子元素E
    E:last-child 匹配父元素中的最后一個E元素
    E:nth-child(n) 匹配父元素中的第n個子元素E 僅支持正整數
    E:first-of-type 指定類型E的第一個
    E:last-of-type 指定類型E的最后一個
    E:nth-of-type(n) 指定類型E的第n個 僅支持正整數
    E:nth-last-child(n) 從父元素的最后一個子元素開始算
    E:nth-last-of-child(n) 指定類型E的第n個,但是是從父元素的最后一個子元素開始算
    :root 根選擇器,匹配E元素所在文檔的根元素,在HTML文檔中,根元素始終是
    :not 否定選擇器,選擇除某個元素之外的所有元素
    :empty 用來選擇沒有任何內容的元素
    :target 目標選擇器,用來匹配文檔(頁面)url的某個標志符的目標元素,鼠標點擊后變化
    :only-child 父元素中只有一個子元素,且只有唯一的一個子元素
    :only-of-type 選擇的是一個元素是它的父元素的唯一一個相同類型的子元素
    :enabled 表單元素狀態可用
    :disabled 表單元素狀態不可用。使用時需要在表單元素的HTML中設置“disabled”屬性
    :checked 選中狀態,選中后樣式改變
    :read-only 用于指定處于只讀狀態的元素的樣式,元素中需要設置readonly=“readonly”
    :read-write 用于指定當元素處于非只讀狀態的樣式
    4.偽元素選擇器
    ::selection 用來匹配突出顯示的文本(用鼠標選擇文本時的文本)
    ::before 在元素內部的前面插入內容
    ::after 在元素內部的后面插入內容
    ::placeholder 改變表單元素中的文字的樣式
  • JavaScript 是屬于 HTML 和 Web 的編程語言

    js經過漫長的發展,已經不單單局限于前端,開始向后端延伸
    Node.js發布于2009年5月,由Ryan Dahl開發,是一個基于Chrome V8引擎的JavaScript運行環境,使用了一個事件驅動、非阻塞式I/O模型,讓JavaScript 運行在服務端的開發平臺,它讓JavaScript成為與PHP、Python、Perl、Ruby等服務端語言平起平坐的腳本語言。
    擴展:隨著前端的快速發展,js開始向著各個領域進發,混合式應用開發(物聯網),游戲端(前幾年比較火的網頁網游),桌面級應用(vscode),bim模型,服務器搭建,移動端(小程序,web app,安卓apk,小游戲 例如:賺錢賺爆了的游戲 羊了個羊),插件開發,pc端,多媒體端(電梯廣告屛),公司業務方向不同,你所用的js偏向性不同。技術深度也不可能同日而語!

    一、dom(html文檔節點)

    當網頁被加載時,瀏覽器會創建頁面的文檔對象模型(Document Object Model)
    JavaScript 能改變頁面中的所有 HTML 元素
    JavaScript 能改變頁面中的所有 HTML 屬性
    JavaScript 能改變頁面中的所有 CSS 樣式
    JavaScript 能刪除已有的 HTML 元素和屬性
    JavaScript 能添加新的 HTML 元素和屬性
    JavaScript 能對頁面中所有已有的 HTML 事件作出反應
    JavaScript 能在頁面中創建新的 HTML 事件
    通俗一點講就是dom就是讓js增刪改查dom元素

    二、瀏覽器對象模型(Browser Object Model (BOM))

    不存在瀏覽器對象模型(BOM)的官方標準。

    現代的瀏覽器已經(幾乎)實現了 JavaScript 交互相同的方法和屬性,因此它經常作為 BOM 的方法和屬性被提到。

    注:簡單的不在贅述,講述一些用的極少功能
    Navigator
    Navigator 接口表示用戶代理的狀態和標識。它允許腳本查詢它和注冊自己進行一些活動。
    1、navigator.userAgent獲取當前設備瀏覽器信息
    獲取設備系統和型號

    <!DOCTYPE htmlPUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"><head><title> 獲取設備信息 《封裝》</title><meta name="viewport" content="width=device-width, initial-scale=1.0,user-scalable=no"><meta name="Generator" content="EditPlus"><meta name="Author" content=""><meta name="Keywords" content=""><meta charset="utf-8" /><meta name="Description" content=""></head><body><!-- <script src="https://cdn.jsdelivr.net/npm/mobile-detect@1.4.4/mobile-detect.min.js"></script> --><script src="./js/mobile-detect.min.js"></script><script>var GetDevice = function () {/* 版本信息獲取 */// 各主流瀏覽器var getBrowser = function () {var u = navigator.userAgentvar bws = [{name: 'sgssapp',it: /sogousearch/i.test(u)}, {name: 'wechat',it: /MicroMessenger/i.test(u)}, {name: 'weibo',it: !!u.match(/Weibo/i)}, {name: 'uc',it: !!u.match(/UCBrowser/i) || u.indexOf(' UBrowser') > -1}, {name: 'sogou',it: u.indexOf('MetaSr') > -1 || u.indexOf('Sogou') > -1}, {name: 'xiaomi',it: u.indexOf('MiuiBrowser') > -1}, {name: 'baidu',it: u.indexOf('Baidu') > -1 || u.indexOf('BIDUBrowser') > -1}, {name: '360',it: u.indexOf('360EE') > -1 || u.indexOf('360SE') > -1}, {name: '2345',it: u.indexOf('2345Explorer') > -1}, {name: 'edge',it: u.indexOf('Edge') > -1}, {name: 'ie11',it: u.indexOf('Trident') > -1 && u.indexOf('rv:11.0') > -1}, {name: 'ie',it: u.indexOf('compatible') > -1 && u.indexOf('MSIE') > -1}, {name: 'firefox',it: u.indexOf('Firefox') > -1}, {name: 'safari',it: u.indexOf('Safari') > -1 && u.indexOf('Chrome') === -1}, {name: 'qqbrowser',it: u.indexOf('MQQBrowser') > -1 && u.indexOf(' QQ') === -1}, {name: 'qq',it: u.indexOf('QQ') > -1}, {name: 'chrome',it: u.indexOf('Chrome') > -1 || u.indexOf('CriOS') > -1}, {name: 'opera',it: u.indexOf('Opera') > -1 || u.indexOf('OPR') > -1}]for (var i = 0; i < bws.length; i++) {if (bws[i].it) {return bws[i].name}}return 'other'};// 系統區分var getOS = function () {var u = navigator.userAgentif (!!u.match(/compatible/i) || u.match(/Windows/i)) {return 'windows'} else if (!!u.match(/Macintosh/i) || u.match(/MacIntel/i)) {return 'macOS'} else if (!!u.match(/iphone/i) || u.match(/Ipad/i)) {return 'ios'} else if (u.match(/android/i)) {return 'android'} else if (u.match(/Ubuntu/i)) {return 'Ubuntu'} else {return 'other'}};//判斷數組中是否包含某字符串Array.prototype.contains = function (needle) {for (i in this) {if (this[i].indexOf(needle) > 0)return i;}return -1;}var device_type = navigator.userAgent; //獲取userAgent信息// document.write(device_type); //打印到頁面var md = new MobileDetect(device_type); //初始化mobile-detectvar os = md.os(); //獲取系統console.log(os)var model = "";if (os == "iOS") { //ios系統的處理os = +md.version("iPhone");console.log(os)model = md.mobile();} else if (os == "AndroidOS") { //Android系統的處理os = md.os() + md.version("Android");var sss = device_type.split(";");var i = sss.contains("Build/");if (i > -1) {model = sss[i].substring(0, sss[i].indexOf("Build/"));}}else {os = getOS();model = getBrowser();}//alert(os + "---" + model);//打印系統版本和手機型號//console.log(model + '||' + os, '打印系統版本和手機型號')return { "os": os, "dev": model }}document.write("<hr>設備信息:" +JSON.stringify(GetDevice()));// 獲取手機類型結束</script> </body></html>

    --------------------------分割線-------------------------------------------------

    pc

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"><head><title> 獲取PC設備信息 </title><meta name="viewport" content="width=device-width, initial-scale=1.0,user-scalable=no"><meta name="Generator" content="EditPlus"><meta name="Author" content=""><meta name="Keywords" content=""><meta charset="utf-8" /><meta name="Description" content=""><script id=clientEventHandlersJS language=javascript>/******************************************下為瀏覽器信息************************************************///獲取瀏覽器相關信息function allinfo() {var appName = navigator.appName; //瀏覽器的正式名稱var appVersion = navigator.appVersion; //瀏覽器的版本號var cookieEnabled = navigator.cookieEnabled; // 返回用戶瀏覽器是否啟用了cookievar cpuClass = navigator.cpuClass; //返回用戶計算機的cpu的型號,通常intel芯片返回"x86"(火狐沒有)var mimeType = navigator.mimeTypes; // 瀏覽器支持的所有MIME類型的數組var platform = navigator.platform; // 瀏覽器正在運行的操作系統平臺,包括Win16(windows3.x) // Win32(windows98,Me,NT,2000,xp),Mac68K(Macintosh 680x0)// 和MacPPC(Macintosh PowerPC)var plugins = navigator.plugins; // 安裝在瀏覽器上的所有插件的數組var userLanguage = navigator.userLanguage; // 用戶在自己的操作系統上設置的語言(火狐沒有)var userAgent = navigator.userAgent; //包含以下屬性中所有或一部分的字符串:appCodeName,appName,appVersion,language,platformvar systemLanguage = navigator.systemLanguage; // 用戶操作系統支持的默認語言(火狐沒有)var info = "<table border=1>";var type = "";if (isIe()) {type = "IE瀏覽器";} else if (isFireFox()) {type = "火狐瀏覽器";}info += "<tr><td>瀏覽器類型:</td><td>" + type + "</td></tr>";info += "<tr><td>瀏覽器屬性信息:</td><td>" + userAgent + "</td></tr>";info += "<tr><td>瀏覽器的正式名稱:</td><td>" + appName + "</td></tr>";info += "<tr><td>瀏覽器的版本號:</td><td>" + appVersion + "</td></tr>";info += "<tr><td>瀏覽器的是否啟用了cookie:</td><td>" + cookieEnabled + "</td></tr>";info += "<tr><td>cpu等級:</td><td>" + cpuClass + "</td></tr>";info += "<tr><td>瀏覽器的MIME類型:</td><td>" + mimeType.length + "</td></tr>";info += "<tr><td>系統平臺:</td><td>" + platform + "</td></tr>";info += "<tr><td>安裝的插件:</td><td>" + plugins + "</td></tr>";info += "<tr><td>插件的數量:</td><td>" + plugins.length + "</td></tr>";info += "<tr><td>插件的名稱:</td><td>" + getPluginName() + "</td></tr>";info += "<tr><td>用戶設置的操作系統語言:</td><td>" + userLanguage + "</td></tr>";info += "<tr><td>操作系統支持的默認語言:</td><td>" + systemLanguage + "</td></tr>";info += "<tr><td>Director:</td><td>" + checkePlugs("Director") + "</td></tr>";info += "<tr><td>javaEnabled:</td><td>" + navigator.javaEnabled() + "</td></tr>";info += "<tr><td>是否有quickTime:</td><td>" + checkePlugs("QuickTime") + "</td></tr>";info += "<tr><td>flash插件情況:</td><td>" + checkePlugs('Shockwave Flash') + "</td></tr>";info += "<tr><td>是否有MediaPlayer:</td><td>" + checkePlugs("MediaPlayer") + "</td></tr>";info += "<tr><td>是否有realPlayer:</td><td>" + checkePlugs("RealPlayer") + "</td></tr>";info += "<tr><td>屏幕分辨率高度:</td><td>" + window.screen.height + "</td></tr>";info += "<tr><td>屏幕分辨率寬度:</td><td>" + window.screen.width + "</td></tr>";info += "<tr><td>顏色質量:</td><td>" + window.screen.colorDepth + "位</td></tr>";info += "<tr><td>像素:</td><td>" + window.screen.deviceXDPI + "像素/英寸</td></tr>";info += "<tr><td>字體是否平滑:</td><td>" + window.screen.fontSmoothingEnabled + "</td></tr>";//info += "<tr><td>規定瀏覽器是否啟用數據污點:</td><td>" + navigator.taintEnabled() + "</td></tr>";info += "</table>";document.getElementById("elInfo").innerHTML = info;return info;//directorvar appCodeName = navigator.appCodeName; //與瀏覽器相關的內部代碼名var appMinorVersion = navigator.appMinorVersion; //輔版本號(通常應用于瀏覽器的補丁或服務包)var language = navigator.language; //瀏覽器支持的語言 (IE沒有)var onLine = navigator.onLine; //返回瀏覽器是否處于在線模式(IE4以上版本)var opsProfile = navigator.opsProfile; // 未定義 (IE、火狐沒有)var oscpu = navigator.oscpu; //瀏覽器正在運行的操作系統,其中可能有CPU的信息(IE沒有)var product = navigator.product; // 瀏覽器的產品名(IE沒有)var productSub = navigator.productSub; //關于瀏覽器更多信息(IE沒有)var securityPolicy = navigator.securityPolicy; // 瀏覽器支持的加密類型(IE沒有)var userProfile = navigator.userProfile; // 返回一個UserProfile對象,它存儲用戶的個人信息(火狐沒有)var vender = navigator.vender; // 瀏覽器廠商名稱(IE、火狐沒有)var vendorSub = navigator.vendorSub; // 關于瀏覽器廠商更多的信息 }//獲取插件所有的名稱function getPluginName() {var info = "";var plugins = navigator.plugins;if (plugins.length > 0) {for (i = 0; i < navigator.plugins.length; i++) {info += navigator.plugins[i].name + ";";}}return info;}//檢查是否安裝了某插件,如果安裝了返回版本號function checkePlugs(pluginname) {var f = "-"var plugins = navigator.plugins;if (plugins.length > 0) {for (i = 0; i < navigator.plugins.length; i++) {if (navigator.plugins[i].name.indexOf(pluginname) >= 0) {f = navigator.plugins[i].description.split(pluginname)[1];return f;break;}}}return false;}//判斷是否IEfunction isIe() {var i = navigator.userAgent.toLowerCase().indexOf("msie");return i >= 0;}//判斷是否firefoxfunction isFireFox() {var i = navigator.userAgent.toLowerCase().indexOf("firefox");return i >= 0;}/******************************************以上為瀏覽器信息,以下為pc信息************************************************/var locator = new ActiveXObject("WbemScripting.SWbemLocator");var service = locator.ConnectServer(".");function cpuInfo() { //CPU 信息 var properties = service.ExecQuery("SELECT * FROM Win32_Processor");var e = new Enumerator(properties);var info = "<table border=1>";info += "<tr bgcolor='#CDEDED' style='font-weight: bold;' ><td width='450' >CPU 信息</td></tr>";for (; !e.atEnd(); e.moveNext()) {var p = e.item();info += "<tr style='color: red'><td >CPU序列號:" + p.ProcessorID + "</td></tr>";info += "<tr><td >" + p.Caption + "</td></tr>";info += "<tr><td >CPU編號:" + p.DeviceID + "</td></tr>";info += "<tr><td >CPU型號:" + p.Name + "</td></tr>";info += "<tr><td >CPU狀態:" + p.CpuStatus + "</td></tr>";info += "<tr><td >CPU可用性:" + p.Availability + "</td></tr>";info += "<tr><td >CUP Level:" + p.Level + "</td></tr>";info += "<tr><td >主機名稱:" + p.SystemName + "</td></tr>";info += "<tr><td >Processor Type:" + p.ProcessorType + "</td></tr>";}info += "</table>";return info;}function softDisk() { //軟盤信息 var properties = service.ExecQuery("SELECT * FROM Win32_FloppyDrive");var e = new Enumerator(properties);var info = "<table border=1>";info += "<tr bgcolor='#CDEDED' style='font-weight: bold;' ><td width='450'>軟盤信息</td></tr>";for (; !e.atEnd(); e.moveNext()) {var p = e.item();info += "<tr><td >" + p.Description + "</td></tr>";info += "<tr><td >" + p.DeviceID + "</td></tr>";info += "<tr><td >" + p.Status + "</td></tr>";info += "<tr><td >" + p.Manufacuturer + "</td></tr>";}info += "</table>";return info;}function RomInfo() { //CD-ROM 信息 var properties = service.ExecQuery("SELECT * FROM Win32_CDROMDrive");var e = new Enumerator(properties);var info = "<table border=1>";info += "<tr bgcolor='#CDEDED' style='font-weight: bold;'><td width='450' >CD-ROM 信息 </td></tr>";for (; !e.atEnd(); e.moveNext()) {var p = e.item();info += "<tr><td >驅動器名稱:" + p.Caption + "</td></tr>";info += "<tr><td >描述:" + p.Description + "</td></tr>";info += "<tr><td >盤符:" + p.Drive + "</td></tr>";info += "<tr><td >驅動器狀態:" + p.Status + "</td></tr>";info += "<tr><td >是否在使用:" + p.MediaLoaded + "</td></tr>";}info += "</table>";return info;}function keyBoardInfo() { //鍵盤信息 var properties = service.ExecQuery("SELECT * FROM Win32_Keyboard");var e = new Enumerator(properties);var info = "<table border=1>";info += "<tr bgcolor='#CDEDED' style='font-weight: bold;'><td width='450'>鍵盤信息 </td></tr>";for (; !e.atEnd(); e.moveNext()) {var p = e.item();info += "<tr><td >鍵盤描述:" + p.Description + "</td></tr>";info += "<tr><td >鍵盤名稱:" + p.Name + "</td></tr>";info += "<tr><td >鍵盤狀態:" + p.Status + "</td></tr>";}info += "</table>";return info;}function mainBoard() { //主板信息 var properties = service.ExecQuery("SELECT * FROM Win32_BaseBoard");var e = new Enumerator(properties);var info = "<table border=1>";info += "<tr bgcolor='#CDEDED' style='font-weight: bold;'><td width='450'>主板信息 </td></tr>";for (; !e.atEnd(); e.moveNext()) {var p = e.item();info += "<tr style='color: red'><td >主板ID:" + p.SerialNumber + "</td></tr>";info += "<tr><td >" + p.HostingBoard + "</td></tr>";info += "<tr><td >制造商:" + p.Manufacturer + "</td></tr>";info += "<tr><td >是否開啟:" + p.PoweredOn + "</td></tr>";info += "<tr><td >型號:" + p.Product + "</td></tr>";info += "<tr><td >版本:" + p.Version + "</td></tr>";}info += "</table>";return info;}function disk() { //硬盤序列號 信息var properties = service.ExecQuery("SELECT * FROM Win32_DiskDrive");var e = new Enumerator(properties);var info = "<table border=1>";info += "<tr bgcolor='#CDEDED' style='font-weight: bold;' ><td width='450'>硬盤信息 </td></tr>";for (; !e.atEnd(); e.moveNext()) {var p = e.item();info += "<tr style='color: red'><td >硬盤序列號:" + p.signature + "</td></tr>";}info += "</table>";return info;}//獲取Ram信息function raminfo() {var system = new Enumerator(service.ExecQuery("SELECT * FROM Win32_ComputerSystem")).item();var physicMenCap = Math.ceil(system.TotalPhysicalMemory / 1024 / 1024);//內存信息 var memory = new Enumerator(service.ExecQuery("SELECT * FROM Win32_PhysicalMemory"));for (var mem = [], i = 0; !memory.atEnd(); memory.moveNext()) {mem[i++] = {cap: memory.item().Capacity / 1024 / 1024,speed: memory.item().Speed};}var info = "<table border=1>";info += "<tr bgcolor='#CDEDED' style='font-weight: bold;' ><td width='450'>內存信息 </td></tr>";info += "<tr style='color: red'><td >內存總量:" + (mem[0].cap + mem[1].cap) + "M</td></tr>";info += "<tr style='color: red'><td >可用物理內存:" + physicMenCap + "M</td></tr>";info += "</table>";return info;}//獲取網絡連接信息function ipinfo() {var properties = service.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration Where IPEnabled=TRUE");var e = new Enumerator(properties);var info = "<table border=1>";info += "<tr bgcolor='#CDEDED' style='font-weight: bold;' ><td width='450'>網絡連接信息:</td></tr>";var i = 1;for (; !e.atEnd(); e.moveNext()) {var p = e.item();info += "<tr style='color: red'><td >MAC地址" + i + ":" + p.MACAddress + "</td></tr>";info += "<tr style='color: red'><td >IP地址" + i + ":" + p.IPAddress(0) + "</td></tr>";i++;}info += "</table>";return info;}function pcInfo() { //所有信息 var info = cpuInfo();info += disk();info += raminfo();info += mainBoard();info += ipinfo();info += keyBoardInfo();info += RomInfo();info += softDisk();document.getElementById('elInfo').innerHTML = info;return info;}/******************************************以上為pc信息************************************************/</script></head><body><INPUT id="Button1" type="button" value="瀏覽器所有信息" name="Button1" language=javascript onclick="allinfo()"><INPUT id="Button1" type="button" value="客戶端pc信息" name="Button1" language=javascript onclick="pcInfo()"><div id="elInfo"></div></body></html>

    2、Navigator.battery獲取一些電池充電狀態的信息
    3、 NetworkInformation 獲取設備的網絡連接信息。
    4、Navigator.geolocation訪問設備的地理位位置信息
    5、NavigatorConcurrentHardware.hardwareConcurrency (en-US)獲取可用的邏輯處理器核心數
    6、NavigatorPlugins.javaEnabled (en-US)返回 Boolean (en-US) 表明瀏覽器是否支持 Java。
    7、Navigator.keyboard 只讀 實驗性
    返回一個 Keyboard 對象,該對象提供對以下功能的訪問:檢索鍵盤布局圖和切換從物理鍵盤捕獲按鍵的功能。
    8、NavigatorLanguage.language (en-US) 只讀
    返回 DOMString 表示用戶的首先語言,通常是瀏覽器用戶界面的語言。當未知的時,返回 null
    9、NavigatorPlugins.mimeTypes (en-US) 只讀 實驗性
    返回 MimeTypeArray (en-US) 數組用于列舉瀏覽器所支持的 MIME 類型。
    10、NavigatorOnLine.onLine (en-US) 只讀
    返回 Boolean (en-US) 來表明瀏覽器是否聯網。
    11、NavigatorPlugins.plugins (en-US) 只讀 實驗性
    返回 PluginArray (en-US) 數組用于列舉出瀏覽器安裝的插件。

    由于web頁面運行在用戶電腦,所以瀏覽器為了用戶數據安全,禁止本地讀寫數據!nodejs應用于服務器端,則有讀寫的權限!

    script標簽

    異步加載
    首先,script如果沒有 defer和 async,那么瀏覽器會立即加載并執行腳本,也就是說,會阻塞后面的文檔元素的加載和渲染。

    有 defer屬性的話,會異步加載js文件,即和加載渲染后續文檔元素并行進行。加載完成后并不一定是立即執行,而是要等到所有元素解析完成后(圖片是在之后解析完成),在 DOMContentLoaded事件觸發之前完成

    有 async屬性的話,會異步加載js文件。加載完成會立即執行,阻塞后面的文檔元素的加載和渲染。所以不一定按順序執行,誰先加載完成就誰先執行。

    <script defer src="https://g.csdnimg.cn/common/csdn-toolbar/csdn-toolbar.js" type="text/javascript" ></script> <script async src="https://g.csdnimg.cn/common/csdn-toolbar/csdn-toolbar.js" type="text/javascript" ></script>

    let、const

    對于字符串數值類型不允許更改,對于復雜類型的列入數組對象和函數,能修改復雜數據類型中的值,不允許修改地址,例如:
    let a = 1不允許 let a = 2,const同樣

    //聲明a let a = 1 //更改賦值,不被允許,const同樣 let a = 2 //聲明一個對象 let O = {name:'小張' } //可以更改對象中變量的值 O.name:'李四' //不可以改變地址如: O = { sex:'男' }

    function

    //聲明一個函數let username = function (Name){return Name}function show (){let person = {name:username}return person } //這種情況瀏覽器的內存回收機制不會對username函數銷毀,盡量避免這樣去寫代碼

    +=和 前置++、后置++

    var a = 10 a+=1 //會立即執行-=同樣 var b = 10 function num(){ b++ console.log(b)//當你遇到某些環境下數值不正確的時候查看這里 //可更改為 ++b console.log(b)//數值在控制臺測試一樣,但區別與環境,之所以列出來是因為在vue中遇到這個問題 } num()

    toString.call()

    快速的做類型檢測

    //js的寬松是出了名的,比如說你要封裝一個公共函數,多地方使用,可以使用這個方法做數據類型檢測 console.log(toString.call({})) // [object Object] console.log(toString.call(1)) // [object Number] console.log(toString.call(function(){})) // [object Function] console.log(toString.call(false)) // [object Boolean] console.log(toString.call([])) // [object Array] //另外的一種方法就是typeof 它不會檢測name詳細,一股腦的會返回給你 typeof null // "object"typeof [8] // "object"typeof {} // "object"typeof function(){} // "function" typeof 2 //"number"typeof "" //"string"typeof true //"boolean"typeof undefined //"undefined"typeof Symbol(2) // "symbol" //typeof 無法區分null 數組和對象,通常我們會區分判斷Array和Object 有時會用instanceof 來判斷是不是一個對象的實例子 [] instanceof Array// true 這種方法可以判斷數組,不能區分對象 [] instanceof Object // truenull instanceof Object // false 也不能區分nulltoSting.call()實際上是 Object.prototype.toString.call()function isType(type) {let type = Object.prototype.toString.call(type)if(type==='[object Function]'){//填寫邏輯}else if(type==='[object Array]'){//填寫邏輯}else if(type==='[object String]'){//填寫邏輯}else if(type==='[object Number]'){//填寫邏輯}else if(type==='[object Boolean]'){//填寫邏輯}else if(type==='[object Symbol]'){//填寫邏輯}else if(type==='[object Object]'){//填寫邏輯}else {try {if(type==='[object Null]'||type==='[object Undefined]'){alert('傳入的參數錯誤')}} catch(err) {console.error("錯誤信息:" + err.message);}}}

    變量賦值

    //先檢查sessionStorage.a是否有值,沒有就賦值1 var a = sessionStorage.a||1//sessionStorage.a有值則是sessionStorage.a,沒值則是1 var a = sessionStorage.a??1//sessionStorage.a有值則是sessionStorage.a,沒值則是1 function num(type =1){return {num:type} } num()//{num:1} num(11)//{num:11} //規避賦值為null方法

    async await

    //使用async await讓接口同步,完成在進行下行代碼運行 export function log(data){//模擬接口1console.log(123)return axios({url:'xxxx/xxx/xx--/ss',method:'post',data}) } export function log2(params){ //模擬接口2console.log(123)return axios({url:'xxxx/xxx/xx--/ss',method:'get',params}) } async function init(){ let params = {id:1}await log(params).then(res=>{}).catch(error=>{})let {code,message,result} = await log2({id:1}) }

    js創建dom,沒有閉合標簽

    var dom = document.createElement('video') //這部特別重要,以下步驟,會將創建<video>添加一個</video>閉合標簽,沒有這一步,當你使用innerHTML插入<video>一個標簽沒有</video>閉合標簽,使用appendChild插入會報錯 dom.innerText = '您的瀏覽器不支持視頻播放' xx.innerHTML = dom xx.appendChild(dom)

    eval() 函數計算 JavaScript 字符串,并把它作為腳本代碼來執行。

    eval("x=10;y=20;console.log(x*y)"); // 200 console.log(eval("2+2")); // 4 console.log(eval(x+17)); // 27 console.log(eval(18)); // 18 // 相當于直接調用console.log let msg = "hello world"; eval("console.log(msg)"); // hello world // 相當于函數聲明 eval("function sayHi() { console.log('hi'); }");const obj = {a: {b: {c: 1,}} } function get(str) {console.log(eval(str)) // 1,相當于console.log(obj.a.b.c) } get('obj.a.b.c')

    此方法和innerHTML慎用,如果有黑客察覺并惡意使用,會造成損失

    原生delete方法

    var nun = [1,2,3,4,5,6] delete(nun[0]) console.log(nun) VM1001:3 (6) [empty, 2, 3, 4, 5, 6]//會出現這種結果,可以使用遍歷刪除

    創建Array和Object

    var arr = [] var array = new Array([1,1,3]) var obj = {} var object = new Object({name:'123'})

    iframe跨域通信

    父傳子

    // 父頁面 <iframe id="iframe" src="http://test.com/childrenCrossDomain.html" name="childrenName"></iframe><script>let iframe = document.getElementById('iframe');function sendToChildren(){iframe.contentWindow.postMessage('hello啊,在嗎', 'http://test.com')} </script>// 子頁面 <script>window.addEventListener("message", function(e){console.log(e.data)}); </script>

    子傳父

    // 父頁面 window.addEventListener('message',function(e){console.log(e.data) })// 子頁面 window.parent.postMessage('不在', 'http://父域名');

    if的語法簡寫,不建議使用,閱讀性差

    var a = 1 if(a) console.log(1)

    總結

    以上是生活随笔為你收集整理的前端知识二的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    69亚洲视频| 九九久久久久久久久激情 | 精品毛片一区二区免费看 | 精品一区在线 | 91精品在线观看视频 | 欧美性色xo影院 | 国产手机视频在线播放 | 精品国产综合区久久久久久 | 91精品国产99久久久久久红楼 | 91看片成人 | 久草视频免费看 | 在线看片日韩 | 一级黄色在线视频 | 精品99免费 | 最新极品jizzhd欧美 | 粉嫩av一区二区三区四区在线观看 | 天天干天天干天天干 | 国产福利91精品 | 在线影院 国内精品 | 国产精品久久久电影 | 久久婷婷五月综合色丁香 | 天天插天天干天天操 | 亚洲免费黄色 | 一区二区三区在线观看免费视频 | 夜夜高潮夜夜爽国产伦精品 | 激情综合五月天 | 在线三级中文 | 97视频在线 | 国产91在| 五月天九九 | 九九热1 | 视频一区二区精品 | av免费福利 | 亚洲激情中文 | 亚洲成人av影片 | 狠狠操在线 | 久久尤物电影视频在线观看 | 欧美国产日韩一区 | 一区二区三区在线影院 | 欧美日韩国产在线观看 | 天天射天天色天天干 | 天天操比 | 视频一区二区三区视频 | 国产99精品 | 美女久久久久久久久久久 | 亚洲欧美精品一区 | 国产黄色免费 | 日韩在线电影 | 午夜12点 | 一区二区三区在线视频111 | 国产精品视频在线看 | 成人综合婷婷国产精品久久免费 | 久久综合狠狠综合久久狠狠色综合 | 97超碰国产精品 | 麻豆视频国产在线观看 | av福利资源 | 五月天综合激情 | 欧美成人日韩 | 成人av在线直播 | 久久a免费视频 | 免费成人短视频 | 国产精品久久久久久久久费观看 | 国产精品久久久久毛片大屁完整版 | 日日爽天天爽 | 又色又爽又黄高潮的免费视频 | 中文永久免费观看 | 久久免费视频3 | 玖玖精品在线 | 久久99国产精品自在自在app | 日韩精品专区在线影院重磅 | 人人看人人做人人澡 | 国产精品美女久久久久久 | 中文字幕在线观看免费高清完整版 | 99久久婷婷国产综合精品 | 一区二区三区四区免费视频 | 久久精品专区 | 久久久久免费观看 | 亚洲天堂精品视频在线观看 | 国产日韩精品一区二区在线观看播放 | 狠狠干天天| 亚洲国产精品久久久久久 | 国产精品毛片一区视频 | 欧美日一级片 | 中文在线字幕观看电影 | 男女拍拍免费视频 | 国产日韩欧美在线影视 | 国产欧美精品一区二区三区四区 | 91网站观看 | 99在线免费观看 | 91一区啪爱嗯打偷拍欧美 | 99久久影院 | 亚洲国产成人久久 | 国产精品一区二区在线观看 | 人人dvd | 韩国精品福利一区二区三区 | 色老板在线 | www免费黄色 | 国产精品欧美激情在线观看 | 欧美性生活一级片 | 国产精品videossex国产高清 | 天天色综合三 | 久草在线免费资源 | 日韩成人中文字幕 | 中文字幕在线中文 | 国产精品久久久久久久久久久免费看 | 免费成人短视频 | 五月色婷| 制服丝袜在线91 | 久久精品一区二区三区国产主播 | 日本中文字幕电影在线免费观看 | 国产丝袜 | 色干综合 | 国产精品影音先锋 | 亚洲理论视频 | 亚洲不卡在线 | 99视频精品视频高清免费 | 欧美一级免费在线 | 亚洲国产福利视频 | 国内丰满少妇猛烈精品播 | 99热在线免费观看 | 国产精品永久在线观看 | 色综合天天色综合 | 99综合电影在线视频 | 久久人人爽爽人人爽人人片av | 日韩午夜电影网 | 国内精品视频免费 | 激情欧美一区二区免费视频 | 成人黄色小说在线观看 | 成人在线免费视频观看 | 999久久精品 | 五月天网站在线 | 日日干激情五月 | 手机看国产毛片 | 国产精品乱码在线 | 国产精品一区在线播放 | 亚洲综合五月天 | 国产色综合 | 久久69av| 毛片网站在线看 | 97色婷婷成人综合在线观看 | 特级黄色一级 | 成人在线观看资源 | 中文字幕在线看视频 | 一区二区精品视频 | 国产一区二区三区午夜 | 日韩免费电影网站 | 国产一区二区三精品久久久无广告 | 玖玖爱免费视频 | 99久久精品免费一区 | 久久视频国产精品免费视频在线 | 亚洲欧美成aⅴ人在线观看 四虎在线观看 | 日韩精品在线播放 | 国产精品女人久久久久久 | 国产精品欧美在线 | 97免费在线视频 | 91精品免费视频 | 精品久久久精品 | 精品播放 | 久久一区二区三区四区 | av免费成人| 国产一级a毛片视频爆浆 | 国产又粗又猛又黄视频 | 一区二区三区在线免费 | 国产精品毛片一区二区在线看 | 国产久视频 | 久久久久久久免费 | 国产美女视频免费观看的网站 | 亚洲国产免费 | www.亚洲视频.com | 91精品久久久久久久99蜜桃 | www免费黄色 | 丝袜美腿亚洲 | 久久av免费观看 | 天天射天天爽 | 精品久久久久久亚洲综合网站 | 国产成人一区二区三区在线观看 | 久久一区二区三区超碰国产精品 | 久久精品一区二区三区中文字幕 | 天天天天干 | 2019久久精品| 久久国产精品免费 | 91理论电影 | 中文免费| 在线免费黄色片 | 久久一本综合 | 高清av免费看 | 国产又粗又猛又色又黄视频 | 国外成人在线视频网站 | 亚洲v欧美v国产v在线观看 | 超级碰视频 | 国产日韩中文字幕在线 | 久久久香蕉视频 | 免费观看一区二区三区视频 | 国产永久网站 | 色综合天天爱 | 久久国产免费 | 午夜性色 | 九色琪琪久久综合网天天 | 欧美动漫一区二区三区 | 一区二区三区四区五区六区 | 日本在线视频网址 | 久草新在线 | 亚洲国产视频a | 精品一区 精品二区 | 国产在线观看中文字幕 | 欧美日韩一区二区免费在线观看 | 欧美在线视频二区 | 国产精品s色 | 国产精品久久久影视 | 久久九九国产精品 | 玖玖爱免费视频 | 欧美日性视频 | 在线观看免费91 | 99re6热在线精品视频 | 精品久久久久久一区二区里番 | 亚洲精品在线观看视频 | 黄色免费网站大全 | av在线网站免费观看 | 操处女逼 | 夜色成人av| 国产在线播放观看 | 天天干天天操天天操 | 在线免费看黄网站 | 91视频高清完整版 | 国产盗摄精品一区二区 | 波多野结依在线观看 | 97国产情侣爱久久免费观看 | 日本精品免费看 | 国产99爱 | 婷婷开心久久网 | 六月丁香激情综合 | 911国产在线观看 | 免费观看黄色12片一级视频 | 久草视频在线观 | 天天做天天爱夜夜爽 | 精品国产一区二区三区久久久蜜月 | 成人三级视频 | 插综合网| 国产视频在线播放 | 亚洲三区在线 | 一区二区三区日韩视频在线观看 | 在线免费观看黄 | 在线观看完整版免费 | 91桃色免费视频 | 日本中文一级片 | 99色资源| 久久99久久99精品中文字幕 | 国产精品一区二区在线播放 | 国产精品av电影 | 91在线播放视频 | 狠狠干夜夜爱 | 男女视频国产 | 91成人亚洲| 美女一二三区 | av成人在线观看 | 亚洲精品国产精品99久久 | 激情av五月婷婷 | 久久国产精品一区二区 | 久久国产女人 | 久久免费黄色大片 | 亚洲综合色播 | 国产视频 亚洲视频 | 久久99热这里只有精品 | 久久成人高清 | 99国产一区二区三精品乱码 | 中文字幕在线观看免费观看 | 少妇精品久久久一区二区免费 | 国产一级在线 | 不卡的一区二区三区 | 永久免费观看视频 | 久久夜色精品亚洲噜噜国4 午夜视频在线观看欧美 | www免费视频com━ | 成人免费在线视频观看 | 精品少妇一区二区三区在线 | 日韩手机在线观看 | 久久久久夜色 | 日本免费一二三区 | 日韩av专区| 国产精品久久久久久爽爽爽 | 深夜免费福利视频 | 中文字幕第| 激情综合网色播五月 | 亚洲综合爱 | 黄色91免费观看 | 97在线观看免费高清完整版在线观看 | 久久99精品久久久久久秒播蜜臀 | 在线看片日韩 | 婷婷久久亚洲 | 最新av观看 | 日韩色综合 | 国产成人精品一区二区三区免费 | 色播六月天 | 精品国产亚洲一区二区麻豆 | 欧美乱码精品一区 | 久久久久免费视频 | 国内精品久久久久影院一蜜桃 | 成人黄色毛片 | 国产特级毛片aaaaaa高清 | 亚洲精品国产精品国自产观看浪潮 | www免费在线观看 | 精品久久久久久综合 | 一区二区理论片 | 欧美怡红院| 伊人成人激情 | 在线观看免费一区 | 综合久久网站 | 日本久久久精品视频 | 久久国产热视频 | 国产精品免费小视频 | 欧日韩在线视频 | 97日日碰人人模人人澡分享吧 | 黄色的网站免费看 | 亚洲尺码电影av久久 | av网站免费在线 | 久久精品久久精品久久39 | 在线亚洲午夜片av大片 | 日韩在线免费播放 | 97偷拍在线视频 | 午夜在线免费观看视频 | 日日操夜夜操狠狠操 | 中文字幕麻豆 | 日韩中文字幕视频在线观看 | 国产色啪| 日韩欧美国产视频 | 久久神马影院 | 日韩网站中文字幕 | 麻豆91网站| 日韩电影在线观看一区二区三区 | 久草在线看片 | 亚洲欧洲精品一区二区精品久久久 | 国产精品久久久久久久久久三级 | 日韩精品高清视频 | 日日躁天天躁 | 黄色中文字幕 | 国产免费午夜 | 亚洲一级影院 | 91天堂素人约啪 | 国产露脸91国语对白 | 亚洲精品一区中文字幕乱码 | 男女激情片在线观看 | 91在线视频免费播放 | 中文字幕在线观看亚洲 | 欧美极品久久 | 精品久久久久久久久久久久久 | 超碰在线最新地址 | 国产视频九色蝌蚪 | 国产成人综 | 日韩午夜精品 | 免费久久99精品国产 | 日本成址在线观看 | 亚洲精品国产精品99久久 | 久久天天躁 | 97av在线 | 国产亚洲精品久久久久久网站 | 激情视频一区二区 | 人成在线免费视频 | 欧美激情精品久久久久久免费 | 日韩视频一区二区三区在线播放免费观看 | 在线天堂中文在线资源网 | 在线视频日韩一区 | 国精产品999国精产品视频 | 蜜臀av性久久久久av蜜臀妖精 | 在线岛国av| 国产精品h在线观看 | 天天干夜夜想 | 亚洲精品乱码久久久久久 | 国产精品毛片久久久久久久久久99999999 | 天堂av免费看 | 日韩免费观看高清 | 色网址99| 亚洲激情校园春色 | 欧美一区二区免费在线观看 | 色多多在线观看 | 久久综合狠狠综合久久综合88 | 99国产高清 | 天天干天天操天天操 | 99国产一区二区三精品乱码 | 色丁香色婷婷 | 黄色91在线观看 | 天天av天天 | 国际精品久久久久 | 少妇搡bbbb搡bbb搡69 | 国产视频导航 | 国产夫妻自拍av | 在线观看黄a| 亚洲日本va中文字幕 | 视频一区二区免费 | 日韩精品免费在线 | 人人干天天射 | 日韩在线观看你懂得 | 日韩小视频网站 | 国产码电影 | 国产成人精品综合久久久久99 | 黄色网址在线播放 | 精品国产一区二区三区久久久久久 | 欧美日韩国产精品一区 | 高潮毛片无遮挡高清免费 | 在线观看网站你懂的 | 激情深爱.com | 久久高清免费视频 | 91精品国产九九九久久久亚洲 | 99视频免费播放 | 久久老司机精品视频 | 日韩欧美精品在线观看视频 | 特黄特色特刺激视频免费播放 | 欧美一级片在线免费观看 | 国产中文字幕在线看 | 国产免费二区 | 美女网站视频免费都是黄 | 黄色三级免费片 | 国产精品黄色在线观看 | av中文在线播放 | 99久久久久免费精品国产 | 久久一二三四 | 久久久亚洲国产精品麻豆综合天堂 | 99视频精品免费观看, | 国产精品久久久久久久午夜片 | 日韩精品91偷拍在线观看 | 黄色网址av | av网站大全免费 | 久草在线视频免费资源观看 | 国产精品一级视频 | 欧美一区二区在线免费观看 | 日韩欧美一区二区三区在线观看 | 国产精品理论在线观看 | 一区二区三区在线电影 | 久久免费视频网 | 精品欧美小视频在线观看 | 天天爱天天射天天干天天 | 亚洲午夜激情网 | 久久 在线| 色射色 | 国产亚洲婷婷 | 国产亚洲精品中文字幕 | 国产麻豆精品95视频 | 丰满少妇久久久 | 麻豆高清免费国产一区 | 久草在线中文视频 | 91av网站在线观看 | 久草线| 黄色在线观看网站 | 少妇bbb搡bbbb搡bbbb′ | 亚洲精品中文字幕在线 | 最新中文字幕 | 日日躁天天躁 | 免费在线观看不卡av | 99视频网站| 精品国产aⅴ一区二区三区 在线直播av | 伊人久久国产精品 | 欧美一级电影 | 一区二区视频电影在线观看 | 日韩免费观看一区二区三区 | 成人一区二区在线观看 | 99精品在线免费在线观看 | 91大神精品视频在线观看 | 亚洲视频1 | 中文字幕在线看 | 国内精品久久久久久中文字幕 | 国产日韩在线一区 | 久久久久久久久久久免费视频 | 欧美日韩国产一区 | 亚洲国产精品va在线看黑人 | 91人人干| 黄色一级性片 | 久青草电影 | 黄色tv视频 | 亚洲日韩欧美一区二区在线 | 国产一级黄色片免费看 | 亚洲国产99 | 国产色网站 | 夜夜干夜夜 | 麻豆视频免费在线观看 | 香蕉视频导航 | 麻豆视频免费入口 | 91av在线视频播放 | 人人爽人人香蕉 | 奇米网网址 | 中文在线免费观看 | 成人va天堂 | 日韩理论片中文字幕 | 中文字幕一区二区三区精华液 | 精品一区二区免费视频 | 人人干人人干人人干 | 中文字幕永久在线 | 揉bbb玩bbb少妇bbb | 96国产在线 | 国产成人777777 | 日本久久综合视频 | 91精选在线 | 亚洲久草网 | 黄a网| 999精品在线| 91在线区 | 亚洲一区日韩 | 欧美精品久久久久久久久久久 | 91精品国自产拍天天拍 | 色偷偷88888欧美精品久久 | 狠狠躁夜夜躁人人爽视频 | 免费99精品国产自在在线 | 成人在线视频你懂的 | 天天色综合1 | 婷婷射五月 | 久久免费99精品久久久久久 | 99久久国产免费免费 | 久久高清免费观看 | 黄色一级大片在线免费看国产一 | 精品亚洲男同gayvideo网站 | 国产精品乱看 | 国产精在线 | 国产三级久久久 | 青草草在线 | 亚洲理论片在线观看 | 国产一区二区高清 | 国产精品免费久久久久 | 夜夜澡人模人人添人人看 | 特级黄色片免费看 | 少妇性xxx| 久久综合电影 | 99热这里只有精品免费 | 在线观看91 | 黄色www| 中文字幕乱码在线播放 | 久久久久亚洲国产精品 | 黄色av在| 9999免费视频 | 久久人人爽爽人人爽人人片av | 在线观看精品视频 | 午夜婷婷网 | 日韩精品一区二区三区免费观看 | 久99久久| 亚洲精品动漫成人3d无尽在线 | 视频在线国产 | 91精品第一页 | 人人爱人人做人人爽 | 狠狠干美女 | 99在线免费观看 | 亚洲精品乱码久久久久v最新版 | 99精品视频网站 | 五月天综合| 99国内精品 | 999久久久精品视频 日韩高清www | 天天草天天干天天射 | 6699私人影院 | 91精品中文字幕 | 精品特级毛片 | 国产在线观看黄 | 国产综合香蕉五月婷在线 | 69视频国产 | 日韩视频a | 日本三级吹潮在线 | 亚洲精品午夜久久久 | 96视频在线 | 久久精品7| 三级小视频在线观看 | 久久手机在线视频 | 国产无套精品久久久久久 | 日韩av高清在线观看 | 欧美亚洲精品在线观看 | 欧美色噜噜噜 | 成全免费观看视频 | 片黄色毛片黄色毛片 | 亚洲成人高清在线 | 日日日天天天 | 中文字幕一区av | 日韩久久一区 | 美女视频黄是免费的 | www.在线看片.com | 久爱综合 | 久久精品亚洲综合专区 | 日韩啪啪小视频 | 97成人在线免费视频 | 狠狠干夜夜爽 | 国产亚洲精品日韩在线tv黄 | 9999国产精品 | 国产精品久久久久久久99 | 天天操狠狠操夜夜操 | 91精品视频免费在线观看 | 日韩精品视频一二三 | 久久久精品国产一区二区电影四季 | 色99在线| 亚洲欧美国产日韩在线观看 | 人人爽人人看 | 日韩精品免费一线在线观看 | 国产97在线观看 | 久久久www成人免费毛片麻豆 | 国产视频美女 | 亚洲aaa毛片| 欧美激情第八页 | 国产剧情一区二区在线观看 | 免费观看视频的网站 | 成人精品99| 久久精品99国产精品 | 婷五月激情 | 激情欧美一区二区三区免费看 | 久久久久久久久久久高潮一区二区 | 国产生活一级片 | 黄色片视频在线观看 | 激情综合网在线观看 | 亚洲欧美乱综合图片区小说区 | 伊香蕉大综综综合久久啪 | 免费av电影网站 | 国产精品99久久免费黑人 | 国产精品99久久久久的智能播放 | 香蕉视频导航 | 久久久久久久免费看 | www.久久婷婷 | 天堂视频中文在线 | 日韩精品中文字幕在线播放 | 日韩精品电影在线播放 | 精品视频区 | 久久精品视| 国产日韩精品视频 | 国产综合精品久久 | 色综合国产 | 久久国产精品99久久久久久丝袜 | 在线看岛国av | 狠狠狠狠狠干 | 欧美一区二区三区在线看 | 国产一级精品在线观看 | 日本丰满少妇免费一区 | 精品免费观看视频 | 中文在线字幕观看电影 | 色播五月婷婷 | av一区二区在线观看中文字幕 | 麻豆国产精品永久免费视频 | 欧美成人aa| 色欧美综合| 成人久久亚洲 | 午夜视频在线观看网站 | 国产精品资源在线 | 国产不卡免费 | 人人爽人人片 | 99色视频在线 | 456免费视频| 久 久久影院 | 色干综合| 日日夜夜网 | 欧美巨乳波霸 | 九九免费在线看完整版 | 色婷婷视频| 久久99国产精品久久99 | 国产在线观看 | 色资源在线观看 | 午夜av不卡 | 国产极品尤物在线 | 国产精久久久久久久 | 99精品视频一区二区 | 顶级欧美色妇4khd | 久久伊人操 | 亚洲综合欧美激情 | 国产偷国产偷亚洲清高 | 国产亚洲午夜高清国产拍精品 | 91视视频在线直接观看在线看网页在线看 | 久久久网页 | 欧美色图亚洲图片 | 久久天天躁狠狠躁亚洲综合公司 | 婷婷丁香在线观看 | 成人午夜剧场在线观看 | 97电影在线看视频 | www99精品 | 96在线 | 久久免费看av | 国产免费亚洲高清 | 国产一线在线 | 成人黄色毛片视频 | 国产一区二区高清不卡 | 国产高清免费视频 | 日韩成人免费在线电影 | 国产美女精品在线 | 午夜美女av | 中文字幕在线观 | 四虎国产精品免费观看视频优播 | 999久久久久久久久久久 | 狠狠做深爱婷婷综合一区 | 91麻豆精品国产自产在线游戏 | 91在线国产观看 | 丁香在线观看完整电影视频 | 精品久久久久久久久久岛国gif | 午夜10000 | 久久xxxx | 在线免费av播放 | 久久你懂的 | 在线观看av免费 | 日韩精品在线免费观看 | 国产区av在线 | 波多野结衣资源 | 韩国av一区| 久亚洲| 欧美一区二区三区在线 | 色婷婷激情五月 | 一本一道久久a久久综合蜜桃 | 日韩在线观看免费 | 一级全黄毛片 | 久久免费视频7 | 99国产视频在线 | 亚洲激情六月 | 91av成人 | 日本三级国产 | 国产亚洲日 | 久久情网 | 久久不卡电影 | 免费不卡中文字幕视频 | av色一区 | 高清一区二区三区av | 国产中文a | 日韩1页 | 97狠狠操| 国产精品久久久久久99 | 国产黄色免费观看 | 在线观看精品一区 | 成人欧美一区二区三区在线观看 | av888.com| 激情婷婷在线 | 国产婷婷 | 中文字幕影片免费在线观看 | 欧美性大战 | 国产成人久久av免费高清密臂 | 久久tv| 久久免费久久 | 久久久久久久久久久免费av | 九九免费在线视频 | 日日夜夜骑 | 中文字幕资源在线观看 | 在线观看激情av | 色偷偷88欧美精品久久久 | 亚洲一级性 | 免费午夜在线视频 | av在线播放亚洲 | 黄色软件在线观看免费 | 精品成人a区在线观看 | 精品久久久亚洲 | 亚洲精品国产区 | 国产亚洲综合性久久久影院 | 一区二区三区www | 激情小说网站亚洲综合网 | а天堂中文最新一区二区三区 | 99久久影院| 成人免费看片网址 | 日韩欧美一区二区三区在线 | 亚洲精品91天天久久人人 | 2019精品手机国产品在线 | 丁香婷婷激情国产高清秒播 | 国产成人精品亚洲精品 | 国产经典 欧美精品 | 中文永久字幕 | 五月婷av| 欧美一区日韩一区 | 国产精品精品久久久 | 国产精品久久久av久久久 | 五月婷婷伊人网 | 精品亚洲视频在线观看 | 91视频91蝌蚪 | 97超视频| 91 在线视频 | 国产亚洲在线观看 | 毛片网免费 | 中文字幕丝袜美腿 | 国产福利一区二区三区在线观看 | 色婷婷综合视频在线观看 | 久久成人在线 | 18国产精品福利片久久婷 | 99久久一区 | 免费视频成人 | 激情视频在线高清看 | 天天射天天操天天干 | 蜜桃av人人夜夜澡人人爽 | 免费网站污 | 欧美日韩国产在线 | 久草视频一区 | 天天操天天射天天舔 | 国产精品黑丝在线观看 | 久久国产精品小视频 | 激情五月播播久久久精品 | 男女激情麻豆 | 色综合久久久久综合体 | 在线播放精品一区二区三区 | 久久久69 | 国产一区二区网址 | 丁香 久久 综合 | 91人人视频在线观看 | 99视屏 | 人人讲 | 国产成人精品国内自产拍免费看 | 亚洲综合成人在线 | 99久久久国产精品美女 | 精品久久久久久亚洲 | 免费成人av| 久久综合狠狠综合久久狠狠色综合 | 干天天 | 亚洲精品视频在线观看免费视频 | 国产精品精品国产色婷婷 | 久久久精选 | 亚洲免费在线播放视频 | 国产99免费视频 | av 一区 二区 久久 | 国产精品久久一区二区三区不卡 | 婷五月天激情 | 国产午夜影院 | 99视频免费观看 | 国产精品免费看久久久8精臀av | 日韩在线看片 | 成人在线电影观看 | 国产做爰视频 | 国产精品视频免费看 | 国产精品av在线 | av黄网站 | 久久国产精品免费观看 | 在线免费亚洲 | 永久免费精品视频 | 日韩特黄一级欧美毛片特黄 | 婷婷伊人五月 | 亚州国产精品 | 五月婷婷丁香激情 | 欧美极品少妇xbxb性爽爽视频 | 国产免费午夜 | 96香蕉视频 | 国产精品久久久久aaaa九色 | 4p变态网欧美系列 | 射射色| 丁香久久| 99久久精品国产亚洲 | 成人免费在线网 | 韩日精品在线 | 在线观看色网 | 日韩网站中文字幕 | www.香蕉视频在线观看 | 亚洲情影院 | 免费观看一级 | 欧美激情xxxx | 久草观看视频 | 天天艹日日干 | 中文字幕永久 | 久草免费在线 | 美女视频是黄的免费观看 | 亚洲春色综合另类校园电影 | 国产97色在线 | 久久成人综合视频 | 手机成人免费视频 | 欧美日韩国产一区 | 人人射人人爱 | 久草视频中文在线 | 在线视频观看成人 | 亚洲一区二区三区在线看 | av在线激情 | 美女网站在线 | 最近中文字幕视频完整版 | 国产小视频国产精品 | 精品欧美一区二区在线观看 | 成人资源在线观看 | a亚洲视频 | 成人va在线观看 | 日韩专区一区二区 | 亚洲电影第一页av | 国产在线播放一区 | 国产精品1000 | 日韩午夜一级片 | 色婷婷在线观看视频 | 精品国产乱码一区二 | 亚洲欧美精品一区 | 国产精品久久网站 | 人人爽人人舔 | 夜夜夜影院 | 日韩视频 一区 | 国产精品入口传媒 | 香蕉视频在线播放 | av在线电影网站 | 天天av天天 | 欧美小视频在线观看 | 国模吧一区| 99久久er热在这里只有精品66 | 国产精品久久在线观看 | 亚洲欧美视频一区二区三区 | 日本黄色免费电影网站 | 99热在线观看免费 | 国模吧一区 | a爱爱视频| 中文字幕在线观看第一区 | 亚洲黄色在线观看 | 97人人精品 | 国产精品自产拍在线观看蜜 | 91中文字幕在线观看 | 国产精品嫩草55av | av中文字幕日韩 | 日韩3区 | 毛片一区二区 | 日韩啪啪小视频 | 久久观看最新视频 | 91成人在线免费观看 | 日韩精品欧美一区 | 国产三级香港三韩国三级 | 欧美日韩在线第一页 | 日韩一区二区三区免费视频 | 中文字幕在线高清 | 麻豆91精品视频 | 欧美精品久久久久久久久免 | 国产黄a三级三级三级三级三级 | 波多野结衣电影一区二区三区 | 久久久久久高清 | 久久久福利视频 | 69国产精品成人在线播放 | 精品国产一区二区三区噜噜噜 | 91av蜜桃| a在线一区 | 在线观看亚洲精品 | 日韩在线 一区二区 | 国产91在线 | 美洲 | 九九免费在线视频 | 激情综合五月 | 免费十分钟 | 国产亚洲91 | 伊人狠狠色| 狠狠天天 | 精品视频久久 | 久久久免费网站 | 四虎影视精品永久在线观看 | 久久久久网址 | 午夜精品视频一区 | 国产精品久久久精品 | 欧美激情第28页 | 国产又粗又硬又长又爽的视频 | 久久免费视频一区 | av黄在线播放 | 日韩欧美在线视频一区二区三区 | 久久久久国产精品厨房 | 国产高清不卡一区二区三区 | 国产成人精品亚洲精品 | 亚洲精品毛片一级91精品 | 久久成人午夜视频 | 91免费版成人 | 中文字幕久久精品一区 | 国产日韩精品在线观看 | 成年人免费在线看 | 久草在线资源免费 | 国产精品美女久久久久久久 | 国产不卡高清 | 欧美一区在线看 | 国产 欧美 日本 | 手机av在线不卡 | 国产理论影院 | av网站在线观看免费 | 6699私人影院 | 国产不卡免费视频 | 国产精品专区在线观看 | 69久久久 | 久射网| www.91国产 | 国产视频在线看 | 国内精品久久久久影院优 | 精产嫩模国品一二三区 | 蜜臀久久99精品久久久久久网站 | 欧美国产日韩在线视频 | 综合国产在线 | www99精品 | 国产精品久久久网站 | 在线观看国产区 | 日韩在线视频免费播放 | 伊人久在线 | 国产日韩精品视频 | 欧美日韩免费视频 | 天天综合成人 | 久久视频这里有久久精品视频11 | 亚洲免费av片 | 国产在线观看高清视频 | 免费在线h | 丁香婷婷综合激情五月色 | 99精品色 | 亚洲欧美乱综合图片区小说区 | 激情综合久久 | 日韩.com | wwxxxx日本| 日韩一片| 久久婷婷视频 | 9797在线看片亚洲精品 | 中文字幕在线日本 | 国产特级毛片aaaaaa毛片 | 国产剧情一区在线 | 夜夜视频欧洲 | 91麻豆精品国产午夜天堂 | 色干综合| 国产在线精品二区 | 99久久激情视频 | 1024手机基地在线观看 | 九九精品视频在线看 | 久久精品视频国产 | 中文字幕欲求不满 | 欧美一级日韩三级 | 亚洲理论片 | 久久1电影院| 波多野结衣久久资源 | 国产精品久久久久久久毛片 | 亚洲欧美日韩一区二区三区在线观看 | 东方av在| 插婷婷 | 91av免费在线观看 | 九月婷婷综合网 | 久久精品视频在线看 | 日韩一级片网址 | 91av电影在线 |