离子框架和底部固定内容

Mat*_*zza 16 ionic-framework

我正在尝试使用登录表单(用户/密码文本输入+ 1按钮)实现一个简单的页面.我想将这种形式修复到离子含量的底部.但它不起作用.

HTML:

<ion-view hide-nav-bar="true">
<ion-content padding="true">

    <img class="logo" src="img/logo.jpeg" />

    <div class="login-form">
        <div class="list">
            <label class="item item-input light-text-input">
                <input type="text" placeholder="user" ng-model="user">
            </label>
            <label class="item item-input light-text-input">
                <input type="text" placeholder="password" ng-model="password">
            </label>
        </div>

        <div class="row">
            <div class="col">
                <button class="button button-block button-energized">Login</button>
            </div>
            <div class="col">
                <button class="button button-block button-positive">FB Login</button>
            </div>
        </div>

        <p class="text-center"><a href="#/app/forgot-password">Forgot password</a></p>
    </div>

</ion-content>
Run Code Online (Sandbox Code Playgroud)

我想设置为"修复"div.login-form.

使用以下CSS不起作用:

{
    position: fixed;
    bottom: 20px;
}
Run Code Online (Sandbox Code Playgroud)

此外,有位置:固定输入文本似乎不再可编辑.

在Ionic中,是否可以将部分内容固定到底部?谢谢!

mha*_*ton 33

您可以使用ion-content其中的按钮使用anythnig .

演示

  <ion-list>

    <ion-item ng-repeat="item in items" 
              item="item"
              href="#/item/{{item.id}}">
      Item {{ item.id }}

    </ion-item>

  </ion-list>

</ion-content>

<div class="fixed-outside">
  <div class="row">
        <div class="col">
            <button class="button button-circle button-energized icon ion-log-in"></button>
        </div>
        <div class="col">
            <button class="button button-circle button-positive icon ion-social-facebook"></button>
        </div>
    </div>

    <p class="text-center"><a href="#/app/forgot-password">Forgot password</a></p>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)

  • 这不完全是我需要的:我想修复整个表格的底部,而不仅仅是一排标签/按钮.我试图把所有东西都放在一个离子脚 - 条中,但它似乎不起作用. (2认同)

小智 6

如何使用默认的离子标签栏,只需将高度更改为自动或您希望的任何px.只需确保将代码放在ion-content标签下面.

码:

<ion-content padding="true">
</ion-content>  
  <div class="tabs tabs-dark" style="height:auto;">
    <div class="row">
      <div class="col">
        <div class="list">
          <label class="item item-input">
            <span class="input-label">Username</span>
            <input type="text">
          </label>
          <label class="item item-input">
            <span class="input-label">Password</span>
            <input type="password" >
          </label>
        </div>
        <div class="row">
          <div class="col">
            <button class="button button-block button-positive">LOGIN</button>                         
          </div>
        </div>
      </div>
    </div>
  </div>
Run Code Online (Sandbox Code Playgroud)

Codepen示例:http://codepen.io/ridwan/pen/JozeYK


bra*_*ney 5

您可以使用指令来计算表单的高度.它会在窗口调整大小时重新计算.我没有测试导航离开页面.

Codepen

相关的HTML

<ion-view hide-nav-bar="true" ng-controller="MainCtrl">
  <ion-content padding="true" scroll="false">
    <ion-scroll scroll-height>
       Content to go above the form
    </ion-scroll>
    <div class="login-form">
      Login form
    </div>
  </ion-content>
</ion-view>
Run Code Online (Sandbox Code Playgroud)

CSS

.scroll-content {
  position: relative;
}

div.login-form {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
}
Run Code Online (Sandbox Code Playgroud)

指示

.directive('scrollHeight', function($window) {
  return {
    link: function(scope, element, attrs) {
      scope.onResize = function() {
        var winHeight = $window.innerHeight;
        var form = angular.element(document.querySelector('.login-form'))[0];
        var formHeight = form.scrollHeight;
        var scrollHeight = winHeight - formHeight;

        element.css("height", scrollHeight + "px");
      }
      scope.onResize();

      angular.element($window).bind('resize', function() {
        scope.onResize();
      })
    }
  }
})
Run Code Online (Sandbox Code Playgroud)