【问题标题】:image with overlay text on ion card?离子卡上带有叠加文字的图像?
【发布时间】:2020-04-15 21:57:28
【问题描述】:

我对 Ionic 很陌生,我有一个在文档中找不到的简单问题。

有什么方法可以使用 Ionic 类来简单地对齐图像中心的“Disc 20%”文本?

类似这样的图片:

我目前拥有的代码是:

<ion-content class="card-background-page">
  <ion-card *ngFor="let periode of items" (click)="dismiss(periode)">
    <ion-list>
      <div class="item item-input-inset">
        <button ion-item class="item item-input-wrapper" value="{{periode.Productid}}">
          <ion-avatar item-start>
            <img src="assets/imgs/home/bgCashback.png" style="border-radius:0%;width:72px;height:72px;">
          </ion-avatar>
          <div class="card-img">Disc 20%</div>
          <div class="card-title" style="color:#838383;font-size:13px;font-weight:400">
            {{ periode.title_promo }}
          </div>
          <div text-wrap class="card-subtitle" style="color:#9c9c9c;margin-left: 0px;margin-right: 0px;margin-top: 0px;margin-bottom: 0px;font-size: 12px;">
            {{ periode.description }}
          </div>
        </button>
      </div>
    </ion-list>
    <ion-row>
      <ion-col></ion-col>
      <ion-col>
        <ion-note>Valid Until: {{ periode.end_date | date: 'dd MMM yyyy' }}</ion-note>
      </ion-col>
    </ion-row>
  </ion-card>

和 scss :

card-background-page {
    .ion-card {
        position: relative;
        text-align: center;
    }

    .card-img {
        position: absolute;
        top: 36%;
        font-size: 2.0em;
        width: 100%;
        font-weight: bold;
        color: #fff;
      }
}

【问题讨论】:

标签: css ionic-framework ionic3


【解决方案1】:

您可以尝试使用以下 ionic 和 CSS。不要使用内联 CSS。

离子代码:

<ion-content class="card-background-page">
  <ion-card *ngFor="let periode of items" (click)="dismiss(periode)">
    <ion-list>
      <div class="item item-input-inset">
        <button ion-item class="item item-input-wrapper" value="{{periode.Productid}}">
          <ion-avatar style="background: url("assets/imgs/home/bgCashback.png"); item-start>
            <div class="card-img">Disc 20%</div>
          </ion-avatar>
          <div class="card-desc-cvr">          
            <div class="card-title">
              {{ periode.title_promo }}
            </div>
            <div text-wrap class="card-subtitle">
              {{ periode.description }}
            </div>
         </div>
        </button>
      </div>
    </ion-list>
    <ion-row>
      <ion-col></ion-col>
      <ion-col>
        <ion-note>Valid Until: {{ periode.end_date | date: 'dd MMM yyyy' }}</ion-note>
      </ion-col>
    </ion-row>
  </ion-card>
</ion-content>

CSS:

.card-background-page {
 .ion-card {
        position: relative;
        text-align: center;
    }      

    ion-avatar{
      float: left;
      text-align: center;
      vertical-align: middle;
      width: 72px;
      height: 72px;
      line-height: 72px;
      background-size: 72px 72px;     
    }

    .card-desc-cvr{
       float: left;
      }

      .card-subtitle{
        color:#9c9c9c;
        margin: 0px;
        font-size: 12px;
      }

      .card-title{
        color:#838383;
        font-size:13px;
        font-weight:400
      }
}

【讨论】:

  • 如果你有实时网址?
  • 我已经编辑了代码请试试这个:
  • Disc 20%
    测试过,好朋友。但是图片变得太大了i.stack.imgur.com/Pgkx4.jpg
  • 我已经更新了 CSS。请添加样式 icon-avatar{text-align: center;background-size: 72px 72px;}
  • 仍然没有改变
猜你喜欢
  • 1970-01-01
  • 2019-05-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-10-28
  • 2022-01-11
  • 2020-11-03
相关资源
最近更新 更多