将屏幕划分为三列Angular Material Design

时间:2016-03-14 05:17:02

标签: angularjs angularjs-material

我是Angular Material Design的新手。我想设计一个将日期分为三列的表单。我创建了两种形式。第一个表单包含两个div,第二个表单包含一个div。我希望每个div都在屏幕的不同列中,并且三个div应该平均划分屏幕宽度让我们说是100%宽度的33.33%但是我只在一列中得到了所有的div \ n 。以下是我写的代码:

<body ng-app="inputErrorsAdvancedApp"> 
   <div ng-controller="AppCtrl" layout="column" ng-cloak>
     <div md-content layout-padding>
       <form name="userForm">
        <div layout-xs="column">  
          <md-input-container class="md-block" flex="30">
            <label>First Name</label>
            <input>
          </md-input-container> 
          <md-input-container class="md-block" flex="30">
           <label>Last Name</label>
           <input>
          </md-input-container> 
          <md-input-container class="md-block" flex="30">
            <label>Date Of Birth</label>
            <input>
            </md-input-container>
          <md-input-container class="md-block" flex="30">
            <label>Gender</label>
            <input>
            </md-input-container>
          <md-input-container class="md-block" flex="30">
            <label>Email</label>
            <input>
          </md-input-container>
         <md-input-container class="md-block" flex="30">
           <label>Mobile</label>
           <input>
         </md-input-container>
         <md-input-container class="md-block" flex="30">
           <label>Address</label>
           <input>
         </md-input-container>
         <md-input-container class="md-block" flex="30">
           <label>City</label>
           <input>
        </md-input-container>     
  </div>
  <div layout-xs="column">
    <md-input-container class="md-block" flex="30">
      <label>Country</label>
      <input>
    </md-input-container>
    <md-input-container class="md-block" flex="30">
      <label>State</label>
      <input>
    </md-input-container>
    <md-input-container class="md-block" flex="30">
     <label>Phone</label>
     <input>
    </md-input-container>
    <md-input-container class="md-block" flex="30">
      <label>Alternate Email</label>
      <input>
    </md-input-container>
    <md-input-container class="md-block" flex="30">
      <label>Alternate Mobile</label>
      <input>
    </md-input-container>
  </div>
</form>
<form name="security">
   <div layout-xs="column">
   <md-input-container class="md-block" flex="30">
     <label>old password</label>
    <input>
   </md-input-container>
   <md-input-container class="md-block" flex="30">
    <label>New Password</label>
    <input>
   </md-input-container>
   <md-input-container class="md-block" flex="30">
    <label>Re-Enter Password</label>
    <input>
   </md-input-container>    
  </div>
 </form>
 </div>

   

这是我创建的页面的plunker

https://plnkr.co/edit/nj5o59A3NmqZtCv7HOfy?p=preview

请帮我解决此问题。

2 个答案:

答案 0 :(得分:2)

在父元素上使用layout="row"。例如

<div layout="row" md-content layout-padding> ...forms... </div>

链接到文档:https://material.angularjs.org/latest/layout/container

答案 1 :(得分:0)

你弯曲就像划分屏幕一样。你可以像这样使用。屏幕必须分为100%。如果你使用3 div或md-input-container flex应该是33.即100/3。如果您有4个div,则应将屏幕100%分为4个相等的部分。

    <div layout-xs="column">  
              <md-input-container class="md-block" flex="33">
                <label>First Name</label>
                <input>
              </md-input-container> 
              <md-input-container class="md-block" flex="33">
               <label>Last Name</label>
               <input>
              </md-input-container> 
              <md-input-container class="md-block" flex="33">
                <label>Date Of Birth</label>
                <input>
              </md-input-container>
</div>

欲了解更多信息,请访问角材料官方网站。