:lg="12"→ 大屏幕下,元素占 24 份中的 12 份(即宽度 50%):sm="24"→ 小屏幕下,元素占 24 份(即宽度 100%,独占一行)
2. 每个属性对应的屏幕尺寸(以 Element UI 为例,不同框架略有差异)
| 属性 | 对应屏幕尺寸 | 说明(通俗理解) |
|---|---|---|
:xs |
< 768px | 超小屏幕(手机竖屏) |
:sm |
≥ 768px | 小屏幕(手机横屏、平板竖屏) |
:md |
≥ 992px | 中等屏幕(平板横屏、小电脑) |
:lg |
≥ 1200px | 大屏幕(普通电脑显示器) |
:xl |
≥ 1920px | 超大屏幕(宽屏显示器、电视) |
注:不同框架(如 Vant、Ant Design)的尺寸阈值可能略有不同,但逻辑一致。
3. 你给出的配置含义拆解
:xl="16" :lg="12" :md="12" :sm="24" :xs="24" 表示:
- 超小屏幕(手机竖屏,<768px):占 24 份 → 宽度 100%(独占一行)
- 小屏幕(手机横屏 / 平板竖屏,≥768px):占 24 份 → 宽度 100%(独占一行)
- 中等屏幕(平板横屏 / 小电脑,≥992px):占 12 份 → 宽度 50%(一行放 2 个同配置元素)
- 大屏幕(普通电脑,≥1200px):占 12 份 → 宽度 50%(一行放 2 个)
- 超大屏幕(宽屏,≥1920px):占 16 份 → 宽度~66.67%(一行可放 1 个该元素 + 1 个占 8 份的元素)
4. 实际效果示例
假设页面有 2 个相同配置的元素,在不同屏幕下的表现:
- 手机上(xs/sm):2 个元素各占 100% 宽度,上下排列(两行)
- 平板横屏 / 普通电脑(md/lg):2 个元素各占 50% 宽度,左右并排(一行)
- 宽屏显示器(xl):2 个元素各占 66.67% 宽度?不 ------ 实际会自动换行(因为 16+16=32 >24),所以还是各占一行,或搭配其他占 8 份的元素同行。