第二階段:Html基礎 day49 前端--Html基礎知識

前端之htmlhtml

1.html介紹

1.1 web服務本質

瀏覽器發請求 --> HTTP協議 --> 服務端接收請求 --> 服務端返回響應 --> 服務端把HTML文件內容發給瀏覽器 --> 瀏覽器渲染頁面前端

python中的一個小案例:python

程序代碼:web

import socket


sk = socket.socket()

sk.bind(("127.0.0.1", 8080))
sk.listen(5)


while True:
    conn, addr = sk.accept()
    data = conn.recv(8096)
    conn.send(b"HTTP/1.1 200 OK\r\n\r\n")
    conn.send(b"<h1>Hello world!</h1>")
    conn.close()

實現效果:編程

經過瀏覽器訪問咱們的地址,能夠訪問這樣一個界面瀏覽器

1.2 html是什麼

  • 超文本標記語言(Hypertext Markup Language, HTML)是一種用於建立網頁的標記語言。
  • 本質上是瀏覽器可識別的規則,咱們按照規則寫網頁,瀏覽器根據規則渲染咱們的網頁。對於不一樣的瀏覽器,對同一個標籤可能會有不一樣的解釋。(兼容性問題)
  • 網頁文件的擴展名:.html或.htm

注意:html是標記語言,可是它不是編程語言。它只能夠使用標籤來描述網頁。服務器

1.3 html文檔結構

一個最基本的html文檔socket

<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <title>css樣式優先級</title>
</head>
<body>

</body>
</html>
  1. <!DOCTYPE html>聲明爲HTML5文檔。編程語言

  2. 是文檔的開始標記和結束的標記。是HTML頁面的根元素,在它們之間是文檔的頭部(head)和主體(body)。

  3. 定義了HTML文檔的開頭部分。它們之間的內容不會在瀏覽器的文檔窗口顯示。包含了文檔的元(meta)數據。

  4. 定義了網頁標題,在瀏覽器標題欄顯示。

  5. 之間的文本是可見的網頁主體內容。

*注意:對於中文網頁須要使用 聲明編碼,不然會出現亂碼。有些瀏覽器會設置 GBK 爲默認編碼,則你須要設置爲

1.4 html標籤格式

  • HTML標籤是由尖括號包圍的關鍵字,如,
  • HTML標籤一般是成對出現的,好比:
    ,第一個標籤是開始,第二個標籤是結束。結束標籤會有斜線。
  • 也有一部分標籤是單獨呈現的,好比:

    等。
  • 標籤裏面能夠有若干屬性,也能夠不帶屬性。

標籤的語法:

  • <標籤名 屬性1="「屬性值1」" 屬性2="「屬性值2」……"> 內容部分
  • <標籤名 屬性1="「屬性值1」" 屬性2="「屬性值2」……" />

幾個很重要的屬性:

  • id:定義標籤的惟一ID,HTML文檔樹中惟一
  • class:爲html元素定義一個或多個類名(classname)(CSS樣式類名)
  • style:規定元素的行內樣式(CSS樣式)

1.5 html註釋

<!--被註釋的內容-->

1.6 標籤

<!DOCTYPE> 聲明必須是 HTML 文檔的第一行,位於 標籤以前。

<!DOCTYPE> 聲明不是 HTML 標籤;它是指示 web 瀏覽器關於頁面使用哪一個 HTML 版本進行編寫的指令。

2 html經常使用標籤

2.1 head內經常使用標籤

標籤 意義
定義網頁標題
定義內部樣式表
定義JS代碼或引入外部JS文件
引入外部樣式表文件或網站圖標
定義網頁原信息

Meta標籤

Meta標籤介紹:

  • 元素可提供有關頁面的元信息(mata-information),針對搜索引擎和更新頻度的描述和關鍵詞。
  • 標籤位於文檔的頭部,不包含任何內容。
  • 提供的信息是用戶不可見的。

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

1.http-equiv屬性:至關於http的文件頭做用,它能夠向瀏覽器傳回一些有用的信息,以幫助正確地顯示網頁內容,與之對應的屬性值爲content,content中的內容其實就是各個參數的變量值。

<!--指定文檔的編碼類型(須要知道)-->

<meta http-equiv="content-Type" charset=UTF8">

<!--2秒後跳轉到對應的網址,注意引號(瞭解)-->

<meta http-equiv="refresh" content="2;URL=https://www.oldboyedu.com">

