Html是Hyper Text Mark-up Language 的首字母簡寫,意思是超文本標記語言,超文本指的是超鏈接,標記指的是標簽,是一種用來制作網頁的語言,這種語言由一個個的標簽組成,用這種語言制作的文件保存的是一個文本文件,文件的擴展名為html或者htm,一個html文件就是一個網頁,html文件用編輯器打開顯示的是文本,可以用文本的方式編輯它,如果用瀏覽器打開,瀏覽器會按照標簽描述內容文件渲染成網頁,顯示的網頁可以從一個網頁鏈接跳轉到另一個網頁。
Html中標簽分為 :成對標簽和自閉合標簽【空標簽】
成對出現,有開始標簽必須有結束標簽,內容包裹在兩個標簽中,而且開始標簽名和結束標簽名一致,并且結束標簽必須以斜杠/開頭
語法:
<font>內容</font>
只有一個標簽,用斜杠結束,斜杠也可以省略
語法:
<br/>
注意事項:
<!DOCTYPE html>
<html lang="en">
<head>
<title></title>
</head>
<body>
</body>
</html>
!DOCTYPE html是文檔聲明,定義文檔類型為html,并且告訴不同的瀏覽器用標準方式進行解析html語言,如果不寫的話,會產生怪異模式,所謂怪異模式,就是瀏覽器會用自己的方式進行解析,不同的瀏覽器有各自的解析方式,從而會出現無效果、不兼容等問題。
注意,html中有兩種聲明類型,一種叫做xhtml,即html,另一種叫做html5,html5是xhtml的升級版,所以我們建議使用html5的聲明方式
xhtml聲明方式:
<htmlxmlns="http://www.w3.org/1999/xhtml">
html5聲明方式:
<!DOCTYPE html>
html是html文檔的整體,也就是表示一個網頁。
html中的lang="en"是定義該文件語言是英文
head是html的第一層子元素【子標簽】,負責對網頁進行一些設置以及定義標題,設置包括定義網頁的編碼格式,外鏈css樣式文件和JavaScript文件等。設置的內容不會顯示在網頁上,標題的內容會顯示在標題欄中。即title標簽。
meta是html語言head標簽中的一個輔助性標簽,該標簽不包含任何內容,但是該標簽的屬性定義了與文檔相關聯的名稱,比如:編碼
<meta charset="utf-8"></meta>
body也是html的第一層子元素,我們頁面中顯示的所有內容全部都是編寫在該標簽體中。
html制定了文檔的編寫規范,必須遵守。
所有的標簽必須小寫
所有的屬性必須用雙引號括起來
html文檔代碼中可以插入注釋,注釋是對代碼的說明和解釋,注釋的內容不會顯示在頁面上。
注釋的語法:
<!-- 注釋的內容 -->
注:屬性是標簽的輔助作用。
屬性 描述 bgcolor 設置網頁的背景顏色 background 設置網頁的背景圖片
設置網頁的背景顏色
<!DOCTYPE html>
<html lang="en">
<head>
<title>html的屬性</title>
</head>
<body bacolor="pink">
</body>
</html>
我們在開發網頁時,需要經常的插入圖片、視頻、文件等一些操作,但是我們需要指定文件所在的位置,這個位置就是所謂的路徑
路徑分為:
設置網頁的背景圖片
<!DOCTYPE html>
<html lang="en">
<head>
<title>html的屬性</title>
</head>
<body background="../images/10.jpg">
</body>
</html>
注意事項:
bgcolor和background不能同時使用
background不能指定絕對路徑
網頁的組成:文字、圖片、視頻、超鏈接、列表、表格、表單等組成。
標簽 描述 hn 設置文字標題【n:取值范圍 1~6】 center 居中對齊 hr 水平線 屬性(width:寬度 color:顏色 size:粗細) br 換行 p 段落
標簽 描述 font 設置字體,需要借助屬性設置
屬性 描述 color 設置字體顏色 size 設置字體大小,不需要帶單位,取值范圍:1~7【瀏覽器默認值:3】 face 設置字體風格
<font size="2" color="red" face="黑體"></font>
標簽 描述 b 定義粗體文本 em 定義著重文字 i 定義斜體文字 small 定義小號字 strong 定義加重語氣 sub 定義下標字 sup 定義上標字 ins 定義插入字 del 定義刪除字
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Html文本格式化標簽</title>
</head>
<body>
<b>粗體文本</b>
<i>傾斜文本</i>
<em>著重文本</em>
<small>小號字</small>
<strong>加重語氣</strong>
<sub>上標</sub>
<sup>下標</sup>
<ins>插入字</ins>
<del>刪除字</del>
</body>
</html>
在Html中,圖像由
標簽定義。
是空標簽,意思是說,它只包含屬性。
要在頁面上顯示圖像,你需要使用源屬性(src)。src指"source"。源屬性的值是圖像的URL地址。
標簽 描述 img 圖片標簽
屬性 描述 src 指定圖片的地址 width 設置圖片的寬度 height 設置圖片的高度 alt 設置圖片的預備文本
注意事項:不建議設置圖片大小,容易失真
在Html中,聲音由標簽定義。
標簽 描述 audio 聲音標簽
屬性 描述 src 指定聲音地址
<audio src="nice.mp3">對不起,您的瀏覽器不支持</audio>
在Html中,視頻由video標簽定義
標簽 描述 video 視頻標簽
屬性 描述 src 指定視頻地址
<video src="美女.mp4">對不起,您的瀏覽器不支持</video>
a標簽定義超鏈接,用于從一個頁面鏈接到另一個頁面。
a標簽最重要的屬性是href,它指定鏈接的目標。
在所有瀏覽器中,鏈接的默認外觀如下:
未被訪問的鏈接帶有下劃線而且是藍色的
已被訪問的鏈接帶有下劃線而且是紫色的
活動鏈接帶有下劃線而且是紅色的
語法:
<a href="鏈接目標">點擊內容</a>
屬性 描述 href 指定鏈接目標 name 指定錨的名稱 download 指定下載鏈接 target 指定跳轉方式 屬性值 描述 _blank 新窗口打開【常用】 _parent 在父窗口中打開鏈接【了解】 _self 默認,在當前窗口打開【了解】 _top 在當前窗體打開鏈接,并替換當前的整個窗體【了解】 framename 到 iframe 在講【常用】
超鏈接分類:
列表的使用與word等軟件的列表概念相似,只不過是應用在網頁展示中。
有序列表是指有數字編號或字母的列表項,可以使用css定義更多樣式。
<!-- 有序列表 -->
<ol type="a">
<li>新聞一</li>
<li>新聞二</li>
<li>新聞三</li>
</ol>
屬性 描述 type 設置符號類型 值:1 a A I i 默認數字 start 從第幾個開始【用于ol標簽中】 value 從第幾個開始【用于li標簽中】
<!-- 有序列表 -->
<ol type="a" start="4">
<li>新聞一</li>
<li type="1" value="1">新聞二</li>
<li>新聞三</li>
</ol>
無序列表是指沒有數字編號或字母的列表項,可以使用css定義更多樣式。
<!-- 無序列表 -->
<ul>
<li>童裝</li>
<li>男裝</li>
<li>女裝</li>
</ul>
屬性 描述 type 用于設置符號類型,默認:實心圓 值:空心圓、正方形 【用于ul、li】
<!-- 無序列表 -->
<ul type="square">
<li>童裝</li>
<li type="circle">男裝</li>
<li>女裝</li>
</ul>
描述列表指每個列表項有單獨的標題。
<!-- 描述列表 -->
<dl>
<dt>開源產品</dt>
<dd>Java封裝庫</dd>
<dd>Web組件庫</dd>
<dt>網站導航</dt>
<dd>mrliujava.com</dd>
<dd>mrliuweb.com</dd>
</dl>
表格在網頁開發中使用頻率非常高,尤其是數據展示的時候。
標簽 描述 table 代表表格標簽 caption 表格標題 thead 表頭部分 tbody 表格主體部分 tfoot 表格尾部
屬性 描述 border 表格邊框 cellspacing 單元格與單元格間距 width 寬度 height 高度 bgcolor 設置背景顏色 background 設置背景圖片 align 對齊方式
<!-- 表格 -->
<table border="1" cellspacing="0" width="600px" height="200px">
<caption>員工薪資統計表</caption>
<thead>
<tr>
<th>序號</th>
<th>姓名</th>
<th>性別</th>
<th>職位</th>
<th>薪資</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>狗蛋</td>
<td>男</td>
<td>JavaEe工程師</td>
<td>8780</td>
</tr>
<tr>
<td>2</td>
<td>黑妞</td>
<td>女</td>
<td>Web前端工程師</td>
<td>9750</td>
</tr>
<tr>
<td>3</td>
<td>傻蛋</td>
<td>妖</td>
<td>測試工程師</td>
<td>996</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>當前頁:1 頁</td>
<td>上一頁</td>
<td>下一頁</td>
<td>尾頁</td>
<td>共 3 頁</td>
</tr>
</tfoot>
</table>
屬性 說明 rowspan 行合并 colspan 列合并
下面是行合并:
<!-- 表格 -->
<table border="1" cellspacing="0" width="600px" height="200px">
<caption>員工薪資統計表</caption>
<thead>
<tr>
<th>序號</th>
<th>姓名</th>
<th>性別</th>
<th>職位</th>
<th>薪資</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>狗蛋</td>
<td>男</td>
<td rowspan="2">JavaEe工程師</td>
<td>8780</td>
</tr>
<tr>
<td>2</td>
<td>黑妞</td>
<td>女</td>
<td>9750</td>
</tr>
<tr>
<td>3</td>
<td>傻蛋</td>
<td>妖</td>
<td>測試工程師</td>
<td>996</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>當前頁:1 頁</td>
<td>上一頁</td>
<td>下一頁</td>
<td>尾頁</td>
<td>共 3 頁</td>
</tr>
</tfoot>
</table>
下面是列合并:
<!-- 表格 -->
<table border="1" cellspacing="0" width="600px" height="200px">
<caption>員工薪資統計表</caption>
<thead>
<tr>
<th>序號</th>
<th>姓名</th>
<th>性別</th>
<th>職位</th>
<th>薪資</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>狗蛋</td>
<td>男</td>
<td>JavaEe工程師</td>
<td>8780</td>
</tr>
<tr>
<td>2</td>
<td>黑妞</td>
<td>女</td>
<td>Web前端工程師</td>
<td>9750</td>
</tr>
<tr>
<td>3</td>
<td colspan="2">傻蛋</td>
<td>測試工程師</td>
<td>996</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>當前頁:1 頁</td>
<td>上一頁</td>
<td>下一頁</td>
<td>尾頁</td>
<td>共 3 頁</td>
</tr>
</tfoot>
</table>
表單是一個包含表單元素的區域。
表單元素是允許用戶在表單中輸入內容,比如:文本域(textarea)、下拉列表(select)、單選框(radio)、復選框(checkbox)等等。
表單需要使用表單標簽來設置:
<!-- 表單 -->
<form>
input元素
</form>
屬性 說明 action 后臺地址 method 提交方式GET或POST
GET和POST區別:
1.GET
2.POST
<form action="后端接口" method="POST">
<input type="text">
<input type="password">
</form>
使用label用于描述表單標題,當點擊標題后文本框會獲得焦點,需要保證使用的ID在頁面中是唯一的。
<form action="后端接口" method="POST">
<label for="username">用戶名</label>
<input type="text" id="username">
<label for="password">密碼</label>
<input type="password" id="password">
</form>
也可以將文本框放在label標簽內部,這樣就不需要設置id與for屬性了。
文本框用于輸入單行文本使用,下面是常用屬性與示例。
屬性 說明 type 表單類型,默認為text name 后端接收字段名 required 必須輸入 placeholder 提示文本內容 value 默認指 maxlength 允許最大輸入字符數 size 表單長度,一般用css來控制 disabled 禁用,不可提交后端 readonly 只讀,可提交后端 accept 設置選中類型 比如:.jpg capture 使用麥克風\視頻或攝像頭哪種方式獲取手機上傳文件,支持的值有microphone , video , camera
<form action="后端接口" method="POST">
<label for="username">用戶名</label>
<input type="text" name="username" id="username" placeholder="請輸入用戶名" maxlength="5" size="50" required>
</form>
當input類型為file時手機會讓用戶選擇圖片或者拍照,如果想直接調取攝像頭使用以下代碼.
<form action="后端接口" method="POST">
<label for="file">上傳文件</label>
<input type="file" name="file" id="file" accept="*.jpg" capture="camera">
</form>
通過設置表單的type字段可以指定不同的輸入內容.
類型 說明 email 輸入內容為郵箱 url 輸入內容為URL地址 password 輸入內容為密碼項 tel 電話號,移動端會調出數字鍵盤 search 搜索框 hidden 隱藏表單 submit 提交表單 reset 重置表單 button 自定義按鈕
隱藏表單用于提交后臺數據,但在前臺內容不顯示所以在其上做用樣式定義也沒有意義.
<input type="hidden" name="id" value="1">
創建提交按鈕可以將表單數據提交到后臺,有多種方式可以提交數據,比如:AJAX,或者Html的表單按鈕.
a.使用input構建提交按鈕,如果設置了name值,那么按鈕數據也會提交到后臺,如果有多個表單項可以通過這些進行判斷是哪個表單提交的.
<input type="submit" name="submit" value="提交表單">
b.使用button也可以提交,設置type屬性為submit或不設置都可以提交表單.
<button type="submit">提交表單</button>
通過為表單設置disabled或readonly都可以禁止表單,單readonly表單的數據可以提交到后端
<input type="text" value="數據" readonly>
表單可以通過設置pattern屬性指定正則驗證.
屬性 說明 pattern 正則表達式驗證規則 oninvalid 輸入錯誤時觸發的事件
<form action="">
<label for="username">用戶名</label>
<input type="text" name="username" id="username" pattern="[a-z]{5,20}" oninvalid="validate('請輸入5~20位字母的用戶名')">
<button>提交表單</button>
</form>
<script>
function validate(message){
alert(message);
}
</script>
文本域指可以輸入多行文本的表單,當然更復雜的情況可以使用編輯器如ueditor , ckeditor等.
屬性 說明 cols 列字符數(一般使用css控制更好) rows 行數(一般使用css控制更好)
<textarea cols="30" rows="3">請踩踩我......</textarea>
下拉列表項可用于多個值中的選擇.
屬性 說明 multiple 支持多選 size 列表框高度 optgroup 選項組 selected 選中狀態 option 選項值
<form action="">
<select multiple size="10">
<option value="">選擇課程</option>
<optgroup label="后端">
<option value="">JAVA</option>
<option value="">PHP</option>
<option value="">LINUX</option>
</optgroup>
<optgroup label="前端">
<option value="">HTML</option>
<option value="">CSS</option>
<option value="">JAVASCRIPT</option>
</optgroup>
</select>
</form>
單選框指只能選擇一個選項的表單,如性別的選擇:男 , 女 , 保密 只能選擇一個.
屬性 說明 checked 選中狀態
<form action="">
<input type="radio" name="" id="boy" checked>
<label for="boy">男</label>
<input type="radio" name="" id="girl">
<label for="girl">女</label>
</form>
復選框指允許選擇多個值的表單
屬性 說明 checked 選中狀態
<form action="">
<input type="checkbox" name="JAVA" id="java">
<label for="java">JAVA</label>
<input type="checkbox" name="WEB" id="web">
<label for="web">WEB</label>
</form>
文件上傳有很多方式,可以使用插件或者JS拖放上傳處理.Html本身也提供了默認的上傳功能,只是上傳效果并不是很美觀.
屬性 說明 multiple 支持多選 accept 允許上傳類型.png , .psd 或者 image/png , image/gif
<form action="" enctype="multipart/form-data">
<input type="file">
<input type="submit" value="上傳">
</form>
屬性 說明 min 最小時間 max 最大時間 step 間隔: date缺省是1天 week缺省是1周 month缺省是1月
a.日期選擇
<h1>日期選擇</h1>
<form action="">
<input type="date" step="5" min="2020-09-22" max="2025-01-15" name="datetime">
</form>
b.周選擇
<h1>周選擇</h1>
<input type="week" name="" id="">
c.月份選擇
<h1>月選擇</h1>
<input type="month" name="" id="">
d.日期與時間
<h1>日期與時間</h1>
<input type="datetime-local" name="" id="">
input表單的輸入值選項列表
<form action="">
<label for="username">用戶名</label>
<input type="text" name="" id="usernmae" list="less">
<datalist id="less">
<option value="JAVA">后臺管理語言</option>
<option value="CSS">美化網站頁面</option>
<option value="MYSQL">掌握數據庫使用</option>
</datalist>
</form>
frameset元素可定義一個框架集。它被用來組織多個窗口(框架),每個框架存有獨立的文檔,在其最簡單的應用中,frameset元素僅僅會規定在框架集中存在多少列或多少行,您必須使用cols或rows屬性。
注意事項:由于是分割原網頁,所以我們不能在body中進行編寫,在head中進行分割。
標簽 說明 frameset 框架集 frame 框架
屬性 說明 cols 定義框架集中列的數目和尺寸 rows 定義框架集中行的數目和尺寸 frame border 去除框架邊框 scrolling 去除滾動條
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Html垂直框架</title>
<frameset cols="50%,*" >
<frame src="http://www.baidu.com" frameborder="0" scrolling="no"></frame>
<frame src="http://www.taobao.com" frameborder="0" scrolling="no"></frame>
</frameset>
</head>
<body>
</body>
</html>
12.2 水平框架
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Html水平框架</title>
<frameset rows="50%,*" >
<frame src="http://www.baidu.com" frameborder="0" scrolling="no"></frame>
<frame src="http://www.taobao.com" frameborder="0" scrolling="no"></frame>
</frameset>
</head>
<body>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Html混合框架</title>
<frameset rows="20%,*" >
<frame src="http://www.baidu.com" frameborder="0" scrolling="no"></frame>
<frameset cols="20%,*">
<frame src="http://www.taobao.com" frameborder="0" scrolling="no"></frame>
<frame src="https://www.huya.com/" frameborder="0" scrolling="no"></frame>
</frameset>
</frameset>
</head>
<body>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Html美女</title>
</head>
<body>
<img src="../images/10.jpg" alt="">
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Html野獸</title>
</head>
<body>
<img src="../images/timg.gif" alt="">
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Html動物</title>
</head>
<body>
<img src="../images/4.jpg" alt="">
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Html鏈接</title>
</head>
<body>
<a href="Html美女.html" target="view">美女圖片</a>
<a href="Html野獸.html" target="view">野獸圖片</a>
<a href="Html動物.html" target="view">動物圖片</a>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Html垂直框架</title>
<frameset rows="20%,*" >
<frame src="http://www.baidu.com" frameborder="0" scrolling="no"></frame>
<frameset cols="20%,*">
<frame src="Html鏈接.html" frameborder="0" scrolling="no"></frame>
<frame src="https://www.huya.com/" frameborder="0" scrolling="no" name="view"></frame>
</frameset>
</frameset>
</head>
<body>
</body>
</html>
iframe元素會創建包含另外一個文檔的內聯框架。
屬性 說明 align 對齊方式,后期采用css的方式進行設置 width 設置寬度 height 設置高度 src 設置iframe中顯示的文檔的URL name iframe的名稱 scrolling 是否顯示滾動條 frameborder 設置iframe的邊框
TML5是一種標記語言,用于創建和呈現網頁內容。與早期的HTML版本相比,HTML5具有許多新的功能和改進,可以更好地支持動態內容、多媒體、圖形和互動性。在本文中,我們將討論如何使用HTML5制作網頁,以及HTML5與舊版本HTML的區別。
首先,讓我們了解一下HTML5的一些主要功能和優勢。HTML5具有以下特點:
1. 語義化標簽:HTML5引入了一些新的語義化標簽,例如、、、等。這些標簽的使用可以增強網頁的結構并提高搜索引擎的可讀性。
2. 多媒體支持:HTML5內置了對多媒體的支持,例如和標簽,可以在網頁上直接播放視頻和音頻文件,而無需使用第三方插件。
3. Canvas繪圖:HTML5引入了元素,允許開發者通過JavaScript在網頁上繪制圖形和動畫。這對于創建復雜的圖表、可視化效果和游戲非常有用。
4. 本地存儲:HTML5提供了幾種本地存儲方法,例如localStorage和sessionStorage。這些方法可以在客戶端存儲數據,使得網頁可以更快地加載和響應用戶的操作。
5. 表單增強:HTML5為表單提供了許多新的輸入類型和屬性,例如日期、時間、顏色、URL等。這些功能減少了對JavaScript的依賴,在客戶端驗證和收集用戶輸入數據時更加方便。
現在,讓我們看看如何使用HTML5制作網頁的基本步驟。
步驟一:創建HTML文檔結構HTML5的網頁結構包括、和等標簽。在標簽中,可以設置網頁的語言屬性()和字符編碼()。在標簽中,可以添加網頁的標題()和其他元數據(標簽)。在標簽中,可以編寫網頁的內容。
步驟二:使用語義化標簽為了增強網頁的結構和可讀性,應盡量使用語義化標簽。例如,標簽用于網頁的標題和導航欄,標簽用于網頁的導航鏈接,和標簽用于劃分網頁的內容部分。
步驟三:插入多媒體使用、和
等標簽插入多媒體內容。例如,使用標簽可以插入視頻文件,并設置其屬性(例如src、width、height)來指定視頻的來源和尺寸。
步驟四:繪制圖形和動畫使用標簽和JavaScript繪制圖形和動畫。通過在標簽中指定寬度和高度,并調用JavaScript函數繪制圖形,可以在網頁上顯示自定義的圖形和動畫效果。
步驟五:使用本地存儲使用localStorage和sessionStorage等方法,在客戶端存儲數據。通過調用JavaScript的API,可以將數據存儲在瀏覽器中,并在需要時讀取和更新數據。
步驟六:優化網頁性能使用HTML5的新功能來優化網頁性能。例如,使用新的表單輸入類型和屬性可以在客戶端驗證和收集用戶輸入數據,減少對服務器的請求和響應時間。
現在,讓我們來了解一下HTML5和HTML的區別。
HTML5是HTML的第五個版本,是對以前的HTML版本進行的改進和擴展。與HTML4相比,HTML5具有許多新的功能和語義化標簽,使開發者能夠創建更現代、豐富和交互性的網頁。
以下是HTML5和HTML的一些區別:
1. 標簽語義化:HTML5引入了許多新的語義化標簽,如、、、等。這些標簽增強了網頁的結構和可讀性,有助于搜索引擎優化和可訪問性。
2. 多媒體支持:HTML5內置了對多媒體的支持,如和標簽,可以在網頁上直接播放視頻和音頻文件。而在HTML4中,需要使用第三方插件(如Flash)來實現相同的功能。
3. Canvas繪圖:HTML5引入了元素,允許在網頁上通過JavaScript繪制圖形和動畫。而在HTML4中,圖形和動畫的創建通常依賴于第三方插件或JavaScript庫。
4. 本地存儲:HTML5提供了localStorage和sessionStorage等方法,在客戶端存儲數據。這使得網頁可以更快地加載和響應用戶的操作。相比之下,HTML4需要通過服務器來存儲和獲取數據。
5. 表單增強:HTML5為表單提供了新的輸入類型和屬性,如日期、時間、顏色、URL等。這減少了對JavaScript和服務器的依賴,提高了用戶體驗。
總結起來,HTML5相對于HTML4具有更多的功能和改進,使得開發者可以創建更現代、豐富和互動性的網頁。它提供了語義化標簽、多媒體支持、Canvas繪圖、本地存儲和表單增強等功能,為網頁開發提供了更多的選擇和可能性。
<div>元素是個有故事的元素,這個元素很早就出現在html超文本標記語言中,它設計之初就是為了解決網頁頁面布局的需求。但是遺憾的是它出生后一直懷才不遇。
在我還上初中的時候,智能手機還沒有出現,更沒有平板電腦等移動設備。上網是通過擺在桌子上的計算機來完成的。
那時,大街小巷上有好多網吧。
那時,馬云剛剛辭去工作準備創業。
那時,發送郵件的操作都會出現在計算機課程中。
那時,對頁面還沒有現在的跨平臺要求。
那時,flashplayer大行其道。
那時,dreamwaver、flash、fireworks被稱為網頁三劍客!
那時,制作網頁可以不用懂的html的寫法!
第一次接觸網頁制作是在大學的專業課上,使用三劍客,通過點擊軟件菜單中的按鈕就能制作網頁,精力都放在了如何使用flash制作酷炫的交互動畫上了。
那時,對html還沒有深刻的認識,但是卻對<table></table>這個標簽有著極深的印象。
因為當時的dreamwaver通過非代碼方式生成的頁面都是使用<table>表格元素進行布局的!
也就是說,在移動智能設備誕生之前,在用戶對頁面還沒有可以適應不同屏幕比例的要求前,<table>這個本來用來做表格的元素同時兼職了<div>的頁面布局工作,而且把兼職干成了主業,讓<div>這個專業的塊元素閑置了好久。
直到智能手機,平板電腦產生后,由于對頁面的跨平臺顯示的要求的出現(這類適應多平臺的頁面布局叫做響應式布局),<table>表格制作的頁面在響應式布局大行其道的今天,用它布局的頁面開始出現代碼冗余,維護困難等諸多問題。手機端的瀏覽器在播放視頻或其他交互動畫時也不再依賴flashplayer這個給我們帶來無數反感和惱火的插件。
從此,頁面制作的世道變了,從不需要編程就能制作頁面的三劍客,變成了必須懂得相關代碼寫法才能使用的HTML+CSS+JavaScript了。dreamwaverCC版本也恢復了寫代碼做頁面的操作方式,過去的點擊加拖拽的制作方式也消失了。這讓很多不懂編程和HTML等頁面制作核心技術的從業人感到難受。
dreamwaver的老東家Adobe后來也嘗試過推出新模式下通過界面操作來制作網頁的軟件,還搞出一個叫做Muse的軟件,但是依舊沒能撬動代碼書寫的方式。
這個故事在開始學習<div>和css布局之前我都會講給學生(一群文科生)聽,我只是想告訴大家,學習任何計算機技術,我們可以從簡單易學的方式入手,但要有透過這種方式向下挖掘核心知識的決心和勇氣!對于自己從事的工作我們不能滿足于會做,還要盡量透析它的原理,這樣才能在技術換代中不會被輕易淘汰。
在我研究生階段,有一門讓我終生難忘的選修課,這門課叫做《數字娛樂技術概述》,這門課既不娛樂也不概述,但是通篇都是數字,那位年輕的教授為我們透析了游戲、影視特效的核心----計算機圖形學。
從此我開始學習數學。因為老師的一句話:從2000年到現在(2014)雖然各種軟件層出不窮,但是計算機圖形學的核心算法卻幾乎沒什么改變。
向下挖掘雖然很難,但是有必要!與各位共勉!
下面開始今天的內容。
首先,我們將之前的"第一個頁面.html"文件復制一個,叫做"塊元素學習.html"。然后把<body></body>中間的內容清空。
如圖:
下面,我們在<body></body>中間添加<div></div>標簽。示例代碼如下:
<body><div></div></body>
我們看看效果:
啦啦啦,什么都沒有!
為了讓大家可以看出來不同,我們為<div>添加邊框屬性!
我們使用style屬性為<div>添加邊框,style屬性里的代碼就是以后在CSS中使用的代碼!實際上我們已經開始接觸CSS的一些內容了。具體寫法的講解大家可以看這個教程,這里不再贅述。
示例代碼如下:(通過style = "border-style: solid;"可以為很多元素添加邊框,就不需要大家記憶或查詢不同元素的不同寫法,是不是很方便!)
<div style = "border-style: solid;">
效果如圖:
因為里面沒有內容,所以<div>的寬度是0,因此顯示的就是一條直線。下面我們向<div>中添加內容。
為了看起來花哨些,加張圖片吧!
示例圖片
示例代碼如下:
<div style = "border-style: solid;"><img src = "img/示例圖片/image4.jpg"/ style = "width:50%;"></div>
大家請按照<img>中的scr自行建立文件夾和命名吧!如果您看不懂請參照《HTML元素中的屬性2(路徑詳解)——零基礎自學網頁制作》
效果如下:
其中,我們也是使用了style的方式為<img>設置的寬度,這個設置方法在<div>中一樣使用!
代碼示例:大家注意寫法,不同的屬性都添加到style的雙引號中即可,同時使用;隔開!
<div style = "border-style: solid; width:50%;">
<img src = "img/示例圖片/image4.jpg"/ style = "width:50%;">
</div>
效果如圖:
整個邊框縮小了50%,圖片更有趣,尺寸變成了div的50%乘以自身的50%。這個特性大家要記住。
為了方便觀看,我們去掉div的width設置。同時在<div>中繼續添加<div>標簽。為了方便顯示,我們在新的<div>中添加一段文字!
示例代碼如下:
<div style = "border-style: solid;">
<img src = "img/示例圖片/image4.jpg"/ style = "width:50%;">
<div>
<p>學習網頁制作非常有趣!</p>
</div>
</div>
效果如下:
如果為了美觀,我們讓文字到圖片右邊的空間中怎么做呢?
示例代碼如下:
<div style = "float:right;"><p>學習網頁制作非常有趣!</p></div>
我們通過為新的<div>標簽中的style屬性添加float(浮動)屬性,同時設置為right(右)。
頁面效果如圖:
大家思考一下如何讓圖片與文字都靠在左邊呢?
是不是為圖片style添加float:left;同時把新<div>的float改為left?
我們試試看!
示例代碼如下:
<div style = "border-style: solid;">
<img src = "img/示例圖片/image4.jpg" style = "width:50%; float:left;"/>
<div style = "float:left;">
<p>學習網頁制作非常有趣!</p>
</div>
</div>
頁面效果:
效果完全不對,圖片和文字跑到外邊來了。
這是div布局中經常出現的一個問題!解決方案有點奇葩,既不是修改<img>屬性也不是修改<div>屬性,而是增加一組空的<div></div>標簽!給這個新的空的<div>的style設置為"clear:both"即可修正。
示例代碼如下:
<div style = "border-style: solid;">
<img src = "img/示例圖片/image4.jpg" style = "width:50%; float:left;"/>
<div style = "float:left;">
<p>學習網頁制作非常有趣!</p>
</div>
<div style = "clear:both;"></div>
</div>
頁面效果如下:
值得注意的是,如果您不使用<div>的話直接使用<img>和<p>,同時對兩個標簽的style設置為float:left,是沒有問題的,只有把它們放到<div>中才會出現上面的情況。
代碼如下:
<body>
<img src = "img/示例圖片/image4.jpg" style = "width:50%; float:left;"/>
<p style = "float:left;">學習網頁制作非常有趣!</p>
</body>
頁面顯示效果如下:
大家觀察一下,文字也變小了。至于為什么去掉<div>之后就不會出現上面那種出框的情況,而且文字也變小的問題在以后的講解中我們再深入探討!
現在希望大家可以記牢這個情況和操作,更多布局問題我們會在CSS的浮動(float)的講解中詳細說明。
疫情期間,請大家少出門,不聚會,沒事在家學學網頁制作,即抗擊疫情又提高自己!
喜歡的小伙伴請關注我,閱讀中遇到任何問題請給我留言,如有疏漏或錯誤歡迎大家斧正,不勝感激!
HTML序章(學習目的、對象、基本概念)——零基礎自學網頁制作
HTML是什么?——零基礎自學網頁制作
第一個HTML頁面如何寫?——零基礎自學網頁制作
HTML頁面中head標簽有啥用?——零基礎自學網頁制作
初識meta標簽與SEO——零基礎自學網頁制作
HTML中的元素使用方法1——零基礎自學網頁制作
HTML中的元素使用方法2——零基礎自學網頁制作
HTML元素中的屬性1——零基礎自學網頁制作
HTML元素中的屬性2(路徑詳解)——零基礎自學網頁制作
使用HTML添加表格1(基本元素)——零基礎自學網頁制作
使用HTML添加表格2(表格頭部與腳部)——零基礎自學網頁制作
使用HTML添加表格3(間距與顏色)——零基礎自學網頁制作
使用HTML添加表格4(行顏色與表格嵌套)——零基礎自學網頁制作
16進制顏色表示與RGB色彩模型——零基礎自學網頁制作
HTML中的塊級元素與內聯元素——零基礎自學網頁制作
初識HTML中的<div>塊元素——零基礎自學網頁制作
在HTML頁面中嵌入其他頁面的方法——零基礎自學網頁制作
封閉在家學網頁制作!為頁面嵌入PDF文件——零基礎自學網頁制作
HTML表單元素初識1——零基礎自學網頁制作
HTML表單元素初識2——零基礎自學網頁制作
HTML表單3(下拉列表、多行文字輸入)——零基礎自學網頁制作
HTML表單4(form的action、method屬性)——零基礎自學網頁制作
HTML列表制作講解——零基礎自學網頁制作
為HTML頁面添加視頻、音頻的方法——零基礎自學網頁制作
音視頻格式轉換神器與html視頻元素加字幕——零基礎自學網頁制作
HTML中使用<a>標簽實現文本內鏈接——零基礎自學網頁制作
*請認真填寫需求信息,我們會在24小時內與您取得聯系。