离子副标题栏重叠内容

时间:2015-03-26 18:14:10

标签: html css angularjs ionic-framework

在带有标题和子标题的视图中,子标题内容与视图的内容重叠。

  • 幻灯片菜单中的标题

               

      <ion-nav-buttons side="left">
        <button class="button button-icon button-clear ion-navicon" menu-toggle="left" ng-hide="$exposeAside.active"></button>
      </ion-nav-buttons>
    </ion-nav-bar>
    
    <ion-nav-view name="menuContent" animation="slide-left-right"></ion-nav-view>
    

  • 视图中的子标题

    <ion-header-bar align-title="center" class="bar bar-subheader custom bar-energized" ng-if="datos.subTitulo"> <div class="buttons"> <a class="ion-chevron-left" href="#/app/ranking/ubicacion/{{datos.divAnt}}" ng-if="datos.divAnt"></a> </div> <h2 class="subtitle">{{datos.subTitulo}}</h2> <div class="buttons"> <a class="ion-chevron-right" href="#/app/ranking/ubicacion/{{datos.divSig}}" ng-if="datos.divSig"></a> </div> </ion-header-bar>

子标题中的Dvis按钮重叠内容,h2显示100%。 这段代码中缺少什么东西?感谢

image view

[编辑] 重新编写代码以满足我的需要:小于标题的子标题,角上有两个链接和标题。

<ion-header-bar align-title="center" class="bar-subheader subheader_custom bar-energized">
    <div class="button button-clear"> 
        <a class="icon ion-ios-arrow-back blanco" href="#/app/ranking/ubicacion/{{datos.divAnt}}" ng-if="datos.divAnt"></a>
    </div>
    <div class="h2 title title_custom">{{datos.subTitulo}}</div>
    <div class="button button-clear"> 
        <a class="icon ion-ios-arrow-forward blanco" href="#/app/ranking/ubicacion/{{datos.divSig}}" ng-if="datos.divSig"></a>
    </div>
</ion-header-bar>

添加此css:

.has-subheader {
    top: 70px;
}

.bar-subheader.subheader_custom {
    display: block;
    height: 26px;
    top: 44px;
}
.title.title_custom {
    font-size: 16px;
    font-weight: 300;
    height: 20px;
    left: 0;
    line-height: 20px;
    margin: 2px 10px 2px 10px;
    min-width: 24px;
    overflow: hidden;
    position: absolute;
    right: 0;
    text-align: center;
    text-overflow: ellipsis;
    top: 0;
    white-space: nowrap;
    z-index: 0;
}

偶数按钮与副标题标题不一致。有什么想法吗?

新状态: enter image description here

4 个答案:

答案 0 :(得分:18)

通过添加CSS类has-subheader确保内容视图知道需要为子标题留出空间:

<ion-content class="has-header has-subheader">
</ion-content>

请参阅http://ionicframework.com/docs/components/#subheader

答案 1 :(得分:1)

如果您在Android中遇到此问题,请使用以下

&#13;
&#13;
.platform-android .bar-subheader  {
		top: 93px;
}
&#13;
&#13;
&#13;

https://forum.ionicframework.com/t/sub-header-not-showing-on-android-with-tabs/15341/18

答案 2 :(得分:0)

如果使用SASS和Ionic,您可以轻松更改子标题,页脚和子标注的高度。如果您需要70px高的子标题,只需将$bar-subheader-height: 70px;添加到ionic.app.scss文件即可。您的scss文件应该类似于:

// The path for our ionicons font files, relative to the built CSS in www/css
$ionicons-font-path: "../lib/ionic/fonts" !default;

$bar-subheader-height: 70px;

// Include all of Ionic
@import "www/lib/ionic/scss/ionic";

查看www/lib/ionic/scss/_variables.scss文件,了解您可以轻松更改的其他一些内容。

以下为instructions for setting up sass with ionic,此处为quick tutorial

答案 3 :(得分:0)

您可以在ion-content指令中将has-headerhas-subheader类添加到主要内容中。

这是我的代码:

<ion-view view-title="View Title">
  <ion-content>
    <div class="bar bar-header">
      <h2 class="title">Sub Header</h2>
    </div>
    <div class="list has-header">
        <a class="item item-icon-left" href="#">
            <i class="icon ion-email"></i>
            Check mail
        </a>
        <a class="item item-icon-left item-icon-right" href="#">
            <i class="icon ion-chatbubble-working"></i>
            Call Ma
            <i class="icon ion-ios-telephone-outline"></i>
        </a>
    </div>
  </ion-content>
</ion-view>

<div class="list has-header">我将has-header类添加到我的列表中以避免子标题重叠