简体   繁体   中英

How to style one column of ion-grid?

I have three columns in ion-row in which middle column is of size 4 while 1st and third one are of size 3. The problem is that the padding and width of middle column is adding a gap between first and last icon. I want them to stick together with a very little gap (10-12px approx). I changed max-width of middle column to fit-content in inspect style and it worked. But I'm unable to style it in scss.

HTML

  <ion-row class="bottom-section ion-align-items-center ion-justify-content-center">
    <ion-col size="3" class="col ion-text-end">
      <ion-button class="delete-btn" color="light" size="large">
        <ion-icon class="delete-icon"  slot="icon-only" size="large" name="trash"></ion-icon>
      </ion-button>
    </ion-col>
    <ion-col size="4" class="col col-2 ion-text-center" width-100>
      <ion-button class="record-btn" color="danger" size="large">
        <ion-icon class="record-icon"  slot="icon-only" size="large" name="mic"></ion-icon>
      </ion-button>
    </ion-col>
    <ion-col size="3" class="col ion-text-start">
      <ion-button class="add-btn" color="light" size="large">
        <ion-icon class="add-icon"  slot="icon-only" size="large" name="add"></ion-icon>
      </ion-button>
    </ion-col>
  </ion-row>

SCSS

.col {
    border: 1px solid;
}

.col-2 {
    --max-width: 100px;
    max-width: 100px;
}

Default Style这是默认图片

Required Style在此处输入图片说明

I don't think ion-grid is a good solution here when you need more fine tune control over a small number of items. Try something like this instead.

<div class="buttons-wrapper">
    <div class="single-button">
      <ion-button color="light" class="delete-btn">
        <ion-icon slot="icon-only" name="trash"></ion-icon>
      </ion-button>
      <ion-label>Delete</ion-label>
    </div>
    <div class="single-button">
      <ion-button color="danger" class="record-btn">
        <ion-icon slot="icon-only" name="mic"></ion-icon>
      </ion-button>
      <ion-label>Record</ion-label>
    </div>
    <div class="single-button">
      <ion-button color="light" class="add-btn">
        <ion-icon slot="icon-only" name="add"></ion-icon>
      </ion-button>
      <ion-label>Add</ion-label>
    </div>
  </div>
.buttons-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;

    .single-button {
        text-align: center;

        .delete-btn,
        .add-btn {
            margin: 0px 5px;
            height: 50px;
            width: 50px;
            --border-radius: 50%;
            display: block;
        }

        .record-btn {
            margin: 0px 5px;
            height: 70px;
            width: 70px;
            --border-radius: 50%;
            display: block;

            ion-icon {
                font-size: 32px;
            }
        }
        ion-label {
            display: inline-block;
            margin-top: 5px;
        }
    }

}

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM