首頁 web前端 html教學 HTMLimg標籤的alt屬性和title屬性使用介紹分析

HTMLimg標籤的alt屬性和title屬性使用介紹分析

Mar 06, 2017 pm 05:09 PM

HTML的img標籤:alt屬性和title屬性,很多人看來對這兩個屬性感到迷惑,所以我寫下我的想法,如何去用它們 當瀏覽器賣主扭曲了標準並且自顧自的不按規則去做一些事,他們可能會造成一些問題,或者至少產生了混淆。例子之一就是一些瀏覽器處理alt屬性(一般會被錯誤的稱為alt標籤)的方式,例如擁有大量使用者的Windows的IE瀏覽器。

取代文字(alt text)並不是用來做提示(tool tip),或者更確切的說,它並不是為圖片提供額外說明訊息的。相反地​​,title屬性才應該用來為元素提供額外說明資訊。這些資訊在大部分影像瀏覽器裡顯示為提示(tool tip),雖然製造商可以任意採取其他方式渲染title屬性的文字。

很多人看來對這兩個屬性感到迷惑(最近這個問題在Web Standards Group郵件列表裡變多了), 所以我寫下我的想法,如何去用它們。

alt屬性

為無法顯示映像、表單或applets的使用者代理程式(UA),alt屬性用來指定替換文字。替換文字的語言由lang屬性指定。 來源:How to specify alternate text.

Alt屬性(注意是“屬性”而不是“標籤”)包括替換說明,對於圖像和圖像熱點是必須的。它只能用在img、area和input元素中(包括applet元素)。對於input元素,alt屬性意在用來替換提交按鈕的圖片。例如:.

使用alt屬性是為了給那些不能看到你文件中圖像的瀏覽者提供文字說明。這包括那些使用本來就不支援圖像顯示或圖像顯示被關閉的瀏覽器的用戶,視覺障礙的用戶和使用螢幕閱讀器的用戶。替換文字是用來替代圖像而不是提供額外說明文字的。

在寫替換文字前仔細想想,保證那些文字確實為那些看不到圖像的人提供了說明信息,並且在上下文中有意義。對於那些裝飾性的圖片可以使用空的值(alt="",引號中間沒有空格),而不是使用不相關的替換文字例如“blue bullet”或“spacer.gif”。不要忽略它,如果你忽略了,那麼一些螢幕閱讀器會直接閱讀圖像檔案的檔案名,那些文字瀏覽器,例如Lynx會顯示圖像檔案的檔案名,而那對於你的瀏覽者就沒什麼用了。

包含文字的圖像圖片設定替換文字是最簡單的,圖像中包含的文字一般來說就可以作為alt屬性值。

至於替換文字的長度,看看WCAG 2.0(網站內容可用性指南2.0)是怎麼說的:

Alt屬性值得長度必須少於100個英文字元或使用者必須保證替換文字盡可能的短。

我把它理解為「盡可能短,盡可能長」。

即使你想讓它顯示為提示(tool tip),也不要給文字元素使用alt屬性,這並不是它的用法。我至今所知,那樣做僅能在Windows的IE瀏覽器和古老的Netscape 4.*(windows版本)有效。沒有一個Mac的瀏覽器會將它顯示為提示(tool tip)。

當瀏覽器顯示替換文字為提示(tool tip)後,那些錯誤使用alt屬性的行為也受到了鼓勵。有些人開始寫無意思的替換文字,因為他們傾向於認為它是一個額外的說明訊息,而不是不能顯示圖像的替換。其他人可能不想讓提示(tool tip)出現,然後就完全忽略了寫alt屬性值。這些錯誤的做法,都給那些無法看到圖像的瀏覽者造成了困難。

額外的說明資訊和非本質的資訊請使用title屬性。

title屬性

title屬性為設定該屬性的元素提供建議性的資訊。
來源: The title attribute.

title屬性可以用在除了base,basefont,head,html,meta,param,script和title之外的所有標籤。但是並不是必須的。可能這正是為什麼很多人不明白何時使用它。

使用title屬性提供非本質的額外資訊。大部分的視覺化瀏覽器在滑鼠懸浮在特定元素上時顯示title文字為提示訊息(tool tip),然而這又由製造商來決定如何渲染title文字。有些瀏覽器會將title文字顯示在狀態列裡。例如早期版本的Safari瀏覽器。

title屬性有一個很好的用途,即為連結添加描述性文字,特別是當連接本身並不是十分清楚的表達了連結的目的。這樣就使得訪客知道那些連結將會帶他們到什麼地方,他們就不會載入一個可能完全不感興趣的頁面。另外一個潛在的應用就是為圖像提供額外的說明訊息,例如日期或其他非本質的資訊。

title屬性值可以比alt屬性值設定的更長。不過要注意的是,有些瀏覽器會截斷過長的文字(例如工具提示或其他)。例如Mozilla核心的瀏覽器只能顯示最先的60個字元。這被認為是一個Mozilla bug,這是你要注意的。

使用前先考慮

我的建議是保證替換文字(alt text)精要。在大多數的應用程式裡,都應該留白,alt=""(注意兩引號中沒有空格)。 想想那些圖像,為那些瀏覽者提供了什麼樣的信息,你應該用什麼文字去描述它,或者你該為看不到圖像的人提供什麼信息? 將替換文字寫成「照片:站在大樓外的CEO,穿著灰色西裝和黑色領帶,望著天」對於看不到圖像的人真的有幫助?如果你覺得是,那你就寫吧。在很多情況下,我覺得讓替換文字留白比較好。

