การใช้ alt tag สำหรับ anchor link ถูกต้องหรือไม่เช่น
<a href="#" class="test" alt="Something" src="sfasfs" ></a>
การใช้ alt tag สำหรับ anchor link ถูกต้องหรือไม่เช่น
<a href="#" class="test" alt="Something" src="sfasfs" ></a>
คำตอบ:
สิ่งเหล่านี้ตอบได้ดีที่สุดโดยดูจากข้อกำหนดอย่างเป็นทางการ:
ไปที่ข้อกำหนด: https://www.w3.org/TR/html5/
ค้นหา " a
element": https://www.w3.org/TR/html5/text-level-semantics.html#the-a-element
ตรวจสอบ "แอตทริบิวต์เนื้อหา" ซึ่งแสดงรายการแอตทริบิวต์ที่อนุญาตทั้งหมดสำหรับa
องค์ประกอบ:
- แอตทริบิวต์ส่วนกลาง
href
target
download
rel
hreflang
type
ตรวจสอบ "แอตทริบิวต์ส่วนกลาง" ที่เชื่อมโยง: https://www.w3.org/TR/html5/dom.html#global-attributes
ดังที่คุณจะเห็นalt
ไม่อนุญาตให้ใช้แอตทริบิวต์ในa
องค์ประกอบ
นอกจากนี้คุณจะสังเกตเห็นว่าsrc
แอตทริบิวต์ไม่ได้รับอนุญาตเช่นกัน
เมื่อตรวจสอบความถูกต้องของ HTMLข้อผิดพลาดเหล่านี้จะถูกรายงานถึงคุณ
หมายเหตุว่าข้างต้นสำหรับHTML5ซึ่งเป็นมาตรฐาน HTML W3C จาก 2014 ในปี 2016, HTML 5.1กลายเป็นมาตรฐาน HTML ถัดไป การค้นหาแอตทริบิวต์ที่อนุญาตจะทำงานในลักษณะเดียวกัน คุณจะเห็นว่าa
องค์ประกอบสามารถมีแอตทริบิวต์อื่นใน HTML rev
5.1:
คุณสามารถค้นหารายละเอียด HTML ทั้งหมด (รวมถึงมาตรฐานล่าสุด) บนของ W3Cสถานะ HTML ปัจจุบัน
title
รายการ
สำหรับจุดยึดคุณควรใช้ชื่อเรื่องแทน alt ไม่ถูกต้องเป็นองค์ประกอบของไฟล์. ดูhttp://w3schools.com/tags/tag_a.asp
"title" ถูกนำไปใช้อย่างแพร่หลายในเบราว์เซอร์ ลอง:
<a href="#" title="hello">asf</a>
title
ไม่ถูกต้องตามข้อกำหนด HTML5 (แม้ว่าเบราว์เซอร์ส่วนใหญ่จะใช้งานก็ตาม)
ไม่อนุญาตให้ใช้alt
แอตทริบิวต์ (ซึ่งจะเป็นแอตทริบิวต์ไม่ใช่แท็ก) สำหรับa
องค์ประกอบในข้อกำหนด HTML หรือแบบร่าง และดูเหมือนว่าเบราว์เซอร์จะไม่ได้รับการยอมรับว่ามีความสำคัญใด ๆ
เป็นเรื่องลึกลับเล็กน้อยว่าทำไมผู้คนถึงพยายามใช้มัน แต่คำอธิบายที่เป็นไปได้คือพวกเขากำลังทำเช่นนั้นในแบบอะนาล็อกพร้อมalt
แอตทริบิวต์สำหรับimg
องค์ประกอบโดยคาดว่าจะเห็น "คำแนะนำเครื่องมือ" เมื่อวางเมาส์เหนือ มีสองสิ่งที่ผิดกับสิ่งนี้ ขั้นแรกแต่ละองค์ประกอบมีคุณลักษณะของตัวเองซึ่งกำหนดไว้ในข้อกำหนดสำหรับแต่ละองค์ประกอบ ประการที่สอง "คำแนะนำเครื่องมือ" การแสดงalt
คุณลักษณะในเบราว์เซอร์โบราณบางตัวเป็น / เป็นเรื่องแปลกประหลาดหรือแม้แต่ข้อบกพร่องมากกว่าที่จะคาดหวัง alt
แอตทริบิวต์ควรจะนำเสนอให้กับผู้ใช้และถ้าหากภาพที่ตัวเองไม่ได้นำเสนอด้วยเหตุผลใด
หากต้องการสร้าง "คำแนะนำเครื่องมือ" ให้ใช้title
แอตทริบิวต์แทนหรือที่ดีกว่านั้นคือ Google สำหรับ "คำแนะนำเครื่องมือ CSS" และใช้คำแนะนำเครื่องมือที่ใช้ CSS ตามความต้องการของคุณ (อาจมีลักษณะเป็น "เลเยอร์" ที่ซ่อนอยู่ซึ่งจะปรากฏให้เห็นเมื่อวางเมาส์เหนือ)
คุณควรใช้แอตทริบิวต์หัวเรื่องสำหรับแท็กจุดยึดหากคุณต้องการใช้ข้อมูลเชิงอธิบายในลักษณะเดียวกับที่คุณต้องการสำหรับแอตทริบิวต์ alt แอตทริบิวต์หัวเรื่องใช้ได้กับแท็กจุดยึดและไม่มีจุดประสงค์อื่นใดนอกจากการให้ข้อมูลเกี่ยวกับหน้าที่เชื่อมโยง
W3C แนะนำว่าค่าของแอตทริบิวต์ title ควรตรงกับค่าของหัวเรื่องของเอกสารที่เชื่อมโยง แต่ไม่บังคับ
http://www.w3.org/MarkUp/1995-archive/Elements/A.html
อีกทางเลือกหนึ่งและน่าจะเป็นประโยชน์มากกว่าคุณสามารถใช้แอตทริบิวต์การช่วยการเข้าถึง ARIA aria-label
(เพื่อไม่ให้สับสนaria-labeledby
) aria-label
ทำหน้าที่เช่นเดียวกับแอตทริบิวต์ alt สำหรับรูปภาพ แต่สำหรับองค์ประกอบที่ไม่ใช่รูปภาพและรวมถึงการวัดการเพิ่มประสิทธิภาพบางอย่างตั้งแต่การปรับให้เหมาะสมสำหรับโปรแกรมอ่านหน้าจอ
http://www.w3.org/WAI/GL/wiki/Using_aria-label_to_provide_labels_for_objects
หากคุณต้องการอธิบายแท็กจุดยึดโดยปกติแล้วควรใช้แท็ก rel หรือ rev แต่คุณ จำกัด ค่าเฉพาะไม่ควรใช้สำหรับคำอธิบายที่มนุษย์อ่านได้
Rel ทำหน้าที่อธิบายความสัมพันธ์ของหน้าที่เชื่อมโยงกับเพจปัจจุบัน (เช่นถ้าหน้าที่เชื่อมโยงอยู่ถัดไปในอนุกรมตรรกะมันจะเป็น rel = next)
แอตทริบิวต์ rev เป็นความสัมพันธ์ย้อนกลับของแอตทริบิวต์ rel Rev อธิบายความสัมพันธ์ของเพจปัจจุบันกับเพจที่เชื่อมโยง
คุณสามารถดูรายการค่าที่ถูกต้องได้ที่นี่: http://microformats.org/wiki/existing-rel-values
ฉันใช้ชื่อและมันได้ผล!
แอตทริบิวต์ title ให้ชื่อของลิงก์ มีข้อยกเว้นประการหนึ่งคือคำแนะนำเท่านั้น ค่าคือข้อความ ข้อยกเว้นสำหรับลิงก์สไตล์ชีตโดยที่แอตทริบิวต์ title กำหนดชุดสไตล์ชีตทางเลือก
<a class="navbar-brand" href="http://www.alberghierocastelnuovocilento.gov.it/sito/index.php" title="sito dell'Istituto Ancel Keys">A.K.</a>
ผมแปลกใจที่จะเห็นคำตอบทั้งหมดที่ระบุการใช้alt
แอตทริบิวต์ในa
แท็กไม่ถูกต้อง นี่เป็นสิ่งที่ผิดอย่างยิ่ง
Html ไม่บล็อกคุณโดยใช้แอตทริบิวต์ใด ๆ :
<a your-custom-attribute="value">Any attribute can be used</a>
หากคุณถามว่าการใช้alt
แอตทริบิวต์a
นั้นถูกต้องตามความหมายหรือไม่ฉันจะตอบว่า:
NO <img alt="image description" />
มันถูกใช้เพื่ออธิบายภาพชุด
มันเป็นเรื่องของสิ่งที่คุณจะทำกับคุณลักษณะ นี่คือตัวอย่าง:
a::after {
content: attr(color); /* attr can be used as content */
display: block;
color: white;
background-color: blue;
background-color: attr(color); /* This won't work */
display: none;
}
a:hover::after {
display: block;
}
[hidden] {
display: none;
}
<a href="#" color="red">Hover me!</a>
<a href="#" color="red" hidden>In some cases, it can be used to hide it!</a>
อีกครั้งหากคุณถามว่าการใช้แอตทริบิวต์ที่กำหนดเองถูกต้องตามความหมายหรือไม่ฉันจะพูดว่า:
ไม่ใช้data-*
แอตทริบิวต์สำหรับการใช้ความหมาย
อ๊ะคำถามถูกถามในปี 2013
title
แอตทริบิวต์ในแอตทริบิวต์a
ทั่วโลกว่าควรใช้title
แอตทริบิวต์ดังกล่าวในa
หรือไม่