Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> CSS

การเยื้องข้อความด้วย CSS text-indent

คุณสมบัติ text-indent ใน CSS ช่วยกำหนดการเยื้องของบรรทัดแรกขององค์ประกอบ

ไวยากรณ์ (Syntax)

Selector {
  text-indent: /*value*/;
}

ตัวอย่างที่ 1: เยื้องพารากราฟ และหัวข้อแบบลบ

<!DOCTYPE html>
<html>
<head>
  <style>
    div { display: flex; float: left; margin: auto; padding: 10px; }
    article {
      text-indent: 25%; background-color: darkseagreen;
      padding: 15px; font-size: 1.3em;
    }
    h3 { text-indent: -0.8em; }
  </style>
</head>
<body>
  <div>
    <h3>Doing it our way. Nothing gonna turn us back now.</h3>
    <article>
      This is demo paragraph. (ซ้ำหลายประโยค)...
    </article>
  </div>
</body>
</html>

ผลลัพธ์

การเยื้องข้อความด้วย CSS text-indent

ตัวอย่างที่ 2: ใช้กับรายการ (ul/li)

<!DOCTYPE html>
<html>
<head>
  <style>
    ul {
      list-style: none; display: flex; float: left;
      text-indent: 23px;
      background-image: url("https://www.tutorialspoint.com/angular4/images/angular-4.jpg");
      font-size: 1.5em;
    }
    li { border: thin solid; }
  </style>
</head>
<body>
  <ul>
    <li>This is demo text. This is demo text.</li>
    <li>Angular 4 is a JavaScript framework for building web applications...</li>
    <li>Angular provides built-in features for animation, http service...</li>
    <li>This is demo text. This is demo text.</li>
  </ul>
</body>
</html>

ผลลัพธ์

การเยื้องข้อความด้วย CSS text-indent

ค่าที่ใช้ได้

  • <length> - ความยาวคงที่ (20px, 2em) หรือ ค่าลบ สำหรับ hanging indent
  • <percentage> - เปอร์เซ็นต์ของความกว้างบล็อกที่มี (25%)
  • each-line - เยื้องทุกบรรทัดหลัง forced line break (CSS Text Level 3)
  • hanging - เยื้องทุกบรรทัด ยกเว้น บรรทัดแรก (CSS Text Level 3)

การประยุกต์ใช้ทั่วไป

  • Paragraph indent: text-indent: 2em (มาตรฐานการพิมพ์ไทย)
  • Hanging indent (รายการอ้างอิง): text-indent: -2em; padding-left: 2em;
  • ซ่อนข้อความ (Text hiding): text-indent: -9999px (เทคนิคเก่า แทนด้วย clip-path หรือ visually-hidden class)