แอตทริบิวต์ชื่อล้าสมัยพฤติกรรมที่ถูกต้องเมื่อจัดการกับแองเคอร์คืออะไร


18

เมื่อทดสอบรหัสของฉันโดยใช้เครื่องมือตรวจสอบความถูกต้องw3 html5ฉันได้รับข้อความเตือนนี้:

คำเตือน : nameแอตทริบิวต์นั้นล้าสมัย ลองพิจารณาวางidแอตทริบิวต์บนคอนเทนเนอร์ที่ใกล้ที่สุดแทน

คำถาม (s):

  • คอนเทนเนอร์ที่ใกล้ที่สุดหมายถึงอะไร
  • ว่าง<a>ตอนนี้เลิก?
  • ฉันควรใช้idแทนname?

คำตอบ:


9

[A] แท็กตัวยึดตำแหน่งว่างเปล่าโดยรวมเลิกใช้แล้วและจุดยึดสามารถชี้ไปยังองค์ประกอบใด ๆ ที่มีรหัสแทนได้หรือไม่

ฉันต้องการข้ามผู้ใช้ไปยังแท็กส่วนหัว (ตามพฤติกรรมเริ่มต้นของ MediaWiki) ซึ่งจำเป็นต้องมีลิงก์ในหน้า แต่ใช่คุณสามารถระบุ ID ขององค์ประกอบใด ๆ


17

หากคุณต้องการที่จะข้ามไปให้ผู้ใช้สามารถเชื่อมโยงในหน้ายังเป็นที่รู้จักตัวระบุส่วนคุณสามารถตั้งค่าidแอตทริบิวต์ (ซึ่งจะใช้สำหรับการมากกว่าเพียงแค่ frag รหัส ) บนใด ๆองค์ประกอบ จากนั้นใช้ค่าปกติ#ใน URL ของhrefแอตทริบิวต์ของaองค์ประกอบ นี่คือตัวอย่าง:

<body>
  <p>Despite the many
    <a href="#benefits-of-gum-chewing">benefits</a>
    you may experience while chewing gum, there are also many drawbacks,
    especially with 
    <a href="http://www.example.org/sugar.html#cons">non-sugarless</a>
    gum.</p>
  ...
  <section id="benefits-of-gum-chewing">
    <h1>Benefits of Gum Chewing</h1>
    ...
  </section>
</body>

เมื่อเขียนหน้าของตัวเองฉันชอบที่จะให้idแต่ละ<section>แท็ก (HTML5) แม้ว่าฉันจะไม่ได้วางแผนที่จะใช้มัน ค่าของidเป็นเวอร์ชันที่เป็นมิตรกับ URL ของเนื้อหาส่วนหัว คุณสามารถทำเอฟเฟกต์เดียวกันได้โดยกำหนดค่าเดียวกันidให้กับ<h1>ฯลฯ

สุดท้าย<a>แท็กเปล่าจะไม่คัดค้านตามที่ระบุไว้ในข้อกำหนด HTML5 :

หากaองค์ประกอบนั้นไม่มีhrefแอตทริบิวต์แสดงว่าองค์ประกอบนั้นเป็นตัวยึดตำแหน่งที่ลิงก์อาจถูกวางไว้ ...

นอกจากนี้ยังใช้กับareaองค์ประกอบเดียวกัน:

hrefแอตทริบิวต์บนaและareaองค์ประกอบไม่จำเป็นต้อง; เมื่อองค์ประกอบเหล่านั้นไม่มีhrefแอตทริบิวต์พวกเขาจะไม่สร้างการเชื่อมโยงหลายมิติ


2

สำหรับ HTML5, nameแอตทริบิวต์จะเลิกตอนนี้เพื่อให้วิธีการที่จะใช้ในสถานที่ของid nameมิฉะนั้นทุกอย่างอื่นจะเหมือนกัน

<a> ไม่เลิกใช้


ในขณะที่คำตอบนี้ดีลิงก์ไปยังเอกสารหรือบทความที่อธิบายถึงการคัดค้านจะทำให้ดียิ่งขึ้น
Stephen Ostermiller

1
โดยเฉพาะอย่างยิ่งมันเป็นnameคุณลักษณะในองค์ประกอบสมอที่เลิก / ล้าสมัย nameแอตทริบิวต์ยังคงถูกต้องสมบูรณ์ (และจำเป็น) ในองค์ประกอบอื่น ๆ
MrWhite
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.