Aspect Ratio
מסגרת למדיה ששומרת על היחס בין הרוחב לגובה.
- דפדפנים
- Chrome 123+Firefox 121+Safari 17.5+
- שכבה
- 0
- גודל חבילה דחוסה
- 280 B
- מגבלת פריסה כפויה
- 0 ms
- מגבלת Axe
- 0
- תואם SSR
- כן
- חוזה מפורסם
- סביבת בדיקות
מגרש ניסויים
import { AspectRatio } from "@gunkin/uiify";
export default function Example() {
return (
<AspectRatio ratio={16 / 9} className="" slotProps={{ content: { className: "" } }}>
<img className="" src="/mountains.svg" width="640" height="400" alt="An amber sun above blue mountain ridges" />
</AspectRatio>
);
}@layer components {
[data-uiify-aspect-ratio] {
border-radius: var(--radius-md);
background: var(--muted);
}
[data-uiify-aspect-ratio] > [data-part="content"] {
border-radius: inherit;
}
[data-uiify-aspect-ratio] > [data-part="content"] > img {
display: block;
inline-size: 100%;
block-size: 100%;
border-radius: inherit;
object-fit: cover;
}
}import { AspectRatio } from "@gunkin/uiify";
export default function Example() {
return (
<AspectRatio
ratio={16 / 9}
className="rounded-md bg-muted"
slotProps={{ content: { className: "[border-radius:inherit]" } }}
>
<img
className="
block [inline-size:100%] [block-size:100%] [border-radius:inherit] object-cover
data-[fit=contain]:object-contain
"
src="/mountains.svg"
width="640"
height="400"
alt="An amber sun above blue mountain ridges"
/>
</AspectRatio>
);
}API
AspectRatio
| מאפיין | טיפוס | ברירת מחדל | תיאור |
|---|---|---|---|
ratio | number | 1 | רוחב חלקי גובה, כמספר חיובי וסופי. מספרים לא תקינים מוחלפים ב-1. כשהערך מושמט, ניתן לקבוע את היחס באמצעות המאפיין המותאם של CSS. |
children | ReactNode | — | התוכן המוצב בתוך המסגרת. הממדים הטבעיים של התוכן אינם יכולים להגדיל את המסגרת. |
slotProps | AspectRatioSlotProps | — | מאפיינים מובנים למעטפת התוכן שנוצרת. |
className | string | — | המחלקה המוחלת על שורש המסגרת. |
style | CSSProperties | — | סגנונות אלמנט השורש המובנה, לרבות --uiify-aspect-ratio כאשר ratio מושמט. |
ref | Ref<HTMLElement> | — | ה-ref המועבר לאלמנט השורש המוצג. |
as | ElementType | "div" | האלמנט המובנה או הרכיב המשמש כשורש. |
render | ReactElement | ((props, state) => ReactElement) | — | החלפת השורש המוצג תוך שימור המאפיינים, ה-ref וסמן הזהות שלו. |
מקלדת
| מקש | פעולה |
|---|
נגישות
פריסה סטטית שאינה מוסיפה תפקיד, יעד מיקוד או התנהגות מקלדת. תנו לתמונות משמעותיות טקסט alt; השאירו כיתובים מחוץ למסגרת. ה-CSS ההתנהגותי הנדרש שומר על היחס גם כשהילדים בעלי ממדים פנימיים. העיצוב האופציונלי ממלא תמונות באמצעות object-fit: cover; השתמשו ב-contain להצגת התמונה בשלמותה.
נקודות חיבור לעיצוב
data-uiify-aspect-ratiodata-part="content"--uiify-aspect-ratio