<!--告訴IE以最高級模式渲染文檔(瞭解)-->

<meta http-equiv="x-ua-compatible" content="IE=edge">

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

<meta name="keywords" content="meta總結,html meta,meta屬性,meta跳轉">
<meta name="description" content="老男孩教育Python學院">

2.2 body內經常使用標籤

基本標籤

<b>加粗</b>
<i>斜體</i>
<u>下劃線</u>
<s>刪除</s>
 
<p>段落標籤</p>
 
<h1>標題1</h1>
<h2>標題2</h2>
<h3>標題3</h3>
<h4>標題4</h4>
<h5>標題5</h5>
<h6>標題6</h6>
 
<!--換行-->
<br>
 
<!--水平線--><hr>

div標籤和span標籤

div標籤用來定義一個塊級元素,並沒有實際的意義。主要經過CSS樣式爲其賦予不一樣的表現。
span標籤用來定義內聯(行內)元素,並沒有實際的意義。主要經過CSS樣式爲其賦予不一樣的表現。

塊級元素與行內元素的區別:
所謂塊元素,是以另起一行開始渲染的元素,行內元素則不需另起一行。若是單獨在網頁中插入這兩個元素,不會對頁面產生任何的影響。
這兩個元素是專門爲定義CSS樣式而生的。

注意:

關於標籤嵌套:一般塊級元素能夠包含內聯元素或某些塊級元素,但內聯元素不能包含塊級元素,它只能包含其它內聯元素。

p標籤不能包含塊級標籤,p標籤也不能包含p標籤。

經常使用標籤

  • a標籤

超連接標籤

所謂的超連接是指從一個網頁指向一個目標的鏈接關係,這個目標能夠是另外一個網頁,也能夠是相同網頁上的不一樣位置,還能夠是一個圖片,一個電子郵件地址,一個文件,甚至是一個應用程序。

<a href="http://www.baidu.com" target="_blank" >百度網址</a>

href屬性指定目標網頁地址。

