非下表中的所有實體都能在所有的瀏覽器中正確地顯示。
目前,IE 11 是唯一一個能正確顯示所有 HTML5 實體的瀏覽器。
字符 | 實體名稱 | 十六進制 |
---|---|---|
Qfr | 1D514 | |
qfr | 1D52E | |
? | qint | 02A0C |
? | Qopf | 0211A |
qopf | 1D562 | |
? | qprime | 02057 |
Qscr | 1D4AC | |
qscr | 1D4C6 | |
? | quaternions | 0210D |
? | quatint | 02A16 |
? | quest | 0003F |
? | questeq | 0225F |
" | quot | 00022 |
如您還有不明白的可以在下面與我留言或是與我探討QQ群308855039,我們一起飛!
小伙伴們,感覺我的分享很不錯的別忘記“贊賞”我一下喲!
html5 SVG動畫&路徑
SVG動畫可以使用<animate>元素創(chuàng)建
實例:
創(chuàng)建一個矩形,將在3秒內(nèi)更改其位置,然后重復動畫兩次
<svg width="1000" height="250">
<rect width="150" height="150" fill="orange">
<animate attributeName="x" from="0" to="300" dur="3s" fill="freeze" repeatCount="2" />
</rect>
</svg>
attributeName:指定哪個屬性需要產(chǎn)生動畫效果
from:指定屬性的起始值
to:指定屬性的結(jié)束值
dur:指定動畫運行的時間(持續(xù)時間)
fill="frezee|remove":指定動畫播放完畢后是停留在播放的終點還是回到起始位置
repeatCount:指定動畫的重復播放次數(shù)
在上面的例子中,矩形在3s內(nèi)將其x屬性從0更改為300
●要無限重復動畫,請使用值"indefinite"作為repeatCount屬性
<path>元素用于定義一個路徑
下面的命令可用于路徑數(shù)據(jù):
●M=moveto
●L=lineto
●H=horizontal lineto
●V=vertical lineto
●C=curveto
●S=smooth curveto
●Q=quadratic Bezier curve
●T=smooth quadratic Bezier curveto
●A=elliptical Arc
●Z=closepath
注意:以上所有命令均允許小寫字母.大寫字母表示絕對定位,小寫字母表示相對定位
實例:
<svg width="500" height="500">
<path d="M50 0 L75 200 L225 200 Z"/>
</svg>
上面的例子中定義了一條路徑,它開始于150 0,到達位置75 200,然后從那里開始到225 200,最后150 0關(guān)閉路徑
二 html5 Canvas
html5<canvas>元素用于圖形的繪制,通過腳本(通常是JavaScript)來完成
<canvas>標簽只是圖形容器,你必須使用腳本來繪制圖形
getContext()方法可返回一個對象,該方法提供了用于在畫布上繪畫的方法和屬性.
你可以通過多種方法使用canvas繪制路徑,盒,圓,字符以及添加圖像
<canvas>元素定義如下:
<canvas id"myCanvas" width="200" height="100">
</canvas>
<canvas>標簽通常需要指定一個id屬性(腳本中經(jīng)常使用),width和height屬性定義的畫布的大小
了解和使用Canvas需要基本了解JavaScript的基本知識
canvas是一個二維坐標
canvas的左上角坐標為(0,0)
x坐標向右增加
y坐標向著畫布底部增加
Canvas-路徑
在Canvas上畫線,我們將使用以下兩種方法:
●moveTo(x,y)定義線條開始坐標
●lineTo(x,y)定義線條結(jié)束坐標
在canvas中繪制圓形,我們將使用以下方法:
●arc(x,y,start,stop)
Canvas-文本
使用canvas繪制文本,重要的屬性和方法如下:
●font-定義字體
●fillText(text,x,y)-在canvas上繪制實心的文本
●strokeText(text,x,y)-在canvas上繪制空心的文本
Canvas-漸變
漸變可以填充在矩形,圓形,線條,文本等等,各種形狀可以自己定義不同的顏色
以下有兩種不同的方式來設(shè)置canvas漸變:
●creatLinearGradient(x,y,x1,y1)-創(chuàng)建線條漸變
●creatRadialGradient(x,y,r,x1,y1,r1)-創(chuàng)建一個徑向/圓漸變
當我們使用漸變對象,必須使用兩種或兩種以上的停止顏色
addColorStop()方法指定顏色停止,參數(shù)使用坐標描述,可以是0至1
使用漸變,設(shè)置fillStyle或strokeStyle的值為漸變,然后繪制形狀,如矩形,文本,或一條線
Canva-圖像
把一幅圖像放置在畫布上,使用以下方法:
●drawImage(image,x,y)
三 html5 SVG與Canvas的區(qū)別
SVG:
SVG是一種使用XML描述2D圖形的語言
SVG基于XML,這意味著SVG DOM中的每個元素都是可用的.你可以為某個元素附加JavaScript事件處理器
在SVG中,每個被繪制的圖形均被視為對象.如果SVG對象的屬性發(fā)生改變,那么瀏覽器能夠自動重現(xiàn)圖形
特點:
●不依賴分辨率
●支持事件處理器
●最適合帶有大型渲染區(qū)域的應(yīng)用程序(比如谷歌地圖)
●復雜程度高會減慢渲染速度(任何過度使用DOM的應(yīng)用都不快)
●不適合游戲應(yīng)用
Canvas:
canvas通過JavaScript來繪制2D圖形
canvas可以逐像素進行渲染的
在canvas中,一旦圖形被繪制出來,它就不會繼續(xù)得到瀏覽器的關(guān)注
如果其位置發(fā)生變化,那么整個場景也需要重新啟動,包括任何或許已被圖像覆蓋的對象
特點:
●依賴分辨率
●不支持事件處理器
●弱的文本渲染能力
●能夠以.png或.ipg格式保存結(jié)果圖像
●最適合圖像密集型的游戲,其中的許多對象都會被頻換重繪
章學習目標
第一章已經(jīng)介紹過HTML是一門超文本標記語言,通過HTML標記對網(wǎng)頁中的文本、圖片、聲音等信息進行描述。但是具體如何使用HTML標記對網(wǎng)頁中的信息進行控制,沒有介紹,本章就將從HTML的歷史、語義化、常用標簽三個方面詳細講解HTML。
2.1 HTML歷史
俗話說“了解歷史,才能明白當下,進而展望未來”。所以了解HTML的歷史,有利于更好的掌握HTML這門語言。
2.1.1 HTML歷史版本
像大多數(shù)軟件、硬件一樣,HTML發(fā)展至今,經(jīng)歷了幾個版本,新增了許多HTML標記,同時也淘汰了一些標記,接下來介紹HTML在不同時期所對應(yīng)的一些重要版本,具體如下:
HTML沒有1.0版本,最早的HTML官方規(guī)范,是由IETF(Internet Engineering Task Force,因特網(wǎng)工程任務(wù)組)發(fā)布的HTML 2.0。之后W3C成為HTML語言標準的制定者,發(fā)布了3.2、4.0、4.01和5等多個后續(xù)重要版本。通常所說的HTML5指的就是5這個最新的版本。
本教材涉及的所有規(guī)范及語法,都是嚴格按照HTML5標準進行講解的,在后面的章節(jié)中還會詳細的介紹HTML5及相關(guān)內(nèi)容。
2.1.2 HTML與XHTML關(guān)系
在HTML語法上很寬松,如標簽和屬性可以是大寫、小寫,或者任意大小寫字母的組合,標簽可以不閉合等。有些設(shè)備很難兼容這些松散的語法,如手機、打印機等,這并不符合標準的發(fā)展趨勢,因此1999年12月W3C推出了HTML4.01版本后解散了HTML工作組。轉(zhuǎn)而開發(fā)XHTML,2000年1月26日發(fā)布XHTML1.0。
XHTML是更嚴謹純凈的HTML版本,XHTML比HTML語法更加規(guī)范和嚴謹,目的是為了實現(xiàn)HMTL向XML過渡,讓作者按照統(tǒng)一的風格來編寫標簽,HTML中標簽和屬性不區(qū)分大小寫,而有效的XHTML 文檔則要求所有標簽和屬性必須一律小寫,當然還有一些其他的規(guī)范和要求,這里不再贅述。XML雖然數(shù)據(jù)轉(zhuǎn)換能力強,完全可以替代HTML,但是面對互聯(lián)網(wǎng)上大量基于HTML編寫的網(wǎng)站,直接采用XML還為時過早,因此在HTML4.0的基礎(chǔ)上,用XML的語法規(guī)則對其進行擴展,得到了XHTML。
注:XML指可擴展標記語言(EXtensible Markup Language),用來傳輸和存儲數(shù)據(jù)。XML語言也可以做為很多語言的基礎(chǔ)語言,例如:XHTML、SVG等。
HTML的不同版本對<!DOCTYPE>寫法也有不同,具體如下:
HTML4.01中<!DOCTYPE>寫法:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
XHTML1.01中<!DOCTYPE>寫法
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
HTML5中<!DOCTYPE>寫法
<!DOCTYPE HTML>
因為 HTML 4.01和XHTML1.0 基于 SGML,所以 DOCTYPE 需要對 DTD 進行引用。而 HTML 5 不基于 SGML,因此不需要對 DTD 進行引用,因此HTML5的DOCTYPE寫法相當簡單。這里建議讀者都采用最新的HTML5版本<!DOCTYPE>寫法,第一章已經(jīng)介紹過在DW工具中默認設(shè)置不同類型的文檔聲明。
2.2 什么是HTML語義化
所謂HTML語義化指的是,根據(jù)網(wǎng)頁中內(nèi)容的結(jié)構(gòu),選擇適合的HTML標簽進行編寫。HTML語義化的意義主要有以下幾點:
HTML標簽都具備語義化,根據(jù)網(wǎng)頁展示的內(nèi)容結(jié)構(gòu),選擇正確的HTML標簽進行解析與編碼。
注: SEO是指在了解搜索引擎自然排名機制的基礎(chǔ)之上,對網(wǎng)站進行內(nèi)部及外部的調(diào)整優(yōu)化,改進網(wǎng)站在搜索引擎中關(guān)鍵詞的自然排名,獲得更多的展現(xiàn)量,吸引更多目標客戶點擊訪問網(wǎng)站,從而達到互聯(lián)網(wǎng)營銷及品牌建設(shè)的目的。
2.3 HTML常用標簽
HTML標簽非常多,有些由于歷史問題已經(jīng)廢棄,有些屬于HTML5中新添加的,這部分H5新標簽會在H5章節(jié)中給讀者講解,本章主要講解一些HTML中常用標簽的使用。
2.3.1 標題標簽
瀏覽新聞類網(wǎng)頁時,經(jīng)常能看見文章的標題,如圖2.1所示。
圖2.1 千鋒教育新聞標題
圖2.1的標題就是用HTML中的標題標簽來實現(xiàn)的,HTML中使用<h1>、<h2>、<h3>、<h4>、<h5>、<h6>等標簽來定義標題部分,其語法格式如下:
<hn 屬性=“屬性值”>標題文本</hn>
接下來通過案例來演示標題標簽,如例2-1所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>定義標題</title> 6 </head> 7 <body> 8 <h1>這是一級標題</h1> 9 <h2>這是二級標題</h2> 10 <h3>這是三級標題</h3> 11 <h4>這是四級標題</h4> 12 <h5>這是五級標題</h5> 13 <h6>這是六級標題</h6> 14 </body> 15 </html>
運行結(jié)果如圖2.2所示。
圖2.2 標題標簽顯示效果
從上例運行結(jié)果可以看出,默認情況下標題文字的顯示方式是加粗左對齊,并且從<h1>到<h6>字號遞減,如果想改變標題的對齊方式,需要用到align屬性,其取值如表2.1。
接下來通過案例來演示標題標簽對齊方式的設(shè)置及效果,如例2-2所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>定義標題對齊方式</title> 6 </head> 7 <body> 8 <h1>這是一級標題</h1> 9 <h2 align="left">這是二級標題</h2> 10 <h3 align="center">這是三級標題</h3> 11 <h4 align="right">這是四級標題</h4> 12 </body> 13 </html>
運行結(jié)果如圖2.3所示。
圖2.3標題對齊方式顯示效果
標題很重要,它有利于網(wǎng)頁搜索引擎的優(yōu)化,其中<h1>標題的重要性最高,<h6>標題的重要性最低,一般一個頁面只能有一個<h1>,而<h2>~<h6>可以有多個。
2.3.2 段落標簽
瀏覽新聞類網(wǎng)頁時,經(jīng)常能看見文章的段落,如圖2.4所示。
圖2.4 千鋒教育新聞段落
圖2.4中的段落在HTML中使用<p>標簽實現(xiàn),用于在網(wǎng)頁中把文字有條理地顯示出來,其語法格式如下:
<p 屬性=“屬性值”>段落文本</p>
接下來通過案例來演示段落標簽,如例2-3所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>段落標簽</title> 6 </head> 7 <body> 8 <h1 align="center" >扣丁學堂</h1></h1> 9 <p align="left">扣丁學堂是中國IT培訓教育品牌領(lǐng)導者,擁有最新最全的IT培訓視頻課 10 程,專注于發(fā)布和更新iOS培訓、Android培訓、HTML5培訓、UI培訓、PHP培訓視頻教程, 11 著力于培養(yǎng)移動互聯(lián)網(wǎng)人才。</p> 12 <p align="ri">遇到IT技術(shù)難題,就上扣丁學堂學堂。</p> 13 </body> 14 </html>
運行結(jié)果如圖2.5所示。
圖2.5 段落標簽顯示效果
2.3.3 文本格式化標簽
文本格式化標簽就是針對文本進行各種格式化的標簽,例如加粗、斜體、上標、下標等。如表2.2所示。
表2.2中列出了對文本格式化的幾種標簽,下面將詳細介紹這幾種標簽的使用和效果。
1. <strong>標簽
<strong>標簽將文本定義為語氣更強的強調(diào)內(nèi)容,展示效果為加粗。接下來通過案例演示<strong>標簽,如例2-4所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>文本格式化</title> 6 </head> 7 <body> 8 <strong>用良心做教育!</strong> 9 </body> 10 </html>
運行結(jié)果如圖2.6所示。
圖2.6 strong標簽顯示效果
注意:<b>標簽的展示效果跟<strong>完全相同,但是<b>標簽不具備語義化強調(diào)的作用,只是顯示加粗效果。
2. <em>標簽
<em>標簽也是將文本定義為強調(diào)的內(nèi)容,只不過比<strong>標簽強調(diào)的稍弱些,展示效果為斜體,接下來通過案例來演示<em>標簽,如例2-5所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>文本格式化</title> 6 </head> 7 <body> 8 <em>用良心做教育!</em> 9 </body> 10 </html>
運行結(jié)果如圖2.7所示。
圖2.7 em標簽顯示效果
注意:<i>標簽的展示效果跟<em>完全相同,但是<i>標簽不具備語義化強調(diào)的作用,只是顯示斜體效果。
3. <sup>和<sub>標簽
<sup>標簽用于將文本定義為上標文本,<sub>標簽用于將文本定義為下標文本,接下來通過案例來演示<sup>和<sub>標簽,如例2-6所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>文本格式化</title> 6 </head> 7 <body> 8 <p>a<sup>2</sup>+b<sup>2</sup>=c<sup>2</sup></p> 9 <p>H<sub>2</sub>O</p> 10 </body> 11 </html>
運行結(jié)果如圖2.8所示。
圖2.8 sup、sub標簽顯示效果
4. <del>和<ins>標簽
<del>標簽可用于定義已被刪除的文本, <ins>標簽可用于定義已經(jīng)被插入的文本,<del>標簽與<ins>標簽配合使用,來描述文檔中的更新和修正。接下來通過案例來演示<del>和<ins>標簽,如例2-7所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>文本格式化</title> 6 </head> 7 <body> 8 <p><del>刪除文本加刪除線</del></p> 9 <p><ins>插入文本加下畫線</ins></p> 10 </body> 11 </html>
運行結(jié)果如圖2.9所示。
圖2.9 del、ins標簽顯示效果
文本格式化標簽,一定要根據(jù)它們的語義來記憶,至于它們的默認樣式,后續(xù)可以通過CSS方式進行修改。
2.3.4 引用標簽
引用標簽就是針對文本進行各種引用的標簽,例如縮略詞、短語解釋、著作、地址等。主要劃分成幾大類,如表2.3所示。
表2.3中列出了引用標簽的幾種分類,下面進行詳細介紹。
1. <blockquote>和<q>標簽
<blockquote>和<q>標簽都是對文本的解釋引用,<blockquote>標簽引用是用大段的段落進行解釋,而<q>標簽引用是小段的短語進行解釋,接下來通過案例來演示<blockquote>和<q>標簽,如例2-8所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>文本格式化</title> 6 </head> 7 <body> 8 <p>"死而后已"一語出自諸葛亮《出師表》:<blockquote>“凡事如是,難可逆見, 9 臣鞠躬盡瘁,死而后已,至于成敗利鈍,非臣之明所能逆睹也。"</blockquote></p> 10 <p>WWF 的目標是:<q>構(gòu)建人與自然和諧共存的世界。</q></p> 11 </body> 12 </html>
運行結(jié)果如圖2.10所示。
圖2.10 <blockquote>、<q>標簽顯示效果
由例2-8中可以看出,<blockquote>標簽左右會空出一些距離,<q>標簽會自動加上引號。
2. <abbr>標簽
<abbr>標簽用來引用縮寫或首字母縮略語,接下來通過案例來演示<abbr>標簽,如例2-9所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>引用標簽</title> 6 </head> 7 <body> 8 <p><abbr title="World Health Organization">WHO</abbr> 9 成立于 1948 年。</p> 10 </body> 11 </html>
運行結(jié)果如圖2.11所示。
圖2.11 <abbr>標簽顯示效果
例2-9中可以看到一個title屬性,當鼠標移入到設(shè)置title的區(qū)域時,就會顯示提示信息。
3. <address>和<cite>標簽
<address>標簽用來引用地址信息,<cite>標簽用來引用著作的標題,展示效果為斜體,接下來通過一個案例來演示<address>和<cite>標簽,如例2-10所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>引用標簽</title> 6 </head> 7 <body> 8 <address> 9 <p>網(wǎng)易北京公司</p> 10 <p>地址:北京市海淀區(qū)西北旺東路10號院</p> 11 <p>郵編:100084</p> 12 </address> 13 <p><cite>資治通鑒</cite>由北宋司馬光主編的一部多卷本編年體史書</p> 14 </body> 15 </html>
運行結(jié)果如圖2.12所示。
圖2.12 <address>、<cite>標簽顯示效果
2.3.5 水平線標簽
有時為了使文檔結(jié)構(gòu)清晰、層次分明,常常需要在網(wǎng)頁中添加一些水平線將段落與段落之間分隔開,HTML中使用<hr>標簽來創(chuàng)建橫跨網(wǎng)頁的水平線。另外<hr>屬于單標簽,在網(wǎng)頁中輸入一個<hr/>標簽,就添加了一條默認樣式的水平線,<hr>標簽的常用屬性如表2.4所示。
接下來通過案例來演示水平線標簽,如例2-11所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>水平線標簽</title> 6 </head> 7 <body> 8 <p align="center">扣丁學堂</p> 9 <hr color="#003399" width="100" size="5">a 10 <p align="left">遇到IT難題,就上扣丁學堂。</p> 11 <hr> 12 <p>遇到問題,在線解答。</p> 13 </body> 14 </html>
運行結(jié)果如圖2.13所示。
圖2.13 <hr>標簽顯示效果
例2-11中,第9行定義水平線標簽,并設(shè)置了color、width、size屬性,并沒有設(shè)置align屬性,可以發(fā)現(xiàn)align屬性默認居中對齊,第11行定義水平線標簽,其屬性都是默認值,可發(fā)現(xiàn)width屬性默認的是瀏覽器窗口的100%。
2.3.6 特殊符號
在編寫一些文本時,經(jīng)常會遇到輸入法無法輸入的字符,如?(注冊商標)、?(版權(quán)符)等,還有往一段文字中加入多個空格時,頁面并不會解析出多個空格。這些無法輸入和空格字符都是特殊字符,在HTML中,為這些特殊字符準備了專門的代碼,如表2.5。
接下來通過案例來演示這些特殊字符表示代碼,如例2-12所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>特殊符號</title> 6 </head> 7 <body> 8 <p>?注冊商標 ?版權(quán) 空格 < 小于號 >大于號</p> 9 <p>&和號 ¥人民幣 °攝氏度 ±正負號 ×乘號</p> 10 <p> ÷除號 1上標1 2上標2 3上標3</p> 11 </body> 12 </html>
運行結(jié)果如圖2.14所示。
圖2.14 難輸入符號顯示效果
在DW中,只要輸入一個&符號,就可以看到相關(guān)特殊符號的提示信息。如圖2.15所示。
圖2.15 DW中特殊符號提示功能
2.3.7 圖像標簽
每一張網(wǎng)頁都離不開圖片元素,在網(wǎng)頁中添加圖片是非常重要的操作,如圖2.16所示。
圖2.16 圖片效果展示
HTML中使用<img>標簽來添加圖片,<img>屬于單標簽,其語法格式如下
<img src=”圖像URL”/>
其中src是用于指定圖像文件的路徑和文件名的屬性,是img標簽的必需屬性。接下來用案例來簡單演示img標簽的使用。如例2-13所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>圖像標簽</title> 6 </head> 7 <body> 8 <img src="qianfeng.jpg"/> 9 </body> 10 </html
運行結(jié)果如圖2.17所示。
圖2.17 圖像標簽顯示效果
src屬性引用的是當前圖片的地址,圖片的名為qianfeng,圖片的格式為.png,接下來針對圖片的地址和圖片的格式進行詳細講解。
1. 圖片的地址
src屬性引用的是當前圖片的地址,所謂地址就是一個文件的路徑。讀者在網(wǎng)頁中通過地址來找到相應(yīng)位置的元素。那么地址分為相對地址與絕對地址,相對地址即被引入的文件相對與當前頁面的地址。絕對地址即文件在網(wǎng)絡(luò)或本地的絕對位置。
相對地址有以下三種寫法,具體如下。
<img src=”qianfeng.jpg”/> <img src=”img/qianfeng.jpg”/> <img src=”../img/qianfeng.jpg”/>
第一個相對地址說明當前頁面和圖片在同一個目錄下。第二個相對地址說明圖片在頁面同級的img文件夾中。第三個相對地址說明圖片在頁面上一級的img文件夾中。
絕對地址有以下兩種寫法,具體如下。
<img src="http://www.jungjaehyung.com/uploadfile/2024/1012/20241012063244114.jpg"/> <img src=http://www.jungjaehyung.com/uploadfile/2024/1012/20241012063245854.jpg”/>
第一個絕對地址在本地D盤的相應(yīng)文件夾下。第二個絕對地址在網(wǎng)絡(luò)中的相應(yīng)文件夾下。
當前網(wǎng)頁和圖片文件如果同時移動到其他位置時,相對地址是不會出問題的,因為兩個文件的相對位置并沒有發(fā)生變化。而絕對地址則會有問題,因為地址是唯一的路徑。所以在開發(fā)網(wǎng)頁的時候建議讀者盡量采用相對地址。
2. 圖片格式
網(wǎng)頁中加載圖像如果太大會造成網(wǎng)頁加載速度慢,太小圖片會顯示不清晰,在網(wǎng)頁中選擇合適的圖片格式加載顯得尤為重要,常用的圖片格式主要有jpg、png和gif三種格式,接下將分別進行詳細講解。
(1)jpg格式
jpg格式的圖片是一種有損壓縮的圖像格式,即每次修改圖片都會造成一些圖像數(shù)據(jù)的丟失。jpg是特別為照片圖像設(shè)計的文件格式,可以很好地處理大面積色調(diào)的圖像,一般在網(wǎng)頁中用來展示色彩豐富的圖像。如圖2.18所示。
圖2.18 jpg格式圖片顯示效果
(2)png格式
png格式的圖片相對于jpg、gif格式最大的優(yōu)點是體積小,支持alpha透明(全透明、半透明、全不透明),可以很好地理透明方式的圖片,比如網(wǎng)頁中的logo圖片可以在不同的背景底色下完美展現(xiàn)。如圖2.19所示,但png不支持動畫。另外需要注意,IE6,可以支持png-8,但是在處理png-24的透明時會顯示為灰色。通常,圖片保存為png-8會在同等質(zhì)量下獲得比gif更小的體積,而半透明的圖片只能使用png-24。
圖2.19 png格式圖片顯示效果
(3)gif格式
gif格式圖片最重要的特點是支持動畫,可以很好地處理動畫效果的圖片,如網(wǎng)頁中的廣告圖片。如圖2.20所示。同時gif是一種無損的圖像格式,修改圖片幾乎不會造成圖像數(shù)據(jù)的丟失。而且gif也支持透明(全透明和全不透明),因此很適合在網(wǎng)頁中使用。但gif只能處理256種顏色,在網(wǎng)頁制作中,常用于logo、小圖標及其他色彩相對單一的圖像。
圖2.20 gif格式圖片顯示效果
<img>標簽除了src屬性外,還包括一些其他屬性,如表2.6所示。
表2.6中簡單描述了img標簽中常用的屬性,為了使初學者更好地理解和應(yīng)用這些屬性,接下來進行詳細講解。
1. alt屬性
alt屬性是圖片顯示不出來時的提示文字。當設(shè)置了alt屬性后,如果圖片正常顯示的話,是看不到任何效果的,只有當圖片地址出問題導致圖片不顯示時,才可以看到alt的提示信息。接下來通過案例來演示alt屬性,如例2-14所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>圖像標簽</title> 6 </head> 7 <body> 8 <img src="qianfeng.jpg"> 9 <img src="qianfengError.jpg" alt="千鋒教育"> 10 </body> 11 </html>
運行結(jié)果如圖2.21所示。
圖2.21 alt屬性顯示效果
2. title屬性
title屬性是鼠標移到圖片上的提示文字。當設(shè)置了title屬性后,如果鼠標移入到圖片上時,就會顯示title的提示信息。接下來通過案例來演示title屬性,如例2-15所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>圖像標簽</title> 6 </head> 7 <body> 8 <img src="qianfeng.jpg" title="千鋒教育"> 9 </body> 10 </html>
運行結(jié)果如圖2.22所示。
圖2.22 title屬性顯示效果
alt屬性和title屬性都是有利于SEO搜索引擎的優(yōu)化和用戶體驗的提升,只是它們展示的方式不一樣。
2.3.8 鏈接標簽
單個網(wǎng)頁不能容納網(wǎng)站需要的所有信息,需要多個網(wǎng)頁構(gòu)成,這時就點擊鏈接可以從一張網(wǎng)頁跳轉(zhuǎn)到另一張網(wǎng)頁,如圖2.23所示。
圖2.23鏈接效果展示
HTML中使用<a></a>標簽來定義鏈接部分實現(xiàn)網(wǎng)頁的跳轉(zhuǎn),其語法格式如下。
<a href=“鏈接頁面地址” target=“鏈接打開的方式”>鏈接對象</a>
接下來通過案例來演示鏈接標簽,如例2-16所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>鏈接標簽</title> 6 </head> 7 <body> 8 <a href="2-15.html">打開一個新的網(wǎng)頁</a> 9 <a >千鋒官網(wǎng)</a> 10 <a href="../照片.rar">下載壓縮包文件</a> 11 </body> 12 </html>
運行結(jié)果如圖2.24所示。
圖2.24 鏈接標簽顯示效果
鏈接和圖像一樣,地址可以是相對地址或絕對地址。鏈接除了可以鏈接地址外,還可以鏈接其他的元素(壓縮包,word文檔,PPT文檔等)。例2-16中第一個鏈接打開的是一個本地中的相對地址,第二個鏈接打開的是一個網(wǎng)絡(luò)上的絕對地址,第三個鏈接點擊后會下載一個壓縮包文件。
鏈接可以針對文字,也可以針對圖片,當點擊圖片時會打開一個新的網(wǎng)頁,接下來通過案例來演示,如例2-17所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>鏈接標簽</title> 6 </head> 7 <body> 8 <a href="2-15.html"> 9 <img src="qianfeng.jpg"> 10 </a> 11 </body> 12 </html>
運行結(jié)果如圖2.25所示。
圖2.25 鏈接圖片的顯示效果
例2-16、2-17中<a>標簽只定義了href屬性,<a>標簽除了href屬性外還包含target和name兩個重要屬性,下面就來分別介紹<a>標簽的這三個屬性。
1. href屬性
herf屬性就是來指定鏈接目標的url地址,為<a>標簽定義herf屬性后,它就有了鏈接的功能。
2.name屬性
有些網(wǎng)頁的內(nèi)容較多,頁面過長,如百度百科千鋒教育,只能不斷的拖動滾動條來瀏覽網(wǎng)頁,查看所需要的內(nèi)容,效率較低,而且很不方便,這時可以通過<a>標簽的name屬性實現(xiàn)站內(nèi)跳轉(zhuǎn),這種站內(nèi)的跳轉(zhuǎn)的方式也稱錨點操作,接下來通過案來演示name屬性的作用,如例2-18所示。
1 <!doctype html>
2 <html>
3 <head>
4 <meta charset="utf-8">
5 <title>鏈接標簽</title>
6 </head>
7 <body>
8 <a href="#h5Pos">HTML5</a>
9 <a href="#phpPos">PHP</a>
10 <p>點擊上面的鏈接可跳轉(zhuǎn)到指定的位置</p>
11 <a name="h5Pos">HTML5的內(nèi)容</a>
12 <p>HTML5</p>
13 <p>HTML5</p>
14 <p>HTML5</p>
15 <p>HTML5</p>
16 <p>HTML5</p>
17 <a name="phpPos">PHP的內(nèi)容</a>
18 <p>PHP</p>
19 <p>PHP</p>
20 <p>PHP</p>
21 <p>PHP</p>
22 <p>PHP</p>
23 </body>
24 </html>
運行結(jié)果如圖2.26所示。
3.target屬性
target屬性用于指定鏈接頁面的打開方式,其取值如表2.7所示
目前常用的取值有_self和_blank兩種,接下來通過案例來演示這兩種取值的功能,如例2-19所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>鏈接標簽</title> 6 </head> 7 <body> 8 <a href="2-3.html" target="_self">當前窗口打開鏈接</a> 9 <a href="2-3.html" target="_blank">新窗口打開鏈接</a> 10 </body> 11 </html>
運行結(jié)果如圖2.27所示。
圖2.27 target屬性的顯示效果
一般情況下,target只用到“_self”和“_blank”這兩個屬性值,其他兩個不需要深究,因為幾乎用不到。
2.3.9 列表標簽
列表是網(wǎng)頁中一種常用的數(shù)據(jù)排列方式,在網(wǎng)頁中到處都可以看到列表的身影,如圖2.28、圖2.29,都是網(wǎng)頁中常見的列表。
HTML中列表分為有序列表、無序列表和定義列表三種,下面將分別介紹這三種列表。
1. 有序列表
在HTML中用<ol>標簽表示有序列表,列表項目用<li>標簽表示,列表項目有先后順序之分,因此稱為有序列表。接下來通過案例來了解有序列表,如例2-20所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>鏈接標簽</title> 6 </head> 7 <body> 8 <ol> 9 <li>HTML</li> 10 <li>CSS</li> 11 <li>JavaScript</li> 12 <li>PHP</li> 13 <li>JAVA</li> 14 </ol> 15 </body></html>
運行結(jié)果如題2.30所示。
圖2.30 有序列表展示效果
圖2.31中可以看到前面的阿拉伯數(shù)字是默認效果,可以通過有序列表的type屬性來設(shè)置不同的顯示效果,其取值如表2.8所示。
接下來通過案例來演示type屬性的用法,如例2-21所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>列表標簽</title> 6 </head> 7 <body> 8 <ol type="a"> 9 <li>HTML</li> 10 <li>CSS</li> 11 <li>JavaScript</li> 12 <li>PHP</li> 13 <li>Java</li> 14 </ol> 15 </body> 16 </html>
運行結(jié)果如圖2.31所示。
圖2.31 有序列表展示效果
在有序列表中,除了type屬性之外,還可以為<ol>定義start屬性用于規(guī)定項目符號的起始值,為<li>定義value屬性用來規(guī)定項目符號的數(shù)字。
以上的效果都是HTML自帶效果,如果效果上有更多的需求,可以配合CSS來完成,例如圖2.32的效果,讀者可以在學習完CSS時再來實現(xiàn)。
圖2.32 CSS美化有序列表
2. 無序列表
在HTML中用<ul>標簽表示無序列表,列表項目用<li>標簽表示,列表項目沒有先后順序之分,因此稱為無序列表。接下來通過案例來演示無序列表,如例2-22所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset=”utf-8”> 5 <title>列表標簽</title> 6 </head> 7 <body> 8 <ul> 9 <li>HTML</li> 10 <li>CSS</li> 11 <li>JavaScript</li> 12 <li>PHP</li> 13 <li>JAVA</li> 14 </ul> 15 </body> 16 </html>
運行結(jié)果如圖2.33所示。
圖2.33 無序列表展示效果
跟有序列表類似,讀者可以看到默認情況下無序列表前面會有一個黑色的小圓點,同樣可以通過type屬性修改其顯示效果,type屬性取值如表2.9。
接下來通過案例來演示無序列表type屬性取值,如例2-23所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset=”utf-8”> 5 <title>列表標簽</title> 6 </head> 7 <body> 8 <ul type=”circle”> 9 <li>HTML</li> 10 <li>CSS</li> 11 <li>JavaScript</li> 12 <li>PHP</li> 13 <li>JAVA</li> 14 </ul> 15 </body> 16 </html>
運行結(jié)果如圖2.34所示。
圖2.34 無序列表展示效果
<li></li>之間相當于一個容器,可以容納所有的元素。但是<ul></ul>中只能嵌套<li></li>,不允許直接在<ul></ul>標記中輸入文字。
3. 定義列表
定義列表通常用于對專業(yè)術(shù)語或名詞進行解釋和描述,與有序列表和無序列表不同,定義列表項目前沒有任何項目符號。其語法如下。
<dl> <dt>定義名詞</dt> <dd>名詞解釋和描述</dd> …… </dl>
上面的語法中,<dl></dl>標簽用于定義列表,<dt></dt>和<dd></dd>并列嵌套于<dl></dl>中,其中<dt></dt>標簽用于定義專業(yè)術(shù)語或名詞,<dd></dd>標簽用于對名詞進行解釋和描述。一對<dt></dt>可以對應(yīng)多對<dd></dd>,即一個名詞可以有多個解釋和描述。接下來通過案例來演示定義列表,如例2-24所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>列表標簽</title> 6 </head> 7 <body> 8 <dl> 9 <dt>HTML</dt> 10 <dd>超文本標記語言</dd> 11 <dt>CSS</dt> 12 <dd>層疊樣式表</dd> 13 <dt>JavaScript</dt> 14 <dd>網(wǎng)頁腳本語言</dd> 15 </dl> 16 </body> 17 </html>
運行結(jié)果如圖2.35所示。
圖2.35 定義列表展示效果
定義列表在實際開發(fā)中不常用,大多數(shù)情況還是使用有序列表和無序列表,后面章節(jié)中還會詳細講解HTML標簽使用規(guī)范。
2.3.10 <div>與<span>
div全稱為division,“分割、分區(qū)”的意思,<div>標簽用來劃分一個區(qū)域,相當于一塊區(qū)域容器,可以容納段落、標題、表格、圖像等各種網(wǎng)頁元素。即HTML中大多數(shù)的標簽都可以嵌套在<div>標簽中,<div>中還可以嵌套多層<div>,用來將網(wǎng)頁分割成獨立的、不同的部分,來實現(xiàn)網(wǎng)頁的規(guī)劃和布局。如圖2.36為阿里汽車和潮電影網(wǎng)站的布局。都是使用<div>標簽來實現(xiàn)的。
圖2.36 淘寶網(wǎng)區(qū)塊展示效果
接下來通過案例來簡單演示<div>標簽的使用,如例2-25所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>div/span</title> 6 </head> 7 <body> 8 <div>區(qū)域1 9 <p>這是一個段落</p> 10 </div> 11 <div>區(qū)域2 12 <h6>這是一個段落</h6> 13 </div> 14 <div>區(qū)域3 15 <hr align="left" width="50" color="#00FF66"> 16 </div> 17 </body> 18 </html>
運行結(jié)果如圖2.37所示。
圖2.37 div標簽展示效果
<span>標簽是用來修飾文字的,也叫做內(nèi)聯(lián)標簽 ,如圖2.38。
圖2.38 千鋒教育文字修飾效果
接下來通過案例來演示<span>標簽,如例2-26所示。
1 <!doctype html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 <title>div/span</title> 6 </head> 7 <body> 8 <span>文字修飾1</span> 9 <span>文字修飾2</span> 10 <span>文字修飾3</span> 11 </body> 12 </html>
運行結(jié)果如圖2.39所示。
圖2.39 span標簽展示效果
<div>標簽和<span>標簽,多數(shù)情況下需要配合CSS樣式,在后續(xù)的章節(jié)中,再詳細的講解<div>標簽和<span>標簽的用法。
2.4 本章小結(jié)
通過本章的學習,首先介紹HTML語法的發(fā)展歷史和HTML語義化的含義。然后對HTML常用標簽進行了講解,如標題、段落、列表等。通過本章的學習,能掌握HTML常用標簽,能初步編寫基本的HTML網(wǎng)頁。
2.5 習題
1. 填空題
(1) 網(wǎng)頁加載時常用圖片的格式為 、 、 。
(2) 圖像標簽的屬性src用于指定圖像 和 的屬性。
(3) 文件的路徑可以分為 和 兩種。
(4) <strong>標簽強調(diào)文本 。
(5) 是為了實現(xiàn)HMTL向XML過渡,讓作者按照統(tǒng)一的風格來編寫標簽。
2.選擇題
(1) 在一個網(wǎng)頁中,只能出現(xiàn)一次的標題標簽是( )。
A.<h1> B.<h2>
C.<h3> D.<h4>
(2) a標簽的target屬性中哪一個值是在一個全新的空白窗口中打開鏈接( )。
A._self B._blank
C._top D._parent
(3) 定義列表不包括下面哪個標簽( )。
A.<dl> B.<dt>
C.<dd> D.<ol>
(4) 強調(diào)字體是斜體的標簽是( )。
A.<sup> B.<del>
C.<em> D.<strong>
(5) 設(shè)置水平線對齊方式的屬性是( )。
A.size B.a(chǎn)lign
C.width D.color
3.思考題
(1) 請簡述什么是HTML語義化?
(2) 請簡述有序列表與無序列表之間的區(qū)別?
內(nèi)容來源書籍:《HTML5從入門到精通》,一本W(wǎng)eb前端實用性綜合技術(shù)圖書。
簡介:《HTML5從入門到精通》倡導“快樂學習,實戰(zhàn)就業(yè)”的理念,作為初學者高品質(zhì)的入門教材之一,免費提供一站式教學服務(wù)包,附贈配套PPT、教學視頻、教學大綱、考試系統(tǒng)、測試題等資源。且書本內(nèi)容覆蓋全面、講解詳細,其中包括標簽語義化、標簽使用規(guī)范、選擇器類型、盒模型、標簽分類、樣式重置、CSS優(yōu)化、Photoshop切圖處理、整頁制作、CSS3新樣式、HTML5新功能等。與此同時,本教材通過總結(jié)、歸納HTML、CSS、CSS3動畫與3D及移動端布局與響應(yīng)式開發(fā)等核心知識點,并從項目開發(fā)的實際需求入手,將理論知識與實際應(yīng)用相結(jié)合,以此幫助初學者全面、系統(tǒng)、深入、透徹地理解HTML5的基礎(chǔ)知識和技術(shù),使他們快速地成長為初級程序員,并擁有一定的項目開發(fā)經(jīng)驗,從而在職場中擁有一個較高的起點。
*請認真填寫需求信息,我們會在24小時內(nèi)與您取得聯(lián)系。