ทำไมไม่ควรใช้ & quot; เพื่อหลีกเลี่ยงคำพูดเดียว?


158

ตามที่ระบุไว้ในคำพูดเดียวใน HTML กลายเป็นที่นิยมเมื่อไหร่? และเครื่องหมายอัญประกาศ Jquery ในแอตทริบิวต์รายการ Wikipedia บน HTML ระบุว่าต่อไปนี้:

อักขระที่มีเครื่องหมายคำพูดเดี่ยว ('), เมื่อใช้เพื่ออ้างถึงค่าของแอททริบิวจะต้องได้รับการยกเว้นด้วย'หรือ'(ไม่ควรหลีกเลี่ยงในฐานะ'ยกเว้นยกเว้นในเอกสาร XHTML) เมื่อปรากฏภายในค่าแอ็ตทริบิวต์

ทำไมไม่ควร'ใช้ นอกจากนี้ยัง"ปลอดภัยที่จะใช้แทน"หรือไม่



7
โปรดทราบว่า IE8 'ไม่สนับสนุน
Paul D. Waite

คำตอบ:


178

"อยู่ในรายการอย่างเป็นทางการของเอนทิตี HTML 4 ที่ถูกต้องแต่'ไม่ใช่

จากC.16 การอ้างอิงอักขระที่มีชื่อ ' :

การอ้างอิงอักขระที่มีชื่อ' (apostrophe, U + 0027) ถูกนำมาใช้ใน XML 1.0 แต่ไม่ปรากฏใน HTML ผู้เขียนจึงควรใช้'แทน 'การทำงานตามที่คาดไว้ในตัวแทนผู้ใช้ HTML 4


3
"อยู่ในรายการแม้ว่าดังนั้นควรจะตกลง
Bennett McElwee

9
วันนี้เกิดขึ้นที่เครื่อง IE8 & apos; ไม่ได้แยกวิเคราะห์ดังนั้นผู้ใช้จึงเห็นรหัส แทนที่ด้วย & # 39; แก้ไขปัญหา
Michele Gargiulo

9
และ aquot; ไม่มีสิ่งทดแทนสำหรับ & apos; เป็นหนึ่งเดียวและอื่น ๆ เป็นสองเท่า
RichardTheKiwi

FYI: HTML5 รองรับทั้งเอนทิตี้ของ
Tarol

30

' ไม่ได้เป็นส่วนหนึ่งของมาตรฐาน HTML 4

" คือแม้ว่าดังนั้นจึงเป็นเรื่องปกติที่จะใช้


8
สิ่งนี้จะเป็นคำตอบเมื่อ & aquot; = "ไม่ใช่ 'มันเหมือนกับการแนะนำเครื่องหมายโคลอนสำหรับเซมิโคลอน ...
RichardTheKiwi

12
@Richardakacyberkiwi อ่านคำถามจนจบ
ColBeseder

3
@Anon .: ตอนนี้เป็นส่วนหนึ่งของมาตรฐานของ' HTML
Paul D. Waite

29

" ใช้ได้ทั้งใน HTML5 และ HTML4

'เป็นที่ถูกต้องในHTML5แต่ไม่HTML4 อย่างไรก็ตามเบราว์เซอร์ส่วนใหญ่รองรับ'HTML4 อยู่ดี


10
โปรดทราบว่า IE 8 'ไม่สนับสนุน
Paul D. Waite

17

หากคุณต้องการเขียน mark-up ที่ถูกต้องในเชิงความหมายแม้ใน HTML5 คุณจะต้องไม่ใช้'เพื่อหลีกเลี่ยงคำพูดเดียว แม้ว่าฉันสามารถจินตนาการว่าคุณหมายถึงอะพอสโทรฟีแทนที่จะเป็นคำพูดเดียว

คำพูดเดียวและเครื่องหมายอัญประกาศเดี่ยวไม่เหมือนกัน แต่มีความหมายแม้ว่ามันอาจดูเหมือนกัน

นี่คืออะพอสโทรฟีหนึ่งอัน

ใช้'เพื่อแทรกหากคุณต้องการการสนับสนุน HTML4 (แก้ไข)

