0Pricing
HTML Academy · บทเรียน

องค์ประกอบ span และ div

ใช้คอนเทนเนอร์อินไลน์และบล็อกแบบทั่วไปเป็นจุดเชื่อมสำหรับการจัดสไตล์

องค์ประกอบ span และ div เป็นบทเรียน HTML Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน HTML Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส HTML Academy มีบทเรียนทั้งหมด 4 บทเรียน

ตัวครอบทั่วไป

HTML มีองค์ประกอบตัวครอบทั่วไปที่เป็นกลางทางความหมายอยู่สองชนิด:

  • <div> — ตัวครอบระดับบล็อก
  • <span> — ตัวครอบในบรรทัด

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

องค์ประกอบ div

<div> เป็นตัวครอบระดับบล็อก โดยจะขึ้นบรรทัดใหม่ก่อนและหลังตัวครอบ:

<div class="card">
  <h2>Card Title</h2>
  <p>Card content here.</p>
</div>

<div class="sidebar">
  <p>Sidebar content.</p>
</div>
<!-- div groups related elements for CSS layout or JavaScript selection -->

องค์ประกอบ span

<span> เป็นตัวครอบในบรรทัด โดยจะแทรกต่อเนื่องไปกับข้อความ:

<p>The price is <span class="price">$29.99</span> per month.</p>

<p>Error: <span class="error-text" role="alert">Invalid email address</span></p>

<!-- span targets a part of text for styling or scripting
     without adding block-level line breaks -->

ควรใช้ div หรือองค์ประกอบเชิงความหมายเมื่อใด

ก่อนจะเลือกใช้ <div> ให้ตรวจสอบก่อนว่ามีองค์ประกอบเชิงความหมายที่เหมาะสมหรือไม่:

  • ส่วนหัวของหน้า → <header>
  • การนำทาง → <nav>
  • เนื้อหาหลัก → <main>
  • บทความบล็อก → <article>
  • แถบด้านข้าง → <aside>
  • ส่วนท้ายของหน้า → <footer>

ใช้ <div> เฉพาะเมื่อไม่มีองค์ประกอบเชิงความหมายที่เหมาะสม

การใช้ div มากเกินไป

ภาวะใช้ div มากเกินไป — การใช้ <div> มากเกินไปกับทุกอย่าง:

<!-- Divitis: meaningless nesting -->
<div class="header">
  <div class="nav">
    <div class="nav-item"><a href="/">Home</a></div>
  </div>
</div>

<!-- Better: semantic HTML -->
<header>
  <nav>
    <a href="/">Home</a>
  </nav>
</header>

จุดเชื่อม CSS ด้วย class และ id

ทั้ง <div> และ <span> ใช้ร่วมกับแอตทริบิวต์ class หรือ id เพื่อกำหนดเป้าหมายด้วย CSS:

<div class="hero-section">
  <h1>Welcome</h1>
  <p>Text with a <span class="highlight">highlighted phrase</span> inside.</p>
</div>

<!-- CSS: -->
<!--
.hero-section { background: #f0f4f8; padding: 2rem; }
.highlight { background-color: yellow; font-weight: bold; }
-->

การกำหนดเป้าหมายด้วย JavaScript

<div> และ <span> ยังเป็นเป้าหมายของ JavaScript ได้ด้วย:

<span id="counter">0</span>

<script>
  const counter = document.getElementById('counter');
  let count = 0;
  setInterval(() => {
    count++;
    counter.textContent = count;
  }, 1000);
</script>

กฎการซ้อนองค์ประกอบ

กฎการซ้อนสำหรับตัวครอบทั่วไป:

  • <div> สามารถมี <div> และ <span> อยู่ภายในได้
  • <span> สามารถมีได้เฉพาะ <span> และเนื้อหาในบรรทัดอยู่ภายใน
  • อย่าวาง <div> ไว้ภายใน <span>
<span>
  Inline text
  <span>Nested span OK</span>
  <!-- <div> inside span: INVALID -->
</span>

ใช้ div สำหรับเค้าโครง

รูปแบบเค้าโครงทั่วไปที่ใช้ div:

<div class="layout">
  <div class="sidebar"><!-- sidebar --></div>
  <div class="content"><!-- main content --></div>
</div>

<!-- CSS Grid layout: -->
<!--
.layout { display: grid; grid-template-columns: 250px 1fr; gap: 1rem; }
-->

ใช้ span สำหรับการกำหนดรูปแบบในบรรทัด

รูปแบบทั่วไปสำหรับการกำหนดรูปแบบในบรรทัด:

<p>Status: <span class="badge badge-success">Active</span></p>

<p>Price: <span style="color: red; text-decoration: line-through;">$50</span>
        <span style="color: green; font-weight: bold;">$30</span></p>

div และ span มองไม่เห็น

โดยค่าเริ่มต้น <div> และ <span> เป็นตัวครอบที่มองไม่เห็น:

  • <div> ไม่เพิ่มรูปแบบที่มองเห็นได้นอกเหนือจากการแสดงผลแบบบล็อก
  • <span> ไม่เพิ่มรูปแบบใด ๆ เลย
  • ลักษณะที่ปรากฏทั้งหมดมาจาก CSS ที่คุณใช้
  • จึงเหมาะอย่างยิ่งสำหรับเป็นตัวครอบที่เป็นกลาง

ตรวจสอบความเข้าใจ

ควรใช้องค์ประกอบใดเพื่อกำหนดรูปแบบให้คำเดียวภายในย่อหน้า

ทบทวน: span และ div

สาระสำคัญของตัวครอบทั่วไป:

  • <div> — ระดับบล็อก ใช้จัดกลุ่มองค์ประกอบสำหรับวางเค้าโครง
  • <span> — ในบรรทัด ใช้กำหนดเป้าหมายให้บางส่วนของข้อความเพื่อกำหนดรูปแบบ
  • ทั้งสองชนิดเป็นกลางทางความหมาย ไม่ได้เพิ่มความหมายใด ๆ
  • เลือกใช้องค์ประกอบเชิงความหมายของ HTML5 เมื่อเหมาะสม
  • ใช้ class และ id เพื่อเชื่อมองค์ประกอบเหล่านี้กับ CSS และ JavaScript

คำถามที่พบบ่อย

บทเรียน “องค์ประกอบ span และ div” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “องค์ประกอบ span และ div” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส HTML Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส HTML Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “องค์ประกอบ span และ div”

ใช้คอนเทนเนอร์อินไลน์และบล็อกแบบทั่วไปเป็นจุดเชื่อมสำหรับการจัดสไตล์ คุณปฏิบัติ HTML Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน HTML Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน HTML Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน

บทเรียน “องค์ประกอบ span และ div” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน HTML Academy นี้ได้ไหม

ได้ บทเรียน HTML Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. หัวเรื่อง h1-h6 และลำดับชั้น
  2. ย่อหน้า em, strong, b และ i
  3. br, hr, blockquote และ pre
  4. องค์ประกอบ span และ div
← กลับไปที่ HTML Academy