el‐row - daniel-qa/Vue GitHub Wiki
-
動態調組 row ; 因使用 if-active,所以每個 div 還是獨立運作==> 直接調整需要的 span 就可以了
父組件要給予夠大的 span width,細節的佈局,由子組件自己完成( 由 pan 24 計算)
1 . 栅格系统的默认宽度:24 栅格 ( 因为 Element Plus 基于 24 等分布局 来设置列宽,即便下一層的 col 最大的 span 也是 24 )
2 . 要配合 row 使用
- el-row 的三等分範例
<el-row style="background-color: #FFFFFF;">
<el-col :span="8">Column 1</el-col>
<el-col :span="8">Column 2</el-col>
<el-col :span="8">Column 3</el-col>
</el-row>
- row 中的 col 置中
<el-row :gutter="20" justify="center" align="middle">
<el-col :span="8">Column 4</el-col>
<el-col :span="8">Column 5</el-col>
</el-row>
- row 不垂直置中,從頂部對齊 el-row 的 stylle
align-items: flex-start; /* 不垂直置中,從頂部對齊 */
<el-row style="background-color: #FFFFFF; align-items: flex-start;">
- line-height
要修改 el-col 中每行文字的高度,你可以利用 CSS 控制文本的 line-height 屬性來設定行高。這樣可以確保每行文字之間的垂直間距符合你的需求。
.text-content p {
margin: 5px 0; /* 控制每行文字的上下間距 */
line-height: 1.8; /* 調整行高,改變行間距 */
}
如果 line-height 設置為數字(如 1.8),它會根據元素的字體大小進行縮放。
如果 line-height 設置為具體像素(如 20px),則每行文字的高度會固定為指定值。
.custom-col * {
line-height: 1.8; /* 這樣所有子元素的文字行高都會改變 */
}
- el-row 滾動的設定
.scroll-col {
height: 200px; /* 設置固定高度 */
overflow-y: auto; /* 垂直方向啟用滾動 */
padding: 10px; /* 可選:為內容添加內邊距 */
}
<el-row>
<el-col :span="8" class="scroll-col">
<div>
<p>這是第一行文字</p>
<p>這是第二行文字</p>
<p>這是第三行文字</p>
</div>
</el-col>
<el-col :span="8">Column 2</el-col>
<el-col :span="8">Column 3</el-col>
</el-row>
- 最大寬度,會限制在父組器的設定寬度範圍
ex
<el-row>
<el-col :span="24">
<div class="grid-content bg-purple-light">
<span class="head-text">選擇發送類型</span>
</div>
</el-col>
</el-row>
先設滿版,再調整,(確認目前顯示的範圍)
.grid-content {
border-radius: 4px; /* 圓角 */
min-height: 100vh;
width: 100vw;
background-color: #FFFFFF; /* 白色 */
}
- 調高度
如果希望 el-col 的高度設置為父元素高度的 50%,你可以使用 height: 50%。
不過需要注意的是,這樣做需要確保父元素有固定的高度,否則 50% 會無法正確計算。
<div id="app">
<el-row type="flex" justify="center" align="middle">
<el-col :span="22" >
<div class="grid-content bg-purple">
这是一个22栅格宽的列, 水平垂直居中:
type="flex" justify="center" align="middle"
</div>
</el-col>
</el-row>
<el-row>
<el-col :span="12"><div class="grid-content bg-purple"></div></el-col>
<el-col :span="12"><div class="grid-content bg-purple-light"></div></el-col>
</el-row>
</div>
- style
要設寬度,高度
.el-row {
margin-bottom: 20px;
&:last-child {
margin-bottom: 0;
}
}
.el-col {
border-radius: 4px;
}
.bg-purple-dark {
background: #99a9bf;
}
.bg-purple {
background: #d3dce6;
}
.bg-purple-light {
background: #e5e9f2;
}
.grid-content {
border-radius: 4px;
min-height: 50vh;
}
.row-bg {
padding: 10px 0;
background-color: #f9fafc;
}
-
< el-row> 中的 type="flex" 属性 在 Element Plus 中, 组件默认是基于流式布局(block-level) 的。当你为 < el-row> 设置 type="flex" 时,它会启用 Flexbox 布局,允许你通过灵活的对齐方式来管理其中的 el-col 子元素。
-
当 type="flex" 被添加到 时,可以通过其他的属性(如 justify 和 align)来进一步控制布局。