整合營銷服務商

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

          免費咨詢熱線:

          前端 - HTML基礎(1)

          前端 - HTML基礎(1)

          TML基礎


          1. HTML基本知識與結構
          2. HTML常見標簽
          3. 標簽寫法與嵌套的討論

          HTML、CSS、javascript三者的關系


          1. HTML是網頁內容的載體。內容就是網頁制作者放在頁面上想要讓用戶瀏覽的信息,可以包含文字、圖片、視頻等。
          2. CSS樣式是表現。就像網頁的外衣。比如,標題字體、顏色變化,或為標題加入背景圖片、邊框等。所有這些用來改變內容外觀的東西稱之為表現。
          3. JavaScript是用來實現網頁上的特效效果。如:鼠標滑過彈出下拉菜單。或鼠標滑過表格的背景顏色改變。還有焦點新聞(新聞圖片)的輪換。可以這么理解,有動畫的,有交互的一般都是用JavaScript來實現的。

          <!DOCTYPE HTML>

          指示 web 瀏覽器關于頁面使用哪個 HTML 版本進行編寫,必須寫在所有代碼的第一行!

          如果你的頁面添加了<!DOCTYPE html>,那么就等同于開啟了標準模式,那么瀏覽器就得老老實實的按照W3C的標準解析渲染頁面,這樣一來,你的頁面在所有的瀏覽器里顯示的就都是一個樣子了。

          這個屬性會被瀏覽器識別并使用,但是如果你的頁面沒有DOCTYPE的聲明,瀏覽器按照自己的方式解析渲染頁面,那么,在不同的瀏覽器就會顯示不同的樣式。

          這就是<!DOCTYPE html>的作用。

          固定結構


          結構如下:

          <html>
           <head>...</head>
           <body>...</body>
          </html>
          

          代碼講解:

          • <html></html>稱為根標簽,所有的網頁標簽都在<html></html>中。
          • <head> 標簽用于定義文檔的頭部,它是所有頭部元素的容器。頭部元素有<title>、<script>、 <style>、<link>、 <meta>等標簽,頭部標簽在下一小節中會有詳細介紹。
          • 在<body>和</body>標簽之間的內容是網頁的主要內容,如<h1>、<p>、<a>、<img>等網頁內容標簽,在這里的標簽中的內容會在瀏覽器中顯示出來。
          • 為 html 文檔加上使用的語言類型說明

          在很多國際化的網站中會使用到!<html lang="zh-CN"> </html>告訴瀏覽器等設備,語言使用以中文為顯示和閱讀基礎!英文使用 en

          head標簽


          下面我們來了解一下<head>標簽的作用。文檔的頭部描述了文檔的各種屬性和信息,包括文檔的標題等。絕大多數文檔頭部包含的數據都不會真正作為內容顯示給讀者。

          下面這些標簽可用在 head 部分:

          <head>
           <title>...</title>
           <meta>
           <link>
           <style>...</style>
           <script>...</script>
          </head>
          

          <title>標簽:

          • 在<title>和</title>標簽之間的文字內容是網頁的標題信息,它會出現在瀏覽器的標題欄中。網頁的title標簽用于告訴用戶和搜索引擎這個網頁的主要內容是什么,搜索引擎可以通過網頁標題,迅速的判斷出網頁的主題。每個網頁的內容都是不同的,每個網頁都應該有一個獨一無二的title。

          meta標簽

          • meta是html中的元標簽,其中包含了對應html的相關信息,客戶端瀏覽器或服務器端的程序會根據這些信息進行處理。
          • HTTP-EQUIV類似于HTTP的頭部協議,它回應給瀏覽器一些有用的信息,以幫助正確和精確地顯示網頁內容。
          • content(內容類型):重要!!這個網頁的格式是文本的,網頁模式
          • charset(編碼):特別重要!!!這個網頁的編碼是utf-8,中文編碼,需要注意的是這個是網頁內容的編碼,而不是文件本身的,其他類型的編碼中文可能會出現亂碼。
          • http-equiv="Content-Type" 表示描述文檔類型

          content="text/HTML; 文檔類型,這里為html,如果JS就是text/javascript,

          charset=utf-8 頁面字符集,編碼,eg:gb2312,iso-8859-1,utf-8

          • meta標簽

          meta是html語言head區的一個輔助性標簽。幾乎所有的網頁里,我們可以看到類似下 面這段的html代碼:

          <head> 
           <meta http-equiv="content-Type" content="text/html; charset=gb2312"> 
          </head>
          

          也許你認為這些代碼可有可無。其實如果你能夠用好meta標簽,會給你帶來意想不到的效果,例如加入關鍵字會自動被大型搜索網站自動搜集;可以設定頁面格式及刷新等等。

          • meta標簽的組成

          meta標簽共有兩個屬性,它們分別是http-equiv屬性和name屬性,不同的屬性又有不同的參數值,這些不同的參數值就實現了不同的網頁功能。

          1、name屬性

          name屬性主要用于描述網頁,與之對應的屬性值為content,content中的內容主要是便于搜索引擎機器人查找信息和分類信息用的。

          meta標簽的name屬性語法格式是:

          <meta name="參數" content="具體的參數值"> 
          

          其中name屬性主要有以下幾種參數:

          1)Keywords(關鍵字)
            說明:keywords用來告訴搜索引擎你網頁的關鍵字是什么。
            舉例:
           <meta name="keywords" content="science, education,culture,politics,ecnomics,relationships, entertaiment, human">
          2)description(網站內容描述)
            說明:description用來告訴搜索引擎你的網站主要內容。
            舉例:
           <meta name="description" content="This page is about the meaning of science, education,culture.">
          3)robots(機器人向導)
            說明:robots用來告訴搜索機器人哪些頁面需要索引,哪些頁面不需要索引。
            content的參數有all,none,index,noindex,follow,nofollow。默認是all。
            舉例:
           <meta name="robots" content="none">
          4)author(作者)
            說明:標注網頁的作者
            舉例:
           <meta name="author" content="root,root@21cn.com">
          

          2、http-equiv屬性

          http-equiv顧名思義,相當于http的文件頭作用,它可以向瀏覽器傳回一些有用的信息,以幫助正確和精確地顯示網頁內容,與之對應的屬性值為content,content中的內容其實就是各個參數的變量值。

          meta標簽的http-equiv屬性語法格式是:

           <meta http-equiv="參數" content="參數變量值">
          

          其中http-equiv屬性主要有以下幾種參數:

          1)Expires(期限)
            說明:可以用于設定網頁的到期時間。一旦網頁過期,必須到服務器上重新傳輸。
            用法:
           <meta http-equiv="expires" content="Fri, 12 Jan 2001 18:18:18 GMT">
            注意:必須使用GMT的時間格式。
          2)Pragma(cache模式)
            說明:禁止瀏覽器從本地計算機的緩存中訪問頁面內容。
            用法:
           <meta http-equiv="Pragma" content="no-cache">
            注意:這樣設定,訪問者將無法脫機瀏覽。
          3)Refresh(刷新)
            說明:自動刷新并指向新頁面。
            用法:
           <meta http-equiv="Refresh" content="2;URL=http://www.root.net">(注意后面的引號,分別在秒數的前面和網址的后面)
            注意:其中的2是指停留2秒鐘后自動刷新到URL網址。
          4)Set-Cookie(cookie設定)
            說明:如果網頁過期,那么存盤的cookie將被刪除。
            用法:
           <meta http-equiv="Set-Cookie" content="cookievalue=xxx; expires=Friday, 12-Jan-2001 18:18:18 GMT; path=/">
            注意:必須使用GMT的時間格式。
          5)Window-target(顯示窗口的設定)
            說明:強制頁面在當前窗口以獨立頁面顯示。
            用法:
           <meta http-equiv="Window-target" content="_top">
            注意:用來防止別人在框架里調用自己的頁面。
          6)content-Type(顯示字符集的設定)
            說明:設定頁面使用的字符集。
            用法:
           <meta http-equiv="content-Type" content="text/html; charset=gb2312">
          7)content-Language(顯示語言的設定)
            用法:
           <meta http-equiv="Content-Language" content="zh-cn" />
          

          meta標簽的功能

          • 幫助主頁被各大搜索引擎登錄;
          • 定義頁面的使用語言
          • 自動刷新并指向新的頁面
          • 實現網頁轉換時的動畫效果
          • 控制頁面緩沖
          • 控制網頁顯示的窗口

          3、style中的屬性

          • font-size:數值px; 文字大小控制
          • color:#六進制的顏色值; 文字顏色控制
          • text-align:left/center/right; 文字的居左、居中、居右控制。

          標題標簽


          文章的段落用<p>標簽,那么文章的標題用什么標簽呢?下面我們將使用<hx>標簽來制作文章的標題。

          標題標簽一共有6個,h1、h2、h3、h4、h5、h6分別為一級標題、二級標題、三級標題、四級標題、五級標題、六級標題。并且依據重要性遞減。<h1>是最高的等級。

          語法:

          <hx>標題文本</hx> (x為1-6)
          

          文章的標題前面已經說過了,可以使用標題標簽,另外網頁上的各個欄目的標題也可使用它們。

          例如:

          <body>
           <h1>一級標題</h1>
           <h2>二級標題</h2>
           <h3>三級標題</h3>
           <h4>四級標題</h4>
           <h5>五級標題</h4>
          </body>
          

          HTML注釋


          代碼注釋的作用是幫助程序員標注代碼的用途,過一段時間后再看你所編寫的代碼,就能很快想起這段代碼的用途。代碼注釋不僅方便程序員自己回憶起以前代碼的用途,還可以幫助其他程序員很快的讀懂你的程序的功能,方便多人合作開發網頁代碼。

          <!--注釋文字 -->
          

          語義化


          標簽的用途:我們學習網頁制作時,常常會聽到一個詞,語義化。那么什么叫做語義化呢,說的通俗點就是:明白每個標簽的用途(在什么情況下使用此標簽合理)比如,網頁上的文章的標題就可以用標題標簽,網頁上的各個欄目的欄目名稱也可以使用標題標簽。文章中內容的段落就得放在段落標簽中,在文章中有想強調的文本,就可以使用 em 標簽表示強調等等。

          講了這么多語義化,但是語義化可以給我們帶來什么樣的好處呢?

          1. 更容易被搜索引擎收錄。
          2. 更容易讓屏幕閱讀器讀出網頁內容。

          后面會帶領大家學習了解html中每個標簽的語義(用途)。

          喜歡前端的小伙伴們可以在評論區留言,尋找和小馮童鞋一樣熱愛前端的友人,讓我們一起玩轉前端的世界!

          、 結構

          一、標記<Html> 建立HTML文檔

          <Head> 設置網頁頭部和其它信息

          <Body> 設計文件格式及內文所在<Body> 元素的屬性

          Text 設置頁面文字的送顔色 Bgcolor 設置頁面背景的顡色

          Background 設置頁面的背景圖像 Link設置頁面黙認的顔色

          Bgproperties 設置頁面的背景圖像為固定,不隨頁面的滾動而滾動

          Alink 設置鼠標正在單擊時候的鏈接顔色 Vlink 設置訪問過后的鏈接顔色

          Topmargin 設置頁面的上邊距 Leftmargin 設置頁面的左邊距

          二、頭部

          標記 <Base> 當前文檔的URL全稱 <Title>設置顯示在瀏覽器在上方的標題內容

          <Isindex> 表明該文檔是一個可用于檢索的網關腳本

          <Meta> 有關文檔本身的信息,例如用于查詢的關鍵詞,用于獲取該文檔的有效期等

          <Style> 設置CSS層疊樣式表的內容

          <link> 設置外部文件的鏈接 <script> 設置頁面中程序腳本的內容

          <Mate> 標記屬性

          Http-Equiv 生成一個HTTP標題域,它的取值與另一個屬性相同,

          例如Http-Equiv=Expires,實際取值由Content確定

          Name 如果元數據是以關鍵字/取值的形式出現的,Name 表示鍵字,

          如Author或ID

          Content 關鍵字/取值的內容

          三、文字

          文字標記 <HNumber>……<1HNumber> Number=1.2.3.4.5.6

          分別指1至6級標題

          <Font>文字

          文字的修飾標記 <B>/<strong> 粗體 <I>/<Em>/<cite> 斜體

          <Sup>上標 <sub>下標 <Big>大字號 <small>小字號

          <U>下劃線 <S>/<strike>刪除線 <Address>地址

          <Tt>打字機文字 <Blink>閃爍文字(只適用于Netscape瀏覽器)

          <Code>/<samp>等寬 <kbd>鍵盤輸入文字 <Var>聲明變量

          <Fant>標記的屬性

          Face 字體 Size字號 Color顔色

          四.列表

          列表標記 <Ul>無序列表 <Ol>有序列表 <Dir>回錄列表 <Dl>定義列表

          <Meru>菜單列表 <Dt>·<Dd>定義列表的標記 <Li>列表項目的標記

          <Ul><Ol>標記的屬性 Type設置列表類型 start設置列表起始屬性

          Type的屬性值 1 數字 a 小寫字母 A 大寫字母 i小寫羅馬數字

          I 大寫羅馬數字 Disc ● Circle ○ square □

          五.鏈接

          鏈接標記 <A> 鏈接

          <A>標記的屬性 Href 指定鏈接地址 Name給鏈接命名

          Title設置鏈接提示文字 Target指定鏈接的目標窗口

          Target屬性值 -parent在上一級窗口中打開。一般使用分幀的框架頁會經常使用

          -bank在新窗口中打開

          -self在同一個幀或窗口中打開.這項一般不用設置

          Href屬性值 http:// 進入萬維網站點 news://啟動新聞討論

          ftp:// 進入文件傳輸服務器 mailto:// 啟動新聞討論組

          telnet:// 啟動telnet方式 gopher://訪問一個gopher服務器

          六.圖片

          圖片標記 <Img>圖片 <Map>圖像映射 <Area>圖像映射中定義區域

          <lmg>標記的屬性 src圖像的源文件 Alt提示文字 Width寬度

          Height高度 Vspace垂直間距 Hspace水平間距 Align排列 Border邊框

          Align屬性值 Top文字的中間線居于圖片上方 Middle文字的中間線居于圖片中間

          Bottom文字的中間線居于圖片底部 Left 圖片在文字的左側

          Right圖片在文字的右側 Absbottom文字的底線居于圖片底部

          Absmiddle文字的底線居于圖片中間 Baseline英文文字基線對齊

          Texttop英文文字上邊線對齊

          Shape屬性值

          Rect矩形區域 Circle橢圓形區域 Poly多邊形區域

          七.表格

          1.表格標記 <Table>…</Table>表格標記 <Tr>…</Tr>行標記

          <Td>…</Td>單元格標記 <Th>表頭標記

          <Table>標記屬性 Bordercolor 表格邊框色 Borde表格邊框的寬度

          Bordercolorlight 表格邊框亮邊框色(左上邊框顔色)

          Bordercolordark 表格暗邊框色(右下邊框顔色)

          Bordercolor 行的邊框顔色 Width表格的寬度 Height表格的高度

          Bgcolor表格的背景顔色 Background表格的背圖像

          <Tr>標記屬性 Align行內容的水平對齊 Valign 行內容的垂直對齊

          Bgcolor 行的背景顔色 Background 行的背景圖像

          Bordercolor 行的邊框顔色 Bordercolorlight 行的亮邊框顔色

          Bordercolordark 行的暗邊框顔色

          <Td>標記屬性 Align單元內容的水平對齊 Valign單元格內容的垂直對齊

          Bgcolor 單元格的背景顔色 Background 單元格的背景圖像

          Bordercolor單元格的背景顔色 Bordercorlorlight單元格的亮邊框顔色

          Brodercolordark 單元格的暗邊框顔色 Width 單元格的寬度

          Height單元格的高度

          <Th>標記屬性 Align表頭內容的水平對齊 Valign表頭內容的垂直對齊

          Bgcolor 表頭的背景顔色 Background表頭的背景圖像

          Bordercolor表頭的邊框顔色 Bordercolorlight 表頭的亮邊框顔色

          Bordercolordark 表頭的暗邊框顔色 Width 表頭的寬度 Height 表頭的高度

          八.表單

          1.表單標記 <Form>表單標記 <Input>表單輸入標記

          <select>菜單和列表標記 <Option>菜單和列表項目標記

          2.屬性 <Form> Name表單的名稱

          Method 定義表單結果從瀏覽器傳送到服務器的方法,一般有兩種方法:get,post

          Action 用來定義表單處理程序(一個Asp,CGI等程序)的位置(相對地址或絕對地址)

          <lnput>標記屬性 Name 域的名稱 Type域的類型

          Maxlength 域的最大輸入字符數 size域的寬度 Value 域的默認值

          <Select>標記屬性 Name 菜單和列表的名稱 size 顯示的選項數目

          Multiple 列表中的項目多選 Value 選項值 selected默認選項

          <Texrarea>標記屬性 Name 文字域的名稱 Rows文字域的行數

          Cols 文字域的列數 Value 文字域的默認值

          Type屬性值 Text 文字域 Password 密碼域 File 文件域

          Checkbox復選框 Redio單選框 Button普通按扭

          Submit 提交按鈕 Reset重置按鈕 Hidden隱藏域Image圖像域

          九.滾動

          滾動標記 <Marquee>

          <Marquee>標記屬性 Direction 滾動方向 up 文字向上滾動 Left文字向左滾動

          Behavior 滾動方式 Scroll 循環往復

          Side 只做一次滾動

          Alternate 交替進行滾動

          ScrollAmount 滾動速度

          ScrollDelay 滾動延遲

          Trim函數用來剔除首尾空格

          十.框架

          1.標記 <Frameset> 框架邊框標記 <Frame> 框架標記 <Iframe>浮動框架標記

          <Frameset>標記屬性 Cols列 Rows行

          <Frame> 標記屬性 src框架中顯示頁面源文件的路徑

          FrameBorder 框架邊框顯標屬性 FrameSpacing框架邊框寬度屬性

          Scrolling框架滾動條顯示屬性 NoResize 框架尺寸調整屬性

          BorderColor 框架邊框顔色屬性 MarginWidt 框架邊框緣寬度屬性

          MarginHerght框架邊緣高度屬性

          <1frame> 標記屬性 src浮動框架中顯示頁面源文件的路徑

          Width 浮動框架的寬度 Height 浮動框架的高度

          Name 浮動框架的名稱

          Align 浮動框架的排列方式 Left表示居左 Center表示居中 Right表示居右

          FrameBorder 框架邊框顯示屬性 FrameSpacing 框架寬度屬性

          Scrolling 框架滾動條顯示屬性 ( yes顯示 No不顯示 Auto根據頁面的長度自動判斷是否晶粒示滾動條

          NoResize 框架尺寸調整屬性 BorderColor框架的顔色

          MarginWidth 框架邊緣寬度屬性 MarginHeight 框架邊緣高度屬性

          插入刷新

          步驟:1.選擇"查看/文件頭內容"

          2.在插入面板上,打開HTML選項卡

          優化代碼

          打開文件窗口,執行"命令、清理HTML"命令

          文本換行:Enter 行距較大

          Enter + Shift 行距較小

          插入水平線設置顔色:單擊屬性面板中的快捷標簽編輯器按鈕

          在代碼中鍵入"color=#顔色值"

          當圖像無法顯示時將顯示這段文字:

          圖像屬性中的替代→輸入文字

          插入鼠標經過圖像:準備兩張圖像

          在文件窗口中,將光標放置于需要翻轉圖像位置→插入工具欄中單擊鼠標經過圖像

          Ⅱ.使用導航條:

          在"常用"對象組中,單擊"圖像"小三角→導航條

          插入圖像占位符:圖像小三角→圖像占位符

          Flash動畫的背景實現透明 參數wmode 值 transparent

          插入 Java Applet

          插入表單

          插入表單域:對象面板上"表單"→插入表單

          插入文本域:單擊面板上的插入文本域. 初始值=打開時顯于的文字

          插入密碼框:在屬性面板上選擇密碼

          插入多行文本域:在類型后選擇多行

          插入隱藏域:對象面板→插入隱藏域

          插入按鈕:標簽用來設置按鈕上顯示的文本

          插入圖像提交按鈕=圖像域:

          插入文件上傳按鈕=文件域:

          插入單選框

          插入單選按鈕組:Label文字說明 Value 單選按鈕的值

          插入復選框

          菜單/插入列表:列表值→

          插入跳轉菜單:(

          制作網頁鏈接

          URL統一資源定位器

          目標:_blank在一個新的未命名的瀏覽器窗口中打開

          _parent如果是嵌套的框架,鏈接會在父框架或窗口中打開,否則=_top

          _top在完整的瀏覽器中打開

          創建搜索頁

          運行中輸入:

          Inetmgr (IIS

          Odbcad32 (odbc

          Asp對象

          Applicatipn 在給定的應用程序的所有用戶間共享信息,并在服務器運行期間持久地保存數據。

          集合: Contents

          staticObjects

          Item(變量值)=設置資料變量的值

          Key(變量名稱)=設置資料變量的名稱

          Count(變量資料的數量)=表示

          Coutents集合中資料的總數量

          方法: Lock

          Unlock

          事件: Applicatipn_Onstart

          Application_OnEnd

          Session 存儲特定的用戶會話所需的信息

          屬性:CodePage

          LCID

          SessionID

          Timeout

          集合:Contents

          StaticObjects

          方法:Abandon

          事件:Session_Onstart

          Session_OnEnd

          Response 用來控制發送給用戶的信息,包括直接發送信息給瀏覽器,重定位瀏覽器到另一個URL或設置Cookie值

          屬性: Buffer

          CacheControl

          Charset

          ContentType

          Expires

          ExpiresAbsolute

          IsClientConnected

          PICS

          Status

          集合: Cookies

          方法: AddHeader

          AppendToLog

          BinaryWrite

          Clear

          End

          Flush

          Redirect

          Write

          Request 訪問任何基于HTTP請求傳遞的信息,常見的有從HTML表單用Post方法或Get方法傳遞的參數,Cookie或用戶認證等。

          屬性: TotalBytes

          集合: ClientCertificate

          Cookies

          Form

          QueryString

          ServerVaiables

          方法: BinaryRead

          Server 提供對服務器方法和屬性的訪問

          屬性: ScriptTimeout

          集合: 無

          方法: CreatObject

          HTMLEncode

          MapPath

          URLEncode

          Recordset

          MoveNext 將前數據記錄移至下一條

          MovePrevious 將當前數據記錄移至上一條

          MoveFirst 將當前數據記錄移至第一條

          MoveLast 將當前數據記錄移至最后一條

          AbsolutePosition=N 將當前數據記錄移至第N條

          EOF 當前數據記錄是否移過了最后一條(發生于向下移動時)

          BOF 當前數據記錄是否移過了第一條 (發生于向上移動時)

          VBScript 運算符

          算術運算符

          指數 取負 乘法 除法 加法 減法 取模 連接 整數除法

          ∧ - * / ﹢ ﹣ Mod & \

          比較運算符

          相等 不相等 小于 大于 小于或等于 大于或等于 對象相象

          =<> < > <=>=IS

          邏輯運算符

          邏輯非 邏輯與 邏輯或 異或 邏輯等于 邏輯蘊含

          Not And Or Xor Eqv Imp

          生苦短,我用 Python


          如果我的文章對您有幫助,請關注支持下作者的公眾號:極客挖掘機,您的關注,是對小編堅持原創的最大鼓勵:)

          前文傳送門:

          小白學 Python 爬蟲(1):開篇

          小白學 Python 爬蟲(2):前置準備(一)基本類庫的安裝

          小白學 Python 爬蟲(3):前置準備(二)Linux基礎入門

          小白學 Python 爬蟲(4):前置準備(三)Docker基礎入門

          小白學 Python 爬蟲(5):前置準備(四)數據庫基礎

          小白學 Python 爬蟲(6):前置準備(五)爬蟲框架的安裝

          小白學 Python 爬蟲(7):HTTP 基礎

          先贊后看是個好習慣

          網頁的組成

          我們的數據來源是網頁,那么我們在真正抓取數據之前,有必要先了解一下一個網頁的組成。

          網頁是由 HTML 、 CSS 、JavaScript 組成的。

          HTML 是用來搭建整個網頁的骨架,而 CSS 是為了讓整個頁面更好看,包括我們看到的顏色,每個模塊的大小、位置等都是由 CSS 來控制的, JavaScript 是用來讓整個網頁“動起來”,這個動起來有兩層意思,一層是網頁的數據動態交互,還有一層是真正的動,比如我們都見過一些網頁上的動畫,一般都是由 JavaScript 配合 CSS 來完成的。

          我們打開 Chrome 瀏覽器,訪問博客站的首頁,打開 F12 開發者工具,可以看到:

          在選項 Elements 中可以看到網頁的源代碼,這里展示的就是 HTML 代碼。

          不同類型的文字通過不同類型的標簽來表示,如圖片用 <img> 標簽表示,視頻用 <video> 標簽表示,段落用 <p> 標簽表示,它們之間的布局又常通過布局標簽 <div> 嵌套組合而成,各種標簽通過不同的排列和嵌套才形成了網頁的框架。

          在右邊 Style 標簽頁中,顯示的就是當前選中的 HTML 代碼標簽的 CSS 層疊樣式,“層疊”是指當在HTML中引用了數個樣式文件,并且樣式發生沖突時,瀏覽器能依據層疊順序處理。“樣式”指網頁中文字大小、顏色、元素間距、排列等格式。

          而 JavaScript 就厲害了,它在 HTML 代碼中通常使用 <script> 進行包裹,可以直接書寫在 HTML 頁面中,也可以以文件的形式引入。

          網頁結構

          我們來手寫一個簡單 HTML 頁面來感受下。

          首先創建一個文本文件,將后綴名改為 .html ,名字可以自取,寫入如下內容:

          <!DOCTYPE html>
          <html>
           <head>
           <meta charset="UTF-8">
           <title>Demo</title>
           </head>
           <body>
           <div id="container">
           <div class="wrapper">
           <h1>Hello World</h1>
           <div>Hello Python.</div>
           </div>
           </div>
           </body>
          </html>
          

          首先,整個文檔是以 DOCTYPE 來開頭的,這里定義了文檔類型是 html ,整個文檔最外層的標簽是 <html> ,并且結尾還以 </html> 來表示閉和。

          這里簡單講一下,瀏覽器解析 HTML 的時候,并不強制需要每個標簽都一定要有閉和標簽,但是為了語義明確,最好每個標簽都跟上對應的閉和標簽。各位同學可以嘗試刪除其中的閉和標簽進行嘗試,并不會影響瀏覽器的解析。

          整個 HTML 文檔一般分為 head 和 body 兩個部分,在 head 頭中,我們一般會指定當前的編碼格式為 UTF-8 ,并且使用 title 來定義網頁的標題,這個會顯示在瀏覽器的標簽上面。

          body 中的內容一般為整個 html 文檔的正文,這里小編簡單寫了幾個 div 的嵌套。

          這個頁面的顯示如下:

          HTML DOM

          在 HTML 中,所有標簽定義的內容都是節點,它們構成了一個 HTML DOM 樹。

          根據 W3C 的 HTML DOM 標準,HTML 文檔中的所有內容都是節點:

          • 整個文檔是一個文檔節點
          • 每個 HTML 元素是元素節點
          • HTML 元素內的文本是文本節點
          • 每個 HTML 屬性是屬性節點
          • 注釋是注釋節點

          HTML DOM 將 HTML 文檔視作樹結構。這種結構被稱為節點樹:

          通過 HTML DOM,樹中的所有節點均可通過 JavaScript 進行訪問。所有 HTML 元素(節點)均可被修改,也可以創建或刪除節點。

          節點樹中的節點彼此擁有層級關系。

          父(parent)、子(child)和同胞(sibling)等術語用于描述這些關系。父節點擁有子節點。同級的子節點被稱為同胞(兄弟或姐妹)。

          • 在節點樹中,頂端節點被稱為根(root)
          • 每個節點都有父節點、除了根(它沒有父節點)
          • 一個節點可擁有任意數量的子
          • 同胞是擁有相同父節點的節點

          下面的圖片展示了節點樹的一部分,以及節點之間的關系:

          CSS

          前面我們介紹到 CSS 可以用來美化網頁,那么我們簡單加一點 CSS 修改下頁面的顯示效果。

          <!DOCTYPE html>
          <html>
           <head>
           <meta charset="UTF-8">
           <title>Demo</title>
           <style type="text/css">
           .wrapper {
           text-align: center;
           }
           </style>
           </head>
           <body>
           <div id="container">
           <div class="wrapper">
           <h1>Hello World</h1>
           <div>Hello Python.</div>
           </div>
           </div>
           </body>
          </html>
          

          我們在 head 中添加了 style 標簽,并注明其中的內容解析方式為 CSS 。其中的內容的含義是讓文本居中顯示,先看下增加 CSS 后的頁面效果吧:

          可以看到,原來居左的文字已經居中顯示了。

          那么,CSS 是如何表示它要修飾的文檔結構的呢?這就要說到 CSS 選擇器了。

          在CSS中,我們使用CSS選擇器來定位節點。例如,上例中 div 節點的 id 為 container ,那么就可以表示為 #container ,其中 # 開頭代表選擇 id ,其后緊跟 id 的名稱。另外,如果我們想選擇 class 為 wrapper 的節點,便可以使用 .wrapper ,這里以點 . 開頭代表選擇 class ,其后緊跟 class 的名稱。

          另外, CSS 選擇器還支持嵌套選擇,各個選擇器之間加上空格分隔開便可以代表嵌套關系,如 #container .wrapper p 則代表先選擇 id 為 container 的節點,然后選中其內部的 class 為 wrapper 的節點,然后再進一步選中其內部的 p 節點。另外,如果不加空格,則代表并列關系,如 div#container .wrapper p.text 代表先選擇 id 為 container 的 div 節點,然后選中其內部的 class 為 wrapper 的節點,再進一步選中其內部的 class 為 text 的 p 節點。這就是 CSS 選擇器,其篩選功能還是非常強大的。

          參考

          https://www.w3school.com.cn/htmldom/dom_nodes.asp

          https://cuiqingcai.com/5476.html


          主站蜘蛛池模板: 白丝爆浆18禁一区二区三区 | 亚洲Av高清一区二区三区| 一区二区在线电影| aⅴ一区二区三区无卡无码| 日韩成人无码一区二区三区| 精品久久一区二区| 中文字幕亚洲乱码熟女一区二区| 波多野结衣一区二区免费视频| 91精品一区二区综合在线| 日本一区精品久久久久影院| 久久影院亚洲一区| 国产一区二区三区免费观在线| 一区二区三区在线免费| 视频一区二区在线播放| 国产成人无码精品一区不卡| 国产精品视频免费一区二区| 亚洲AV成人一区二区三区观看 | 一区五十路在线中出| 国产精品资源一区二区| 日本一区二区三区在线看| 日韩久久精品一区二区三区| 国产精品视频免费一区二区三区| 国产精品盗摄一区二区在线| 国产在线观看精品一区二区三区91| 日韩精品一区二区三区国语自制| 欧美日韩精品一区二区在线观看| 无码人妻精品一区二区三区不卡 | 日韩视频一区二区在线观看| 国产精品无码一区二区三区免费| 国产亚洲综合精品一区二区三区| 人妻内射一区二区在线视频| 中文字幕一区二区人妻| 色婷婷一区二区三区四区成人网 | 久久亚洲一区二区| 亚洲AV无码一区二区三区在线 | 久久99国产精品一区二区| 一区二区视频在线播放| 糖心vlog精品一区二区三区| 后入内射国产一区二区| 精品免费久久久久国产一区 | 福利一区在线视频|