target:_blank表示在新標籤頁中打開目標網頁,_self表示在當前標籤頁中打開目標網頁

  • 列表

    • 無序列表

      <ul type="disc">
        <li>第一項</li>
        <li>第二項</li>
      </ul>

      type屬性:

      • disc(實心圓點,默認值)
      • circle(空心圓圈)
      • square(實心方塊)
      • none(無樣式)
    • 有序列表

      <ol type="1" start="2">
         <li>第一項</li>
         <li>第二項</li>
      </ol>

      type屬性:

      • 1 數字列表,默認值
      • A 大寫字母
      • a 小寫字母
      • Ⅰ大寫羅馬
      • ⅰ小寫羅馬
    • 標題列表

      <dl>
        <dt>標題1</dt>
          <dd>內容1</dd>
        <dt>標題2</dt>
          <dd>內容1</dd>
          <dd>內容2</dd>
      </dl>
  • 表格

    表格是一個二維數據空間,一個表格由若干行組成,一個行又有若干單元格組成,單元格里能夠包含文字、列表、圖案、表單、數字符號、預置文本和其它的表格等內容。
    表格最重要的目的是顯示錶格類數據。表格類數據是指最適合組織爲表格格式(即按行和列組織)的數據。
    表格的基本結構:

    <table>
      <thead>
        <tr>
          <th>序號</th>
          <th>姓名</th>
          <th>愛好</th>
        </tr>
      </thead>
      <tbody>
    <tr>
           <td>1</td>
            <td>Egon</td>
           <td>槓娘</td>
         </tr>
    <tr>
            <td>2</td>
           <td>Yuan</td>
                <td>日天</td>
          </tr>
        </tbody>
    </table>

    屬性:

    • border: 表格邊框.
    • cellpadding: 內邊距
    • cellspacing: 外邊距.
    • width: 像素 百分比.(最好經過css來設置長寬)
    • rowspan: 單元格豎跨多少行
    • colspan: 單元格橫跨多少列(即合併單元格)
  • form表單

    功能:

    表單用於向服務器傳輸數據,從而實現用戶與Web服務器的交互

    表單可以包含input系列標籤,好比文本字段、複選框、單選框、提交按鈕等等。

    表單還能夠包含textarea、select、fieldset和 label標籤。

    表單屬性

    屬性 描述
    accept-charset 規定在被提交表單中使用的字符集(默認:頁面字符集)。
    action 規定向何處提交表單的地址(URL)(提交頁面)。
    autocomplete 規定瀏覽器應該自動完成表單(默認:開啓)。
    enctype 規定被提交數據的編碼(默認:url-encoded)。若是是上傳文件須要將enctype="multipart/form-data"
    method 規定在提交表單時所用的 HTTP 方法(默認:GET)。
    name 規定識別表單的名稱(對於 DOM 使用:document.forms.name)。
    novalidate 規定瀏覽器不驗證表單。
    target 規定 action 屬性中地址的目標(默認:_self)。

    表單元素

    基本概念:
    HTML表單是HTML元素中較爲複雜的部分,表單每每和腳本、動態頁面、數據處理等功能相結合,所以它是製做動態網站很重要的內容。
    表單通常用來收集用戶的輸入信息
    表單工做原理:
    訪問者在瀏覽有表單的網頁時,可填寫必需的信息,而後按某個按鈕提交。這些信息經過Internet傳送到服務器上。
    服務器上專門的程序對這些數據進行處理,若是有錯誤會返回錯誤信息,並要求糾正錯誤。當數據完整無誤後,服務器反饋一個輸入完成的信息。

    • input標籤

      元素會根據不一樣的 type 屬性,變化爲多種形態。

      type屬性值 表現形式 對應代碼
      text 單行輸入文本
      password 密碼輸入框
      date 日期輸入框
      checkbox 複選框
      radio 單選框
      submit 提交按鈕
      reset 重置按鈕
      button 普通按鈕
      hidden 隱藏輸入框
      file 文本選擇框

      屬性說明:

      • name:表單提交時的「鍵」,注意和id的區別
      • value:表單提交時對應項的值
        • type="button", "reset", "submit"時,爲按鈕上顯示的文本年內容
        • type="text","password","hidden"時,爲輸入框的初始值
        • type="checkbox", "radio", "file",爲輸入相關聯的值
      • checked:radio和checkbox默認被選中的項
      • readonly:text和password設置只讀
      • disabled:全部input均適用
    • select標籤

      <form action="" method="post">
        <select name="city" id="city">
          <option value="1">北京</option>
          <option selected="selected" value="2">上海</option>
          <option value="3">廣州</option>
          <option value="4">深圳</option>
        </select>
      </form>

      屬性說明:

      • multiple:布爾屬性,設置後爲多選,不然默認單選
      • disabled:禁用
      • selected:默認選中該項
      • value:定義提交時的選項值
    • label標籤

      定義:

      1. label 元素不會向用戶呈現任何特殊效果。
      <form action="">
        <label for="username">用戶名</label>
        <input type="text" id="username" name="username">
      </form>
    • textarea多行文本

      <textarea name="memo" id="memo" cols="30" rows="10"> 默認內容 </textarea>

      屬性說明:

      • name:名稱
      • rows:行數
      • cols:列數
      • disabled:禁用

2.2 標籤的總結

塊級元素:塊級大多爲結構性標記

<h1>...</h1>  標題一級

  <h2>...</h2>  標題二級

  <h3>...</h3>  標題三級

  <h4>...</h4>  標題四級

  <h5>...</h5>  標題五級

  <h6>...</h6>  標題六級

  <hr>  水平分割線

  <p>...</p>  段落

  <ul>...</ul>  無序列表

  <ol>...</ol>  有序列表

  <dl>...</dl>  定義列表

  <table>...</table>  表格

  <form>...</form>  表單

  <div>...</div>

行內元素:行內大多爲描述性標記

<span>...</span>

  <a>...</a>  連接

  <br>  換行

  <b>...</b>  加粗

  <strong>...</strong>  加粗

  <img >  圖片

  <i>...</i>  斜體

  <em>...</em>  斜體

  <del>...</del>  刪除線

  <u>...</u>  下劃線

  <input>...</input>  文本框

  <textarea>...</textarea>  多行文本

  <select>...</select>  下拉列表

塊級元素

1.老是重新的一行開始

2.高度、寬度都是可控的

3.寬度沒有設置時,默認爲100%

4.塊級元素中能夠包含塊級元素和行內元素

行內元素

1.和其餘元素都在一行

2.高度、寬度以及內邊距都是不可控的

3.寬高就是內容的高度,不能夠改變

4.行內元素只能行內元素,不能包含塊級元素

相關文章
相關標籤/搜索