ionic3 - 渐变(透明)导航栏 (实用)

175 篇文章 1 订阅

原文出处:https://www.jianshu.com/p/e4d9340b4547  (建议阅读原文)

有图有真相

渐变导航栏

一、在ionic中实现透明导航栏非常简单,先介绍几个比较有用的属性:
1.no-border //ion-header 去除边框
2.transparent //ion-toolbar 透明背景 - 这个没用到
3.fullscreen //ion-content 占全屏

HTML配置属性

<ion-header no-border>
    <div class="seachr-panel">
        <input (click)="openSeachPage()" class="seach-text" type="text" readonly="readonly" placeholder="搜索商品" />
        <ion-icon name="search"></ion-icon>
    </div>
</ion-header>
<ion-content (ionScroll)="scrollToTop($event)" fullscreen>
  ...
</ion-content>

css样式

.scroll-content {
    padding-top: 0 !important; //content 内容置顶
}
page-home .seachr-panel {
    //配置渐变导航栏
    background: -webkit-linear-gradient(top, #FFB01D 50%, rgba(255, 176, 29, 0));
}

Javascript 改变渐变颜色

scrollToTop(event) {
        let _opacity = event.scrollTop / 44;
        if(_opacity > 1) _opacity = 1;
        var _seachrPanel = document.querySelectorAll("ion-header .seachr-panel")[0];
        _seachrPanel.style.backgroundImage = "linear-gradient(180deg, #FFB01D 50%, rgba(255, 176, 29, " + _opacity + "))";
}

二、透明导航栏制作

透明导航栏

HTML配置属性

<ion-header no-border>
    <ion-toolbar>
        <ion-title>Header</ion-title>
    </ion-toolbar>
</ion-header>
<ion-content (ionScroll)="scrollToTop($event)" fullscreen>
  ...
</ion-content>

css样式

.scroll-content {
    padding-top: 0 !important; //content 内容置顶
}

Javascript 不透明度

scrollToTop(event) {
        let _opacity = event.scrollTop / 44;
        if(_opacity > 1) _opacity = 1;
        var _header = document.querySelectorAll("ion-header")[0];
        _header.style.opacity = _opacity;
}

小礼物走一走,来简书关注我


 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值