栅格式布局
在 Vue 的栅格布局组件(如 Ant Design Vue、View UI (iView) 等)中,lg、md、sm、xs 是用于响应式设计的属性,它们根据不同的屏幕尺寸定义列的宽度比例。以下是具体含义:
1. 属性含义
2. 数值含义
栅格系统通常将一行分为 24 列,数值表示当前列占据的栅格数。例如:
<Col :xs="20" :sm="8" :md="8" :lg="8">超小屏(
xs="20"): 占 20/24 ≈ 83.3% 宽度(接近整行,适合手机竖屏单列布局)。小屏及以上(
sm="8"): 占 8/24 ≈ 33.3% 宽度(适合多列并排)。
3. 代码示例解释
<Col :lg="8" :md="8" :sm="8" :xs="20" > <Input class="col-input" v-model.trim="chineseName" /> </Col>大屏(≥992px)、中屏(≥768px)、小屏(≥576px):
列宽占 33.3%(8/24),适合在较宽屏幕上并排显示多个组件。超小屏(<576px):
列宽占 83.3%(20/24),接近整行,避免内容在小屏幕上拥挤。
4. 响应式布局逻辑
移动优先原则:
默认生效最小的断点(如xs),当屏幕尺寸达到更大断点时,覆盖为对应的宽度。
例如:屏幕宽度从500px(xs)增大到800px(md)时,宽度从20切换为8。常见场景:
手机竖屏:单列布局(
xs="24")。平板横屏:两列并排(
sm="12")。桌面显示器:三列并排(
md="8")。
5. 不同 UI 库的差异
总结
lg、md、sm、xs是响应式栅格的屏幕断点标识,数值代表列的栅格占比。合理设置这些属性,可以让布局在不同设备上自动适配,提升用户体验。