Ionic控件 Button

本文介绍了Ionic框架中按钮组件的各种样式选项,包括配色、显示方式、大小调整等,并展示了如何添加图标以及创建按钮栏。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.简介

  按钮是Ionic最重要的CSS组件之一,在移动APP开发中按钮的使用非常频繁。在Ionic中,我们无需像传统html那样使用input或button标签来创建一个按钮。我们可以用任何标签来创建一个按钮,只要我们为其指定一个名为button的类,Ionic自带的CSS将会将其渲染成一个按钮。

<any class="button">...这里是button的内容...</any>
  • 1
  • 1

  不仅如此,Ionic允许我们指定下图中的类以获得对应的样式,使用起来非常方便,我们将一个个介绍。 
这里写图片描述

2.样式

  注意,下面五种样式可以自由组合,它们分别对应按钮显示的不同方面,我们只需要加上对应的类就可以获得我们想要的显示方式。

1)配色

  Ionic内置了几种颜色,包括light,stable,positive,calm,balanced,energized,assertive,royal,dark,我们只需要在定义button的元素加上对应的button-{color}就能使按钮获得相应的背景色,前景色也为做相应的修改(除了light和stable为黑色外其他的都为白色)。

<div class="button button-light">button-light</div>
<div class="button button-stable">button-stable</div>
<div class="button button-positive">button-positive</div>
<div class="button button-calm">button-calm</div>
<div class="button button-balanced">button-balanced</div>
<div class="button button-energized">button-energized</div>
<div class="button button-assertive">button-assertive</div>
<div class="button button-royal">button-royal</div>
<div class="button button-dark">button-dark</div>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

这里写图片描述

2)显示方式

  button的默认显示方式是按照display:inline-block来显示,宽度是随着内部文字长度增长的。另外两种显示方式都是填满父元素的宽度,不同的是button-block是圆角边框。

<div class="padding">
    <div class="button button-positive">inline-block(default)</div>
    <div class="button button-balanced button-block">button-block</div>
    <div class="button button-calm button-full">button-full</div>
</div>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

这里写图片描述

3)大小

  将元素的类指定button-small可以使得按钮变小,button-large可以使得按钮变大。

<div class="button button-block button-positive button-small">button-small</div>
<div class="button button-block button-positive button-normal">button-normal</div>
<div class="button button-block button-positive button-large">button-large</div>
  • 1
  • 2
  • 3
  • 1
  • 2
  • 3

这里写图片描述

4)特殊样式

  将元素的类指定button-outline可以使得按钮样式只显示线框,button-clear可以使得按钮不显示框。

<div class="button button-block button-positive button-clear">button-clear</div>
<div class="button button-block button-positive button-outline">button-outline</div>
  • 1
  • 2
  • 1
  • 2

这里写图片描述

5)带图标

  为按钮元素添加icon类和对应图标的类名即可指定图标,我们还可以加上icon-left或icon-right来控制图标的位置,下面是几种带图标的样式。

<div class="button icon-left ion-home">Home</div>
<div class="button icon-left ion-star button-positive">Favorites</div>
<div class="button icon-right ion-chevron-right button-calm">Learn More</div>
<div class="button icon-left ion-chevron-left button-clear button-dark">Back</div>
<div class="button icon ion-gear-a"></div>
<div class="button button-icon icon ion-settings"></div>
<div class="button button-outline icon-right ion-navicon button-balanced">Reorder</div>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

这里写图片描述

3.按钮栏

  在Ionic中我们可以将一组按钮连在一起形成一个按钮栏,各个按钮平分按钮栏的宽度,整个按钮栏是外框圆角。我们只要为这组按钮指定一个类含有button-bar的父元素即可实现按钮栏。

<div class="button-bar padding">
    <div class="button button-positive">First</div>
    <div class="button button-balanced">Second</div>
    <div class="button button-calm">Third</div>
</div>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

这里写图片描述

4.总结

  上面介绍的只是ionic中button的冰山一角而已,在ionic中,button随着父元素的不同会有着特殊的展示方式,比如在ion-header-bar中,还有许多内置的button指令,如ion-delete-button等等。 
  而且,上面的按钮样式确实丰富多样,但是可能仍不能满足我们的要求,那我们就必须回到最原始的方式自己定义我们要的CSS而不是使用Ionic内置的CSS了


### 使用 `ion-datetime-button` 组件 #### 显示和选择日期时间 为了提供更便捷的方式让用户打开 DateTime 拣选器,Ionic 提供了 `ion-datetime-button` 组件。此按钮组件专门设计来触发 DateTime 拣选器对话框,允许用户通过点击按钮而非直接交互 DateTime 控件本身来进行日期时间和的选择[^2]。 下面是一个简单的例子展示如何使用 `ion-datetime-button` 来开启一个 DateTime 拣选器: ```html <ion-item> <ion-label>预约时间</ion-label> <ion-datetime-button datetime="datetime-id"></ion-datetime-button> </ion-item> <ion-modal [isOpen]="true"> <ion-content> <ion-datetime id="datetime-id" presentation="date-time" [(ngModel)]="appointmentTime"></ion-datetime> </ion-content> </ion-modal> ``` 在这个实例里,当用户点击带有标签“预约时间”的项中的按钮时,会弹出模态窗口显示 DateTime 拣选器,其中设置的时间会被绑定到变量 `appointmentTime` 上[^5]。 需要注意的是,在某些版本更新过程中(比如从 Ionic v5 到 v6),DateTime 组件内部实现有所改变,这可能影响现有应用的行为或外观表现。因此建议开发者仔细阅读官方文档并测试应用程序以确保兼容性和用户体验的一致性[^3]。 对于仅需图标的按钮情况,可以通过如下方式定义: ```html <!-- 只有图标 --> <button ion-button icon-only (click)="openDatetimePicker()"> <ion-icon name="calendar-outline"></ion-icon> </button> ``` 这里展示了创建只含图标的浮动操作按钮(FAB),并通过 `(click)` 事件处理器调用方法 `openDatetimePicker()` 打开拣选器[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值