ในภาษาอังกฤษแบบอังกฤษจะใช้เครื่องหมายคำพูดเดี่ยวเช่นนี้:

"เขาบอกให้ฉันลองทำดู" ฉันพูด

คำพูดมาเป็นคู่ คุณสามารถใช้ได้:

<p><q>He told me to <q>give it a try</q></q>, I said.<p>

เพื่อให้คำพูดซ้อนในวิธีที่ถูกต้องทางความหมายการชะลอการแทนที่ของอักขระที่แท้จริงไปยังเอ็นจิ้นการเรนเดอร์ การทดแทนนี้สามารถได้รับผลกระทบจากกฎ CSSเช่น:

q {
  quotes: '"' '"' '<' '>';
} 

บทความที่เก่า แต่ดูเหมือนจะยังมีความเกี่ยวข้องเกี่ยวกับการที่ถูกต้องความหมายขึ้นเครื่องหมาย: ปัญหากับ EM 'n TH (และอื่น ๆ Shady ตัวละคร)

(แก้ไข)สิ่งนี้เคยเป็น:

ใช้ 'เพื่อแทรกหากคุณต้องการการสนับสนุน HTML4

แต่อย่างที่ @James_pic ชี้ให้เห็นนั่นไม่ใช่คำพูดเดียว แต่เป็น "เครื่องหมายคำพูดโค้งเดียวใช่มั้ย"


คำถามนี้ชัดเจนเกี่ยวกับการใช้อะพอสโทรฟีไม่ใช่การอ้างอิง ทำไมคุณถึงโพสต์นี้
Alex Skrypnyk

9
ฉันเห็นคำพูดเดียวอย่างชัดเจนในชื่อเรื่อง คำถามคือทำไมการหลีกเลี่ยงไม่ทำกับ& apos; . ฉันตอบคำถามนี้เพราะการสนับสนุน & apos; ไม่ได้เป็นเพียงความกังวลเท่านั้น
R. Schreurs

3
ใช้เครื่องหมายคำพูดเดี่ยวในภาษาอังกฤษแบบอเมริกันเช่นกัน
Rob_vH

นี่ควรเป็นคำตอบที่ได้รับการยอมรับเพราะมันชัดเจนว่าเครื่องหมายอัญประกาศเดี่ยวและอัญประกาศเดี่ยวไม่เหมือนกันและเป็นสาเหตุที่คุณไม่ควรใช้เครื่องหมายอัญประกาศเดี่ยวเพื่อใส่ค่าแอตทริบิวต์ HTML
delroh

ใน Unicode อักขระ apostrophe (& # 39;) ถูกจัดประเภทเป็นเครื่องหมายคำพูดและเป็นรูปแบบเดียวของเครื่องหมายอัญประกาศ "แบบตรง" ในข้อมูลจำเพาะ คำแนะนำในการใช้ & # 8217; มีความไม่สมบูรณ์ที่ดีที่สุดเพราะนั่นคืออักขระสำหรับ "เครื่องหมายคำพูดโค้งเดี่ยวใช่" หากคุณต้องการความถูกต้องอย่างแท้จริงควรใช้เครื่องหมายคำพูดที่ถูกต้องขณะที่ & # 8216; ("เครื่องหมายคำพูดโค้งเดี่ยวซ้าย") ควรใช้สำหรับเครื่องหมายคำพูดซ้าย
James_pic

2

หากคุณต้องการอัญประกาศเดี่ยว apostrophes จริงๆคุณสามารถใช้ได้

html    | numeric | hex
&lsquo; | &#145;  | &#x91; // for the left/beginning single-quote and
&rsquo; | &#146;  | &#x92; // for the right/ending single-quote

-2

ในกรณีของฉันมันเป็นข้อผิดพลาดเมื่อฉันพยายามใช้อัญประกาศในข้อความ Time's up!ในกรณีของฉันมันเป็นข้อผิดพลาดเมื่อฉันพยายามที่จะใช้อ้างในข้อความมีคำเตือนจาก Eslint

Time&apos;s up!ที่จะแก้ไขได้ฉันแทนที่ด้วยคำพูด ผลลัพธ์เป็นไปตามที่คาดไว้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.