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

ระบุวิธีเรนเดอร์อิลิเมนต์ซ้อนกันในพื้นที่ 3D ด้วย CSS

เพื่อระบุว่าอิลิเมนต์ซ้อนกัน (nested) จะถูกเรนเดอร์ในพื้นที่ 3D อย่างไร ให้ใช้คุณสมบัติ transform-style ใน CSS

ตัวอย่างโค้ด

ลองรันโค้ดด้านล่างเพื่อทดสอบ transform-style property:

<!DOCTYPE html>
<html>
<head>
  <style>
    .demo1 {
      width: 300px;
      height: 300px;
      background-color: yellow;
    }
    .demo2 {
      width: 200px;
      height: 200px;
      background-color: orange;
    }
    .demo3 {
      width: 100px;
      height: 100px;
      background-color: blue;
      transform: rotate(10deg);
      transform-origin: 30% 40%;
      transform-style: preserve-3d;
    }
  </style>
</head>
<body>
  <h1>Rotation</h1>
  <div class="demo1">Demo
    <div class="demo2">Demo
      <div class="demo3">Demo</div>
    </div>
  </div>
</body>
</html>

คำอธิบาย: transform-style: preserve-3d ทำให้ child elements อยู่ในพื้นที่ 3D เดียวกับ parent ถ้าไม่กำหนด (ค่าเริ่มต้น flat) child จะถูกทำให้แบน (flatten) อยู่ในพื้นที่ 2D ของ parent