用vue写一个优美的登录页面
时间: 2024-05-11 13:18:53 浏览: 10
好的,下面是一个简单的登录页面示例:
```html
<template>
<div class="login">
<h1>Login</h1>
<form>
<div class="form-group">
<label for="username">Username</label>
<input type="text" id="username" v-model="username" required>
</div>
<div class="form-group">
<label for="password">Password</label>
<input type="password" id="password" v-model="password" required>
</div>
<button class="btn" type="submit">Login</button>
</form>
</div>
</template>
<script>
export default {
data() {
return {
username: '',
password: ''
}
}
}
</script>
<style scoped>
.login {
max-width: 400px;
margin: auto;
text-align: center;
}
h1 {
font-size: 3em;
margin-bottom: 1em;
}
form {
display: flex;
flex-direction: column;
align-items: center;
}
.form-group {
margin-bottom: 1em;
width: 100%;
}
label {
display: block;
margin-bottom: 0.5em;
font-size: 1.2em;
text-align: left;
}
input {
padding: 0.5em;
font-size: 1.2em;
border: none;
border-bottom: 1px solid #ccc;
width: 100%;
box-sizing: border-box;
outline: none;
}
button {
margin-top: 1em;
padding: 0.5em 2em;
font-size: 1.2em;
border: none;
background-color: #007bff;
color: #fff;
cursor: pointer;
transition: background-color 0.2s ease-in-out;
}
button:hover {
background-color: #0069d9;
}
</style>
```
这个登录页面使用了 Vue.js 框架,并使用了 Bootstrap 样式库来使页面看起来更加美观。其中,使用了 `v-model` 指令来双向绑定表单输入框和组件的数据;使用了 `scoped` 属性来使得样式只作用于当前组件,不会影响到其他组件的样式。