對於title屬性,比較難於給予嚴格的使用說明。我大部分用在那些無法自我釋意的連結上,像是同一頁上的相同的連結文字,不同的連結頁面。有時候也為一些按鈕或表單元素提供更多的說明文字。

更長的描述

當一個圖片需要更長的描述,而超過alt屬性的限制,那麼還有一些選擇。

longdesc屬性可以用來提供連結到一個包含圖片文字描述的單獨頁面。這意味著把瀏覽者連結到另外的頁面,這可能會造成理解上的困難。另外瀏覽器對於longdesc屬性的支援也是不一致的,而且不是非常好。

longdesc屬性可以包含一個連結到目前文件的其他部分(錨點)來取代連結到另外的頁面。在Accessibility footnotes, Andy Clarke很好的解釋說明瞭如何應用。

描述連結(D links)可以用來補充longdesc。一個描述連結就是一個常規的鏈接,連接到含有替換文字的頁面。該連結被置於圖像的旁邊,並且在所有瀏覽器中都是可是的。對於它的有效性人們有很多不同意見,我的個人意見不大喜歡這個注意。 WCAG也是,在他們的工作草案HTML Techniques for WCAG 2.0中,描述連結是被「不贊成」的。

如果對圖片的長的描述對於任何瀏覽者都有用,那麼你得考慮讓它簡單的顯示在同一個文檔裡面,而不是鏈接到其他頁面里或者藏起來。這樣每個人都可以閱讀。這是一種簡單低技術含量的方法。

更多HTMLimg標籤的alt屬性和title屬性使用介紹分析相關文章請關注PHP中文網!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1665
14
CakePHP 教程
1423
52
Laravel 教程
1321
25
PHP教程
1269
29
C# 教程
1249
24
了解HTML,CSS和JavaScript:初學者指南 了解HTML,CSS和JavaScript:初學者指南 Apr 12, 2025 am 12:02 AM

WebDevelovermentReliesonHtml,CSS和JavaScript:1)HTMLStructuresContent,2)CSSStyleSIT和3)JavaScriptAddSstractivity,形成thebasisofmodernWebemodernWebExexperiences。

HTML:結構,CSS:樣式,JavaScript:行為 HTML:結構,CSS:樣式,JavaScript:行為 Apr 18, 2025 am 12:09 AM

HTML、CSS和JavaScript在Web開發中的作用分別是:1.HTML定義網頁結構,2.CSS控製網頁樣式,3.JavaScript添加動態行為。它們共同構建了現代網站的框架、美觀和交互性。

HTML,CSS和JavaScript的未來:網絡開發趨勢 HTML,CSS和JavaScript的未來:網絡開發趨勢 Apr 19, 2025 am 12:02 AM

HTML的未來趨勢是語義化和Web組件,CSS的未來趨勢是CSS-in-JS和CSSHoudini,JavaScript的未來趨勢是WebAssembly和Serverless。 1.HTML的語義化提高可訪問性和SEO效果,Web組件提升開發效率但需注意瀏覽器兼容性。 2.CSS-in-JS增強樣式管理靈活性但可能增大文件體積,CSSHoudini允許直接操作CSS渲染。 3.WebAssembly優化瀏覽器應用性能但學習曲線陡,Serverless簡化開發但需優化冷啟動問題。

HTML的未來:網絡設計的發展和趨勢 HTML的未來:網絡設計的發展和趨勢 Apr 17, 2025 am 12:12 AM

HTML的未來充滿了無限可能。 1)新功能和標準將包括更多的語義化標籤和WebComponents的普及。 2)網頁設計趨勢將繼續向響應式和無障礙設計發展。 3)性能優化將通過響應式圖片加載和延遲加載技術提升用戶體驗。

HTML與CSS vs. JavaScript:比較概述 HTML與CSS vs. JavaScript:比較概述 Apr 16, 2025 am 12:04 AM

HTML、CSS和JavaScript在網頁開發中的角色分別是:HTML負責內容結構,CSS負責樣式,JavaScript負責動態行為。 1.HTML通過標籤定義網頁結構和內容,確保語義化。 2.CSS通過選擇器和屬性控製網頁樣式,使其美觀易讀。 3.JavaScript通過腳本控製網頁行為,實現動態和交互功能。

HTML:建立網頁的結構 HTML:建立網頁的結構 Apr 14, 2025 am 12:14 AM

HTML是構建網頁結構的基石。 1.HTML定義內容結構和語義,使用、、等標籤。 2.提供語義化標記,如、、等,提升SEO效果。 3.通過標籤實現用戶交互,需注意表單驗證。 4.使用、等高級元素結合JavaScript實現動態效果。 5.常見錯誤包括標籤未閉合和屬性值未加引號,需使用驗證工具。 6.優化策略包括減少HTTP請求、壓縮HTML、使用語義化標籤等。

HTML與CSS和JavaScript:比較Web技術 HTML與CSS和JavaScript:比較Web技術 Apr 23, 2025 am 12:05 AM

HTML、CSS和JavaScript是構建現代網頁的核心技術:1.HTML定義網頁結構,2.CSS負責網頁外觀,3.JavaScript提供網頁動態和交互性,它們共同作用,打造出用戶體驗良好的網站。

HTML:是編程語言還是其他? HTML:是編程語言還是其他? Apr 15, 2025 am 12:13 AM

HTMLISNOTAPROGRAMMENGUAGE; ITISAMARKUMARKUPLAGUAGE.1)htmlStructures andFormatSwebContentusingtags.2)itworkswithcsssforstylingandjavascript for Interactivity,增強WebevebDevelopment。

See all articles