HTML - 叠加元素
HTML - Overlay Elements
我正在使用 Ionic2,我正在尝试显示一个行列表:每行分为左右两部分,具有适当的背景颜色。
这是我的代码(在一个简单的离子行中)
<ion-col col-6 [ngStyle]="{'background-color': leftColor}">Hi</ion-col>
<ion-col col-6 [ngStyle]="{'background-color': rightColor}"></ion-col>
这是结果
我想知道如何实现这两个步骤:
1) 我怎样才能获得固定高度(像素或类似)的行
2)如何在下图显示的位置叠加一个文本元素(如果文本比灰色部分"longer",它将在紫色部分继续)
我不是 Ionic 网格系统的忠实粉丝,我认为它太复杂了,您可以使用 CSS 网格轻松完成。在你的情况下,你需要覆盖一些 CSS 网格系统,这可能会与你页面中的另一个 CSS 冲突,所以我建议使用 CSS 网格而不是 Ionic 网格。
HTML:
<div class="component">
<p>A REALLY LOOOOOOOOOOOO OOOOOOOOOOOOO OOOOOOOOONG TEXT</p>
<div class="grid">
<div class="bg-1" [ngStyle]="{'background-color': leftColor}"></div>
<div class="bg-2" [ngStyle]="{'background-color': rightColor}"></div>
</div>
</div>
CSS
.component {
position: relative;
p {
position: absolute;
}
.grid {
display: grid;
grid-template: 90px / 1fr 1fr;
// the first argument here is the height of the line, the second is how you divide your grid, in this case 2 columns that take both 1 fraction of the total width
}
}
我正在使用 Ionic2,我正在尝试显示一个行列表:每行分为左右两部分,具有适当的背景颜色。
这是我的代码(在一个简单的离子行中)
<ion-col col-6 [ngStyle]="{'background-color': leftColor}">Hi</ion-col>
<ion-col col-6 [ngStyle]="{'background-color': rightColor}"></ion-col>
这是结果
我想知道如何实现这两个步骤:
1) 我怎样才能获得固定高度(像素或类似)的行
2)如何在下图显示的位置叠加一个文本元素(如果文本比灰色部分"longer",它将在紫色部分继续)
我不是 Ionic 网格系统的忠实粉丝,我认为它太复杂了,您可以使用 CSS 网格轻松完成。在你的情况下,你需要覆盖一些 CSS 网格系统,这可能会与你页面中的另一个 CSS 冲突,所以我建议使用 CSS 网格而不是 Ionic 网格。
HTML:
<div class="component">
<p>A REALLY LOOOOOOOOOOOO OOOOOOOOOOOOO OOOOOOOOONG TEXT</p>
<div class="grid">
<div class="bg-1" [ngStyle]="{'background-color': leftColor}"></div>
<div class="bg-2" [ngStyle]="{'background-color': rightColor}"></div>
</div>
</div>
CSS
.component {
position: relative;
p {
position: absolute;
}
.grid {
display: grid;
grid-template: 90px / 1fr 1fr;
// the first argument here is the height of the line, the second is how you divide your grid, in this case 2 columns that take both 1 fraction of the total width
}
}