html - 如何在 Angular 中设置我自己的 CSS 和 HTML

标签 html css angular angular2-routing angular2-template

我创建了一个这样的 login.component.ts

import { Component, OnInit } from '@angular/core';

@Component({
    selector:'',
    templateUrl:'./html/login.html',
    styleUrls:['./resources/css/reset.css','./resources/css/style.css','./resources/css/invalid.css']
})

export class LoginComponent{
    constructor(){
        this.loginImagePath = './app/resources/images/';
    }
    OnInit(){

    }
} 

这是我的 app.component.ts

import { Component } from '@angular/core';

@Component({
  selector: 'my-app',
  template: `<router-outlet></router-outlet>`
})
export class AppComponent {  }

这是我的 login.html

    <body id="login">

        <div id="login-wrapper" class="png_bg">
            <div id="login-top">

                <h1>Simpla Admin</h1>
                <!-- Logo (221px width) -->
                <img id="logo" [src]="loginImagePath +'logo.png'" alt="Simpla Admin logo" />
            </div> <!-- End #logn-top -->

            <div id="login-content">

                <form action="index.html">

                    <div class="notification information png_bg">
                        <div>
                            Just click "Sign In". No password needed.
                        </div>
                    </div>

                    <p>
                        <label>Username</label>
                        <input class="text-input" type="text" />
                    </p>
                    <div class="clear"></div>
                    <p>
                        <label>Password</label>
                        <input class="text-input" type="password" />
                    </p>
                    <div class="clear"></div>
                    <p id="remember-password">
                        <input type="checkbox" />Remember me
                    </p>
                    <div class="clear"></div>
                    <p>
                        <input class="button" type="submit" value="Sign In" />
                    </p>

                </form>
            </div> <!-- End #login-content -->

        </div> <!-- End #login-wrapper -->

  </body>

This is what I am getting as an output This is the view 但是 View 应该是这样的 enter image description here

我做错了什么?

最佳答案

这将使您的底部展开以填满整个屏幕:

.png_bg {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
.png_bg > * {
  flex-grow:0;
}
#login-content {
  flex-grow: 1;
}

如果您计划将此布局重复用于其他页面,您可以考虑为顶部和底部部分使用一些类,并调整您的选择器以匹配它们。 假设您将 .top_bg.body_bg 放在它们上面,您可能希望将其放入应用的 .scss:

.png_bg {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  .top_bg {
    flex-grow: 0;
    /* might consider adding a `min-height` to it, too */
  }
  .body_bg {
    flex-grow: 1;
  }
}

关于html - 如何在 Angular 中设置我自己的 CSS 和 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43291751/

相关文章:

html - 使用媒体查询更改轮播图像奇怪的错误

jquery - Slicebox 3d 图像 slider 在 Chrome 浏览器中不起作用

html - 如何保持网站宽度固定(不考虑屏幕尺寸)

javascript - 获取未经授权的 Web 请求的 http 状态 401?

css - Angular 2 ngStyle 和背景图像

php - 通过php和html为mysql数据库创建excel文件

javascript - 从 html 调用外部 javascript

Javascript HTML 关键字突出显示

PHP MySQL 表数据到 Accordion

ionic-framework - ionic 2 : content in slides not scrolling