อะไรคือความแตกต่างระหว่าง <p> และ <div>
พวกเขาสามารถใช้แทนกันได้? แอปพลิเคชันคืออะไร
<div></div>
ต้องเปิดและปิดแท็ก<p>
ไม่ได้อยู่ในสถานการณ์ที่เฉพาะเจาะจง
อะไรคือความแตกต่างระหว่าง <p> และ <div>
พวกเขาสามารถใช้แทนกันได้? แอปพลิเคชันคืออะไร
<div></div>
ต้องเปิดและปิดแท็ก<p>
ไม่ได้อยู่ในสถานการณ์ที่เฉพาะเจาะจง
คำตอบ:
รหัสก่อนหน้าคือ
<p class='item'><span class='name'>*Scrambled eggs on crusty Italian ciabatta and bruschetta tomato</span><span class='price'>$12.50</span></p>
ดังนั้นฉันต้องเปลี่ยนมันเป็น
<div class='item'><span class='name'>*Scrambled eggs on crusty Italian ciabatta and bruschetta tomato</span><span class='price'>$12.50</span></div>
มันเป็นการแก้ไขที่ง่าย และ CSS สำหรับโค้ดด้านบนคือ
.item {
position: relative;
border: 1px solid green;
height: 30px;
}
.item .name {
position: absolute;
top: 0px;
left: 0px;
}
.item .price {
position: absolute;
right: 0px;
bottom: 0px;
}
ดังนั้นแท็ก div สามารถมีองค์ประกอบอื่น ๆ P ไม่ควรถูกบังคับให้ทำเช่นนั้น
p
องค์ประกอบสามารถมีองค์ประกอบอินไลน์อื่น ๆ (การพูดถึงข้อกำหนด HTML 5 ขององค์ประกอบการใช้ถ้อยคำ (ดู 7.3) ) ซึ่งspan
เป็นหนึ่งในองค์ประกอบเหล่านี้และอื่น ๆ อีกมากมาย นอกจากนี้นี้ไม่ได้เป็นคำตอบสำหรับคำถามของ OP: มันไม่ได้บอกอะไรเกี่ยวกับความแตกต่างระหว่างและp
div
และโปรดอ่านวิธีการตอบความคิดเห็นทำงานอย่างไร
<p>
แท็กมักจะมีองค์ประกอบอื่น ๆ เช่น<strong>
หรือ<em>
อื่น ๆ เนื้อหาของ<p>
แท็กควรเป็นชื่อที่มีความหมาย: ย่อหน้าของข้อความ ย่อหน้าของข้อความมักจะมีมาร์กอัปเพิ่มเติม ไม่มีอะไรแม้แต่จะผิดปกติหรือผิดปกติจากระยะไกล
พวกเขามีความแตกต่างทางความหมาย - <div>
องค์ประกอบถูกออกแบบมาเพื่ออธิบายที่เก็บข้อมูลในขณะที่<p>
องค์ประกอบนั้นถูกออกแบบมาเพื่ออธิบายเนื้อหาหนึ่งย่อหน้า
ความหมายสร้างความแตกต่างทั้งหมด HTML เป็นภาษามาร์กอัปซึ่งหมายความว่ามันถูกออกแบบมาเพื่อ "มาร์กอัป" เนื้อหาในลักษณะที่มีความหมายต่อผู้บริโภคของมาร์กอัป นักพัฒนาส่วนใหญ่เชื่อว่าความหมายของเอกสารเป็นสไตล์เริ่มต้นและการแสดงผลที่เบราว์เซอร์ใช้กับองค์ประกอบเหล่านี้ แต่ไม่ใช่กรณี
องค์ประกอบที่คุณเลือกเพื่อทำเครื่องหมายเนื้อหาของคุณควรอธิบายถึงเนื้อหา อย่าทำเครื่องหมายเอกสารตามลักษณะที่ปรากฏ - ทำเครื่องหมายตามเอกสาร
หากคุณต้องการภาชนะทั่วไป เพื่อวัตถุประสงค์ในการจัดวางอย่างหมดจด<div>
แล้วใช้ <p>
หากคุณต้องการองค์ประกอบที่จะอธิบายวรรคของเนื้อหาแล้วใช้
หมายเหตุ: มันเป็นสิ่งสำคัญที่จะเข้าใจว่าทั้งสอง<div>
และ<p>
เป็นองค์ประกอบระดับบล็อกซึ่งหมายความว่าเบราว์เซอร์ส่วนใหญ่จะปฏิบัติต่อพวกเขาในลักษณะที่คล้ายกัน
<p>
สำหรับ "ย่อหน้าเนื้อหา" เนื้อหานั้นจะต้องอยู่ในรูปแบบของตัวอักษรและคำศัพท์หรือไม่? คุณเคยใช้<p>
อธิบายเนื้อหาประเภทอื่นเช่นภาพหรือไม่
div
แทนp
?
ทุกคำตอบที่ดี แต่มีข้อแตกต่างอย่างหนึ่งที่ฉันยังไม่ได้กล่าวถึงและเป็นวิธีที่เบราว์เซอร์แสดงผลตามค่าเริ่มต้น เว็บเบราว์เซอร์หลักจะแสดง<p>
แท็กที่มีระยะขอบด้านบนและด้านล่างของย่อหน้า <div>
แท็กจะแสดงผลได้โดยไม่ต้องมีอัตรากำไรใด ๆ เลย
<p>
ระบุย่อหน้าและมีความหมายทางตรรก
<div>
เป็นเพียงคอนเทนเนอร์บล็อกสำหรับเนื้อหาอื่น
สิ่งใดที่สามารถไปใน<p>
สามารถไปใน<div>
แต่กลับไม่เป็นความจริง <div>
แท็กสามารถมีองค์ประกอบระดับบล็อกเป็นเด็ก ๆ <p>
องค์ประกอบไม่สามารถ
Tae ดูที่ที่DTD HTML
<!ENTITY % inline "#PCDATA | %fontstyle; | %phrase; | %special; | %formctrl;"> <!ENTITY % block "P | %heading; | %list; | %preformatted; | DL | DIV | NOSCRIPT | BLOCKQUOTE | FORM | HR | TABLE | FIELDSET | ADDRESS"> <!ENTITY % flow "%block; | %inline;"> <!ELEMENT DIV - - (%flow;)* -- generic language/style container --> <!ELEMENT P - O (%inline;)* -- paragraph -->
ความแตกต่างเพียงอย่างเดียวระหว่างองค์ประกอบทั้งสองคือความหมาย โดยค่าเริ่มต้นองค์ประกอบทั้งสองจะมีการแสดงกฎ CSS: block (ดังนั้นระดับบล็อก) จะถูกนำไปใช้กับพวกเขา ไม่มีอะไรเพิ่มเติม (ยกเว้นบางส่วนเพิ่มพิเศษในบางกรณี) อย่างไรก็ตามดังที่กล่าวมาทั้งสองต่างกันอย่างมากในแง่ของความหมาย
<p>
องค์ประกอบเป็นชื่อของมันค่อนข้างมีความหมายสำหรับย่อหน้า ดังนั้น<p>
ควรใช้เมื่อคุณต้องการสร้างบล็อกของข้อความในย่อหน้า
อย่างไรก็ตาม<div>
องค์ประกอบมีความหมายเพียงเล็กน้อยถึงไม่มีความหมายดังนั้นจึงสามารถใช้เป็นองค์ประกอบระดับบล็อกทั่วไปซึ่งโดยทั่วไปแล้วผู้คนจะใช้มันในเลย์เอาต์เพราะมันไม่มีความหมายทางความหมายและสามารถใช้กับสิ่งใดก็ตามที่คุณอาจต้องการบล็อก องค์ประกอบระดับสำหรับ
มันอาจจะดีกว่าที่จะเห็นมาตรฐานที่ออกแบบโดย W3.org นี่คือที่อยู่: http://www.w3.org/
แท็ก "DIV" สามารถใส่แท็ก "P" ในขณะที่แท็ก "P" ไม่สามารถใส่แท็ก "DIV" ได้ฉันรู้ถึงความแตกต่างนี้แล้ว อาจมีความแตกต่างอื่น ๆ เพิ่มเติม
คิดว่าDIV
เป็นองค์ประกอบการจัดกลุ่ม คุณใส่องค์ประกอบในองค์ประกอบ DIV เพื่อให้คุณสามารถตั้งค่าการจัดตำแหน่งของพวกเขา
ในขณะที่"p"
เป็นเพียงการสร้างย่อหน้าใหม่
<p> หมายถึงย่อหน้าและ <div> หมายถึง 'การแบ่งแยก' ฉันคิดว่าความแตกต่างที่สำคัญคือ divs นั้นหมายถึง 'ไร้ความหมาย' โดยที่ <p> ควรจะเป็นตัวแทนของสิ่งที่เกี่ยวข้องกับข้อความนั้นเอง
คุณไม่ต้องการให้มี <p> ซ้อนกันตัวอย่างเช่นเนื่องจากจะไม่มีความหมายมาก (ยกเว้นในแง่ของการอ้างอิง) ในขณะที่ผู้คนใช้ซ้อน <div> s สำหรับเค้าโครงหน้า
ตามที่Wikipedia
ใน HTML องค์ประกอบ span และ div จะถูกใช้โดยที่ส่วนของเอกสารไม่สามารถอธิบายความหมายโดยองค์ประกอบ HTML อื่น ๆ ได้
p
แท็กสำหรับย่อหน้าที่ใช้โดยทั่วไปสำหรับข้อความ div
แท็กสำหรับการแบ่งและโดยทั่วไปใช้สำหรับการสร้างส่วนของข้อความ
<p>
ใช้ความหมายของข้อความย่อหน้าปกติ
<div>
ใช้สำหรับบล็อกหรือพื้นที่ในเว็บเพจ ตัวอย่างเช่นมันสามารถใช้ในการทำให้พื้นที่ของส่วนหัว
พวกเขาอาจจะใช้แทนกันได้ แต่คุณไม่ควร