我为页脚创建了一个表单,当您单击输入时,文本和边框底部从灰色过渡到白色。
HTML:
<div class="footer">
<div class="footerContainer">
<form>
<input type="text" class="name" placeholder="Name"/>
<input type="text" class="subject" placeholder="Subject"/>
<input type="tel" class="phone" placeholder="Phone Number"/>
<textarea type="text" class="details" placeholder="Details"></textarea>
<input type="submit" class="submit" placeholder="Submit"/>
</form>
</div>
CSS:
.footer{
height: 100%;
width: 100%;
background-color: grey;
display: flex;
justify-content: center;
align-items: center;
}
.footerContainer{
display: flex;
justify-content: center;
align-items: center;
background-color: darkgrey;
width: 25%;
padding: 2vw;
margin: 2vw;
}
.name, .subject, .phone{
background-color: transparent;
border: 0;
border-bottom: solid #bababa 1px;
height: 2.8vw;
font-size: 2vw;
color: #bababa;
transition: color linear 0.5s;
margin-bottom: 1vw;
font-family: 'Lora', sans-serif;
width: 100%;
}
textarea{
background-color: transparent;
border: 0;
border-bottom: solid #bababa 1px;
height: 10vw;
font-size: 2vw;
color: #bababa;
transition: color linear 0.5s;
margin-bottom: 1vw;
font-family: 'Lora', sans-serif;
resize: none;
width: 100%;
}
.submit{
float: right;
border: 1px solid black;
border-radius: 0.4vw;
height: 2vw;
width: 4.5vw;
font-size: 1vw;
background-color: #92F398;
cursor: pointer;
}
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder{
color: #bababa;
transition: color linear 0.5s;
}
input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder{
color: white;
transition: color linear 0.5s;
}
input:focus, textarea:focus{
color: white;
border-bottom: solid white 1px;
transition: color linear 0.5s;
}
input:focus,
select:focus,
textarea:focus,
button:focus {
outline: none;
}
我想要达到的目的是当用户在表单中输入内容并点击它时,所插入的文本将保持白色(它不会这样做)。
很抱歉,如果这篇文章没有完全遵守规则,那就有很多。我试着尽可能地格式化它。
答案 0 :(得分:0)
你可以使用像:
这样的技巧input:valid{
color: white;
}
添加此css,所有有效输入都将具有白色文本颜色。
此外,您可以向输入添加minlength="4"
添加可以决定何时输入应该更改颜色。
尝试写点什么,看看。
您在codepen