Spacing
간격 구성은 많은 양의 데이터를 시각적으로 표현하는 것을 크게 향상시킬 수 있습니다. Ignite UI for Angular 에서는 패딩과 여백을 조정하기 위해 미리 정의된 옵션 세트를 제공합니다.
고정 값을 사용하는 대신 CSS 사용자 정의 속성을 사용하여 애플리케이션 또는 구성 요소 수준의 간격을 조정합니다.
How Spacing Works
Ignite UI for Angular 구성 요소 크기(소형, 중형, 대형)에 따라 동적으로 확장되는 정교한 간격 시스템을 제공합니다. 간격 시스템은 사용자 정의 CSS를 작성하지 않고도 전역 또는 구성 요소 수준에서 간격을 제어할 수 있는 CSS 사용자 정의 속성을 기반으로 구축되었습니다.
The Relationship Between Sizing and Spacing
Ignite UI의 간격 시스템은 구성 요소 크기 조정과 밀접하게 연관되어 있습니다. 구성 요소는 세 가지 크기를 가질 수 있습니다.
- 작음- 밀집된 레이아웃을 위한 컴팩트한 간격
- Medium - Default balanced spacing.
- 터치 친화적인 인터페이스를 위한 넓은 간격
간격은 활성 크기에 따라 자동으로 조정되므로 애플리케이션 전체에서 일관된 시각적 계층 구조가 보장됩니다.
Core CSS Custom Properties
간격 시스템은 몇 가지 주요 CSS 사용자 정의 속성을 중심으로 이루어집니다.
Global Spacing Properties
--ig-spacing
- The base spacing multiplier (default: 1)--ig-spacing-small
- 소형 부품의 간격--ig-spacing-medium
- 중간 크기의 구성 요소에 대한 간격.--ig-spacing-large
- 대형 구성 요소를 위한 간격
Directional Spacing Properties
--ig-spacing-inline
- Controls horizontal spacing--ig-spacing-block
- Controls vertical spacing--ig-spacing-inline-small
- 소형 부품을 위한 수평 간격--ig-spacing-inline-medium
- Horizontal spacing for medium components--ig-spacing-inline-large
- 대형 부품에 대한 수평 간격--ig-spacing-block-small
- 소형 부품을 위한 수직 간격--ig-spacing-block-medium
- Vertical spacing for medium components--ig-spacing-block-large
- 대형 부품에 대한 수직 간격
Size Detection Variables
구성 요소는 CSS 사용자 정의 속성을 사용하여 현재 크기를 자동으로 감지합니다.
--is-small
- 구성 요소가 작을 때는 1로 설정하고, 그렇지 않으면 0으로 설정합니다.--is-medium
- 구성 요소가 중간 크기인 경우 1로 설정하고, 그렇지 않으면 0으로 설정합니다.--is-large
- 구성 요소가 큰 경우 1로 설정하고, 그렇지 않으면 0으로 설정합니다.--component-size
- 현재 크기를 나타내는 숫자 값(1=소형, 2=중간, 3=대형).
이러한 변수는 테마 시스템에 의해 자동으로 관리되며 에 의해--ig-size
제어되는 구성 요소의 크기 설정에 따라 변경됩니다.
Practical Usage Examples
Global Spacing Control
전체 애플리케이션에서 모든 구성 요소를 더 컴팩트하게 만들려면:
:root {
--ig-spacing: 0.8; /* 20% less spacing */
}
더 나은 터치 접근성을 위해 간격을 늘리려면:
:root {
--ig-spacing: 1.2; /* 20% more spacing */
}
Component-Specific Spacing
특정 구성요소 유형에 대한 간격을 조정하려면:
.my-grid {
--ig-spacing: 0.5; /* More compact grid, 50% of the original spacing in all sizes */
}
Directional Spacing Control
수직 간격을 정상으로 유지하면서 수평 간격만 줄이려면:
:root {
--ig-spacing-inline: 0.7;
--ig-spacing-block: 1.0;
}
Size-Specific Spacing
특정 구성요소 크기에 대한 간격을 사용자 정의하려면:
:root {
--ig-spacing-small: 0.5; /* Very tight for small components */
--ig-spacing-medium: 1.0; /* Normal for medium components */
--ig-spacing-large: 1.5; /* Extra spacious for large components */
}
How Spacing Multipliers Work
간격 시스템은 승수를 사용하여 기본 값을 조정합니다.
- 구성요소의 간격 값에 활성 간격 변수가 곱해집니다.
- 예를 들어, 구성 요소에 기본 패딩이 있고
8px
설정--ig-spacing: 1.5
하면 실제 패딩은12px
- 대형 구성 요소에 대한 전역
--ig-spacing
재정의와 같은--ig-spacing-large
크기별 승수 - 방향
--ig-spacing-inline
승수를 사용하면 수평 및 수직 간격을 독립적으로 조정할 수 있습니다.
이 계단식 접근 방식은 일관된 간격 관계를 보장하는 동시에 CSS 사용자 정의 속성만을 통해 세밀한 제어를 제공합니다.
API References
Sizing Functions and Mixins
Additional Resources
우리 커뮤니티는 활동적이며 항상 새로운 아이디어를 환영합니다.