HTML入門-Java工程師必會的前端知識(1)_HTML

文章目錄

  • Java Web概覽
  • HTML核心知識點總結
  • 一、HTML基礎概念
  • 1.1 HTML文檔基本結構
  • 1.2 HTML標籤特點
  • 二、常用HTML標籤
  • 2.1 文本標籤
  • 2.2 鏈接與圖像
  • 綜合示例
  • 2.3 列表標籤
  • 2.4 表格標籤
  • 2.5 表單標籤
  • 三、HTML5新增特性
  • 3.1 語義化標籤
  • 3.2 媒體標籤
  • 3.3 其他新增特性
  • 四、學習資源推薦

Java Web概覽

HTML入門-Java工程師必會的前端知識(1)_HTML_02

HTML核心知識點總結

一、HTML基礎概念

HTML入門-Java工程師必會的前端知識(1)_表單_03

1.1 HTML文檔基本結構

一個標準的HTML文檔結構如下:

<!DOCTYPE html> <!--文檔類型聲明標籤 -->
    <html lang="zh-CN"> <!-- 定義語言的種類 en為English zh-CN為中文 -->
    <head>
        <meta charset="UTF-8"> <!-- 用於保存文字,不寫會亂碼-->
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>HTML基礎標籤</title>
        </head>
        <body>
          <!-- 頁面內容 -->
          </body>
        </html>
  • <!DOCTYPE html>:聲明文檔類型為HTML5
  • <html>:根元素,包含整個HTML文檔
  • <head>:包含文檔的元數據(如字符集、標題等)
  • <body>:包含網頁的可見內容

1.2 HTML標籤特點

  • 大多數標籤成對出現,如<p></p>
  • 部分標籤是自閉合的,如<img><input><br>
  • 標籤可以嵌套,但不能交叉嵌套
  • 標籤名不區分大小寫,但推薦使用小寫

二、常用HTML標籤

2.1 文本標籤

  • <h1>-<h6>:標題標籤,h1級別最高,h6級別最低
  • <p>:段落標籤
  • <strong>/<b>:加粗文本,strong有語義強調
  • <em>/<i>:斜體文本,em有語義強調
  • <br>:換行標籤
  • <hr>:水平線標籤
  • <span>:行內元素,用於包裹部分文本,一行可以放多個 span
  • <del>/<s>:刪除線標籤,推薦用 del
  • <ins>/<u>:下劃線標籤,推薦用 ins
  • &nbsp:空格符號

示例:

<body>
<h1>一級標題</h1>
<h2>二級標題</h2>
<h3>三級標題</h3>
<h4>四級標題</h4>
<h5>五級標題</h5>
<h6>六級標題</h6>
<p>這是一個段落,這裏強制換行<br>包含<strong>加粗文本</strong>和<em>斜體文本</em></p>
  <hr>
    試驗空      格
    <hr>
      <!--<del>和<s>都為刪除標籤 推薦用<del>-->
      我是<del>刪除線</del>
      我是<s>刪除線</s>
        <!--<ins>和<u>都為下劃線標籤 推薦用<ins> -->
        我是<ins>下劃線</ins>
        我是<u>下劃線</u>
        </body>

顯示效果:

HTML入門-Java工程師必會的前端知識(1)_表單_04

2.2 鏈接與圖像

  • <a>:鏈接標籤,herf="跳轉目標的地址 target=“目標窗口的彈出方式”(默認為_self 當前窗口打開頁面 _blank 新窗口打開頁面)
  • <img>:圖像標籤,src屬性指定圖像路徑,alt屬性提供替代文本(圖片無法正常顯示時會使用文本),title屬性為設置提示文本:鼠標放到圖標上的文字,width屬性為圖像設定寬度,height屬性為圖像設定高度,border屬性為圖像設定邊框

示例:

<a href="" target="_blank">訪問CSDN</a>
<img src="../picture/背景2.jpg" alt="這是圖片無法正常顯示的替換文字" title="這是好看的風景" width="600" border="0" />

顯示效果:

HTML入門-Java工程師必會的前端知識(1)_html_05

