html - 表单元素未对齐
问题描述
我的问题是,使用弹性框时,y 表单没有正确对齐。
/* Article Styling Definitions */
article {
display: flex;
flex: 4;
background-color: chartreuse;
}
#article_left {
flex: 1;
align-content: center;
}
#article_right {
flex: 1;
align-content: center;
}
.cta {
flex: 30;
border: 1px solid black;
border-radius: 5px;
margin: 25px;
padding-left: 5px;
}
form {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-around;
}
form > div {
flex: 45%;
}
.label {
text-align: right;
padding-right: 5px;
}
<section>
<article>
<div id="article_left">
<p>Call Us</p>
</div>
<div id="article_right">
<h2>Contact Us!</h2>
<form id="contact_form">
<div class="label">
<label for="contact_name">Full name:</label>
</div>
<div>
<input type="text" id="contact_name" name="contact_name" placeholder="Name">
</div>
<div class="label">
<label for="contact_phone">Mobile number:</label>
</div>
<div>
<input type="tel" id="contact_phone" name="contact_phone" placeholder="Mobile number">
</div>
<div class="label">
<label for="contact_email">Email address:</label>
<div>
<input type="email" id="contact_email" name="contact_email" placeholder="E-mail address">
</div>
<div class="label">
<label for="contact_message">Message:</label>
</div>
<div>
<textarea rows="4" cols="40" id="contact_message" name="contact+message"></textarea>
</div>
<div class="button">
<button type="submit">Submit</button>
</div>
</form>
</div>
</article>
</section>
我目前正在学习并正在完成一项评估,但我无法解决这个问题。
如果你能帮助我,那就太棒了——这是一项基本任务,但 flexbox 把所有东西都搞砸了(我们必须使用 flex box)
解决方案
我想你正在寻找这个。
/* Article Styling Definitions */
article {
display: flex;
flex: 4;
background-color: chartreuse;
}
#article_left {
flex: 1;
align-content: center;
}
#article_right {
flex: 1;
align-content: center;
}
.cta {
flex: 30;
border: 1px solid black;
border-radius: 5px;
margin: 25px;
padding-left: 5px;
}
form {
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: space-around;
}
.input-box {
padding-right: 5px;
display: flex;
width: 100%;
margin-bottom: 10px;
}
label {
width: 45%;
padding-right: 5px;
text-align: right;
}
input, textarea {
width: 55%;
}
<section>
<article>
<div id="article_left">
<p>Call Us</p>
</div>
<div id="article_right">
<h2>Contact Us!</h2>
<form id="contact_form">
<div class="input-box">
<label for="contact_name">Full name:</label>
<input type="text" id="contact_name" name="contact_name" placeholder="Name">
</div>
<div class="input-box">
<label for="contact_phone">Mobile number:</label>
<input type="tel" id="contact_phone" name="contact_phone" placeholder="Mobile number">
</div>
<div class="input-box">
<label for="contact_email">Email address:</label>
<input type="email" id="contact_email" name="contact_email" placeholder="E-mail address">
</div>
<div class="input-box">
<label for="contact_message">Message:</label>
<textarea rows="4" cols="40" id="contact_message" name="contact+message"></textarea>
</div>
<div class="button">
<button type="submit">Submit</button>
</div>
</form>
</div>
</article>
</section>
推荐阅读
- python - Discord.py 错误;即使在环境变量中安装和配置后也找不到 ffmpeg
- c# - ASP.NET 4.0 中的 SameSite cookie
- azure - Azure kubernetes - Azure CNI 和 Istio,边车 IP 分配?
- javascript - 如何解决这个“错误一旦编译就无法覆盖模型”?
- excel - xlup 正在查找文本,但查找“”的公式,如何转换为查找非“”/空白单元格?
- mysql - Laravel7 Join 语法错误或访问冲突
- curl - 无法使用 cUrl 和 AppleScript 连接 FTPS
- tensorflow - 如何知道 Tensorflow.js 中的模型预测是什么?
- jquery - 在jQuery中如何从父级获取数据属性
- ubuntu - Ubuntu:通过 ssh 将用户帐户复制到同一台机器?