ถึง <p> หรือไม่ไปที่ <p>


16

ฉันเพิ่งมีการถกเถียงกับเพื่อนร่วมงานที่อ้างว่า<div>ควรใช้<p>แท็กเหนือแท็กเมื่อจัดรูปแบบย่อหน้า

กรณีต่อต้านการใช้งาน<p>คือมันสร้างระยะห่างที่ผิดปกติในเบราว์เซอร์และมีแนวโน้มที่จะล้าสมัยเหมือน<b>แท็ก

ความคิดเห็นของ<p>แท็กนี้แชร์โดยชุมชนหรือไม่


5
เพียงเพื่อชี้ให้เห็น<b>(และ<i>สำหรับเรื่องนั้น) อยู่ไกลจากล้าสมัย ตรวจสอบข้อมูลจำเพาะ HTML5
DisgruntledGoat

จุดที่ดี - ฉันเพิ่งตรวจสอบฉันได้รับคำแนะนำเสมอว่า <b> และ <i> เป็นแท็กที่เสื่อมราคาและควรใช้ <strong> และ <em>
BradB

<strong>และ<em>ควรใช้เพื่อเน้น <b>และ<i>เลิกใช้ในส่วนที่เกี่ยวข้อง แต่มีข้อ จำกัด แม้ว่าจะถูกต้องตามกฎหมายใช้ใน HTML5
DisgruntledGoat

การสนทนานี้เป็นของจริงหรือเปล่า สำหรับฉันดูเหมือนว่าสิ่งนี้ควรอยู่ใน Doctype
Charles Boyung

@Charles - เป็นพื้นที่สีเทาในขณะนี้เนื่องจากไซต์ยังอยู่ในช่วงเริ่มต้น ถ้าคุณรู้สึกอย่างยิ่งรู้สึกอิสระที่จะเริ่มการอภิปรายใหม่ที่meta.webmasters.stackexchange.com - หรือโพสต์ความคิดเห็นของคุณที่นี่: meta.webmasters.stackexchange.com/questions/117/ …
Mark Henderson

คำตอบ:


41

divและpเพื่อวัตถุประสงค์ที่แตกต่างอย่างสิ้นเชิง pสำหรับย่อหน้าdivนั้นใช้สำหรับส่วนย่อย หนึ่งสำหรับการจัดรูปแบบข้อความอื่น ๆ สำหรับโครงสร้างหน้า มันไม่ถูกต้องความหมายที่จะใช้ในสถานที่ของdivp

และเหตุผลที่ทำให้การใช้งานbหมดไปนั้นเป็นเพราะมันเป็นแท็กการนำเสนอ มันไม่มีความหมายทางความหมาย ทั้งสองpและdivมีความหมายเฉพาะของตัวเอง pจะไม่ล้าสมัยตราบใดที่คนยังคงจัดรูปแบบข้อความเป็นย่อหน้า

เพื่อนร่วมงานของคุณไม่ปรากฏที่จะคุ้นเคยกับหลักการของการแยกเนื้อหาและการนำเสนอ มิฉะนั้นเขาจะรู้ว่าทำไมbถูกเกลียดชังและปัญหาของงานนำเสนอเช่นการเว้นวรรคข้อความควรกำหนดไว้ใน CSS ไม่ใช่ HTML ของคุณ


11
+1 เห็นด้วย เพียงเพื่อเน้น ... "ระยะห่างที่ผิดปกติในเบราว์เซอร์" (แม้ว่าจะเป็นที่ถกเถียงกัน) สามารถควบคุมได้โดย CSS
MrWhite

4
ใช่ ... p { margin: 1em 0 }ทำให้คำถามทั้งหมดเป็นข้อสงสัย
DisgruntledGoat

7
<b>มีความหมายเชิงความหมายในขณะนี้: "องค์ประกอบ b หมายถึงช่วงข้อความที่ดึงความสนใจเพื่อวัตถุประสงค์ที่เป็นประโยชน์โดยไม่ต้องสื่อความสำคัญเป็นพิเศษและไม่มีความหมายของเสียงหรืออารมณ์ทางเลือกเช่นคำสำคัญในเอกสารนามธรรม ชื่อผลิตภัณฑ์ในบทวิจารณ์คำที่ใช้งานได้ในซอฟต์แวร์ที่ทำงานด้วยข้อความแบบโต้ตอบหรือบทความนำ " ( ต้นฉบับ )
David Murdoch

13

<p>และ<div>ไม่ได้มีไว้สำหรับจุดประสงค์เดียวกันเนื่องจากมีความหมายแตกต่างกัน:

  • <p> สำหรับย่อหน้า
  • <div>คือ "เสนอกลไกทั่วไปสำหรับการเพิ่มโครงสร้างให้กับเอกสาร" ตามที่ระบุไว้ในข้อกำหนดHTML div จาก W3C

<p> อาจไม่เลิกใช้ในอนาคตเนื่องจากยังมีอยู่ใน XHTML และ HTML 5

แท็กทั้งสองมีการแสดงผลกราฟิกที่แตกต่างกัน A <p>มีขอบบนและขอบล่างของ 1em ในขณะที่ a <div>ไม่มีขอบทั้งหมด แต่ประเด็นนี้เป็นรองเพราะอาจถูกแทนที่โดย CSS

นอกจากนี้โปรดทราบความแตกต่างนี้: ขณะที่แท็กทั้งสองประเภทเป็น "บล็อก" <div>จะมีองค์ประกอบบล็อกอื่น ดังนั้น:

  • <p><p> bla </p></p> ผิดในขณะที่
  • <div><div> bla </div></div> ก็โอเค

จุดสำคัญที่ต้องจำคือทั้งแท็กที่ถูกต้องและใช้แล้ว แต่ไม่ใช่เพื่อจุดประสงค์เดียวกัน

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