綜合示例
<!DOCTYPE html> <!--文檔類型聲明標籤 -->
    <html lang="zh-CN"> <!-- 定義語言的種類 en為English zh-CN為中文 -->
    <head>
        <meta charset="UTF-8"> <!-- 用於保存文字,不寫會亂碼-->
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>HTML基礎標籤</title>
        </head>
        <body>
          <!--標題標籤 一共有六級 h1到h6-->
          <h1 id="top">標題標籤</h1>
          <h2>二級標題</h2>1234
            <!--錨點鏈接(href屬性設置為 #名字 的形式)(#對應空鏈接),點擊後快速跳轉到對應的id標記位置 我寫在了最後面-->
            <a href="#life">生活介紹</a>
              <!-- <br/>為強制換行標籤(break)只會簡單另起一行,不會有間隙-->
              <!--段落標籤存在間隙(段落與段落)-->
                <p>大家好我是<br />
              林曉然</p>
              <!--<strong>或<b>標籤為加粗 更推薦用<strong>標籤-->
              <p>這是一個<strong>段落</strong>標籤,加粗的<b>文字</b></p>
                <!-- <em>與<i>都為傾斜標籤 推薦用<em>-->
                我是<em>傾斜</em>的文字
                  我是傾斜的文字
                我是<i>傾斜</i>的文字
                  <!--<del>和<s>都為刪除標籤 推薦用<del>-->
                  我是<del>刪除線</del>
                  我是<s>刪除線</s>
                    <!--<ins>和<u>都為下劃線標籤 推薦用<ins> -->
                    我是<ins>下劃線</ins>
                    我是<u>下劃線</u>
                      <!--<div>標籤來佈局,就是一個大盒子,獨佔一行,每行只能放一個<div>-->
                      <div>我是一個div標籤,我一個人單獨佔一行</div>123
                      <div>我是一個div標籤,我一個人單獨佔一行</div>
                        <!--<span>標籤用來佈局(division),一行可以放多個<span>,小盒字(span--》跨度)-->
                        <span>我是一個span標籤</span>
                        <span>百度</span>
                        <span>新浪</span>
                        <span>微博</span>
                        <h2>圖像標籤的使用</h2>
                          <!--<img>標籤(單標籤)用於定義HTML頁面中的圖像 src是<img>標籤的必須屬性,用於指定圖像文件的路徑和文件名 alt圖片不能正常顯示時的替換文本(alternative)  title為提示文本,鼠標放到圖標上的文字 width為圖像設定寬度 height為圖像設定高度 border為圖像設定邊框-->
                            <img src="img1.jpg" alt="這是圖片無法正常顯示的替換文字" title="這是好看的風景" width="350" border="100" />
                            <br />
                            <img src="img2.jpg" alt="這是圖片無法正常顯示的替換文字" title="你好" />
                            <!--圖片在相對html文件所在位置的下一級目錄 若為上一級目錄則用../ -->
                              <img src="picture/img1.jpg" height="100" />
                              <!--絕對路徑(不推薦)-->
                                <img src="E:\WebTest\img1.jpg" height="100" />
                                <!--網絡上圖片的絕對路徑-->
                                  <img
                                    src="https://developer.mozilla.org/zh-CN/docs/Learn_web_development/Getting_started/Environment_setup/Command_line/glitch.png" />
                                  <!--超鏈接標籤<a herf="跳轉目標的地址 target="目標窗口的彈出方式"(默認為_self 當前窗口打開頁面 _blank 新窗口打開頁面)>(雙標籤)-->
                                  <h4>外部超鏈接</h4>
                                  <a href="http://www.qq.com" target="_blank">騰訊</a>
                                    <!--內部超鏈接-->
                                    <h4>內部超鏈接(網站內部之間的相互連接)</h4>
                                    <a href="web2/web2.html" target="_blank"> 內部跳轉</a>
                                      <!--空鏈接 用#代替地址(用於開發時先搭建好框架,先不考慮具體地址)-->
                                      <a href="#" target="_blank">公司地址</a>
                                        <!--下載連接 如果href裏面的地址是一個文件或者壓縮包,會下載這個文件-->
                                        <a href="img1.zip">下載鏈接</a>
                                          <!--其他網頁元素也可以進行超鏈接-->
                                          <a href="http://baidu.com" target="_blank"><img src="img1.jpg" width="100" /></a>
                                          <br />
                                          <!--空格符號   小於號< 大於號 >-->
                                          試驗空      格和<大於小於">>符號
                                          <!--錨點連接 使用id進行標記-->
                                          <h3 id="life">這是林曉然的生活簡介,噼裏啪啦一大堆省略。。。</h3>
                                          <a href="#top">返回頂部</a>
                                          </body>
                                        </html>

顯示效果:

HTML入門-Java工程師必會的前端知識(1)_表單_06

2.3 列表標籤

  • <ul>:無序列表
  • <ol>:有序列表
  • <li>:列表項

示例:

<!-- 無序列表 -->
  <ul>
  <li>項目1</li>
  <li>項目2</li>
  </ul>
  <!-- 有序列表 -->
    <ol>
    <li>第一步</li>
    <li>第二步</li>
    </ol>

顯示效果:

HTML入門-Java工程師必會的前端知識(1)_html_07

2.4 表格標籤

  • <table>:表格容器
  • <tr>:表格行 (table row)
  • <td>:表格單元格 (行中的每個單元格(數據)table data)
  • <th>:表頭單元格 (table head)
  • <thead><tbody><tfoot>:表格結構分區
  • cellpadding屬性規定單元邊沿與其內容之間的空白,默認1像素
  • cellspacing屬性規定單元格之間的空白,默認2像素
  • border屬性表示表格邊框的厚度
  • align表示整個表格的排放位置:left靠左,center居中,right靠右

示例:

<table align="left" border="10" cellpadding="20" cellspacing="0" width="300" height="50">
  <thead>
    <tr>
    <th>姓名</th>
    <th>性別</th>
    <th>年齡</th>
    </tr>
  </thead>
  <tbody>
    <tr>
    <td>立夏</td>
    <td>女</td>
    <td>18</td>
    </tr>
    <tr>
    <td>肖奈</td>
    <td>男</td>
    <td>18</td>
    </tr>
  </tbody>
</table>

顯示效果:

HTML入門-Java工程師必會的前端知識(1)_html_08

2.5 表單標籤

  • <form>:表單容器,會把它範圍內的表單元素提交給服務器

其核心屬性説明:

  • action:指定表單數據提交的 URL 地址
  • method:提交方式,主要有get和post兩種: get:數據會顯示在 URL 中,會暴露信息,適合簡單查詢(有長度限制);post:數據在請求體中傳輸,適合提交敏感信息或大量數據

type的常用屬性值:

type屬性值

説明/功能

典型應用場景

關鍵屬性示例

text

單行文本輸入(默認類型)

用户名、姓名等普通文本輸入

placeholder=“請輸入用户名”

password

密碼輸入(內容加密顯示)

密碼、驗證碼輸入

minlength=“6”

number

僅允許輸入數字

年齡、數量、身高體重等數值輸入

min=“0” max=“120” step=“1”

radio

單選按鈕(同組name值需相同)

屬性checked(屬性值只能為checked),作用為一打開界面就默認選中某個表單元素

性別、單選題等互斥選項選擇

name=“gender” checked

checkbox

複選框(可多選)

屬性checked(屬性值只能為checked),作用為一打開界面就默認選中某個表單元素

愛好、興趣等多選項選擇

name=“hobby” value=“reading”

date

日期選擇器(年/月/日)

生日、預約日期等日期輸入

——

file

文件上傳控件

頭像、文檔等文件上傳

accept=“image/*” multiple

email

郵箱格式輸入(自帶格式驗證)

郵箱地址輸入

placeholder=“example@mail.com”

submit

表單提交按鈕

提交表單數據

value=“提交”

reset

表單重置按鈕

清空表單內容

value=“重置”

select

下拉選擇框(需配合option使用)

城市、學歷等固定選項選擇

size=“1” multiple

textarea

多行文本輸入(當輸入內容可能過多時,就改text為textarea)

個人簡介、備註等長文本輸入

rows=“5” cols=“30” maxlength=“500”

解釋: rows=“初始顯示的行數”

   cols=“每行中的字符數”

button

普通按鈕

一般是結合JavaScript啓動腳本

value=“獲取驗證碼”

注意:

  1. 選擇類控件(radio/checkbox)需設置value值,提交時會將選中項的value發送到後端
  2. 同一組單選按鈕name值必須相同,才能實現互斥效果;複選框要設置相同name,提交時會以數組形式傳遞勾選的數據。

示例:

<form action="/submit" method="get" name="name1">
  <!-- text 文本框,可以輸入任何文字 此處的value值為input元素的初始默認值,會出現在文本框中 maxlength為文本框可輸入的最大長度-->
    用户名:<input type="text" name="username" value="請輸入用户名" maxlength="7" />
    <br />
    <!-- label標籤用於綁定一個表單元素,當點擊<label>標籤綁定的文本時,瀏覽器會自動將光標轉到或者選擇到對應的表單元素上,來增加用户體驗 -->
      <!-- label 裏用for="..."來指向對應的標籤 , 而標籤的創建則用id="。。。" -->
        label標籤測試--》
      <label for="aaa">用户名2</label><input type="text" id="aaa" />
    <label for="man">男士</label><input type="radio" id="man" />
    <br />
    <!-- password 密碼框,用户看不見輸入的密碼 -->
      密碼:<input type="password" />
      <br />
      <!-- radio 單選框(圓形), 注意name(表單元素的名字)的值要設置為一樣的才可實現單選 -->
        <!-- 此處的value 並不會出現在頁面中,主要作用是用户勾選並提交後將用户勾選的結果發送到後台 -->
          <!-- 還有屬性checked(屬性值只能為checked),它針對單選按鈕和複選框,作用為一打開界面就默認選中某個表單元素 -->
            男<input type="radio" name="sex" value="男" checked="checked" /> 女<input type="radio" name="sex" value="女" />
            <br />
            <!-- checkbox 複選框(正方形,可以單個用), 注意name的值也要設置為一樣 -->
              性格:活潑<input type="checkbox" name="personality" value="活潑" /> 開朗<input type="checkbox" name="personality" value="開朗"
              checked="checked" />陽光<input type="checkbox" name="personality" value="陽光" />
              <br />
              <!-- 普通按鈕 button ,一般是結合javaScript啓動腳本-->
                <input type="button" value="獲取驗證碼" />
                <br />
                <!-- file 實現選擇文件上傳功能 -->
                  上傳頭像:<input type="file" />
                  <br />
                  <!-- <select>為下拉列表 其至少包含一對<option> 在<option>中定義selected="selected"是,當前項即為默認選項 -->
                    籍貫:
                    <select>
                    <option>山東</option>
                    <option>北京</option>
                    <option>天津</option>
                    <option selected="selected">廣東</option>
                    <option>福建</option>
                    </select>
                    <br />
                    <!-- textarea標籤是用於定義多行文本輸入的控件,當輸入內容可能過多時,就改text為textarea -->
                      <!-- rows="初始顯示的行數" cols="每行中的字符數" 瞭解即可,在實際開發中不會使用,都是用CSS來改變大小-->
                        反饋留言:
                      <textarea rows="3" cols="20">我知道這個反饋留言是用textarea來做的</textarea>
                        <br />
                        <!-- 當點擊提交按鈕(submit的默認顯示文字為提交,可通過value更改顯示的文字)時,會把表單數據發送到服務端 -->
                          <input type="submit" value="火箭提交" />
                          <!-- reset重置按鈕(默認顯示文字為 重置,也可通過value修改、) -->
                            <input type="reset" />
                          </form>

顯示效果:

HTML入門-Java工程師必會的前端知識(1)_表單_09

三、HTML5新增特性

HTML5帶來了許多新特性,增強了網頁的功能和語義化:

3.1 語義化標籤

  • <header>:頁面頭部
  • <nav>:導航欄
  • <main>:主要內容
  • <article>:獨立文章內容
  • <section>:內容區塊
  • <aside>:側邊欄
  • <footer>:頁腳

語義化標籤的優勢:

  • 提高代碼可讀性
  • 有利於SEO優化
  • 方便屏幕閲讀器等輔助技術解析

3.2 媒體標籤

  • <video>:視頻播放
  • <audio>:音頻播放

示例:

<audio src="..\music\鄧壬鑫 - 這一秒只想在愛裏沉溺(治癒《戀愛の資格》日語唸白-溯 (Reverse).feat.mp3" controls width="400"></audio>

顯示效果:

HTML入門-Java工程師必會的前端知識(1)_HTML_10

3.3 其他新增特性

  • 本地存儲(localStorage、sessionStorage)
  • Canvas繪圖
  • 地理定位
  • 拖放API
  • 新的表單類型(如date、time、number等)